Marahon-lb的服务发现/负载均衡

Marahon-lb向DC/OS环境提供服务发现即负载均衡能力,不同的使用场景可以利用其不同的发现机制。

Marahon-lb安装以后,针对应用程序部署过程中,需要配置一个特殊标签HAPROXY_GROUP=external,这个标签通知 marathon-lb是否需要暴露这个应用。
有三种方式通过marathon-lb来实现发现并访问一个应用。

(1)Virtual hosts模式

在应用的配置项中,添加特殊标签HAPROXY_GROUP和HAPROXY_0_VHOST并启动应用实例,而后在访问按照域名的方式访问Marahon-lb所在地址(如果在本地可以配置hosts中域名和ip的对应关系),便会自动实现服务的发现,并按照实例的访问负载访问到其中一个实例当中。这种方式是自动按照80和443端口访问应用的映射后端口。

 "labels":{
    "HAPROXY_GROUP":"external",
    "HAPROXY_0_VHOST":"testapp1.mesos.info"
  }

(2)Virtual IP模式

在应用的配置项中,添加特殊标签HAPROXY_GROUP,并且在端口映射时,填写固定的虚拟IP:PORT后,在DC/OS环境的任何Node下,都可以直接以该IP:PORT形式访问到该应用的对应端口服务。

(2)服务端口(Service Port)模式

在应用的配置项中,添加特殊标签HAPROXY_GROUP,并且在端口映射时,配置各映射端口的Service Port,访问Marahon-lb所在的 IPServicePort便会自动实现服务的发现,并按照实例的访问负载访问到其中一个实例当中。这种方式对应于该应用的映射端口


上述三种方法的应用访问,都会实现一个应用被开启多个实例,而且跨越多个Agnet的情况,对于访问端,不需要考虑应用的具体事例位置所在Agnet的位置、以及有多少个实例等信息,Marahon-lb会自己做到服务发现,以及访问时的负载情况,自动的、动态的指定到某一个合适的实例上、并且做好了端口匹配。

第一和第二个方法更适合DC/OS内部应用之间的访问,而第三个方式,适合DC/OS被通向外网的硬件BL配置使用。这样便能实现外网访问某一端口,自动适应匹配到DC/OS环境中具体的一个应用实例服务做到了对外负载均衡和高可用,对内弹性扩展、资源统一化调度、管理、和服务的自恢复能力


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值