`
wiselyman
  • 浏览: 2078375 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
博客专栏
Group-logo
点睛Spring4.1
浏览量:80890
74ae1471-94c5-3ae2-b227-779326b57435
点睛Spring MVC4...
浏览量:129999
社区版块
存档分类
最新评论

下一代云计算平台Apache Mesos定制自己的PaaS-4(使用haproxy-marathon-bridge实现服务发现和负载均衡)

 
阅读更多

下一代云计算平台Apache Mesos定制自己的PaaS-1(Apache Mesos安装部署)

下一代云计算平台Apache Mesos定制自己的PaaS-2(使用marathon发布管理应用)

下一代云计算平台Apache Mesos定制自己的PaaS-3(docker应用发布)

下一代云计算平台Apache Mesos定制自己的PaaS-4(使用haproxy-marathon-proxy实现服务发现和负载均衡)

下一代云计算平台Apache Mesos定制自己的PaaS-5(使用bamboo实现服务发现和负载均衡)

 

2 服务发现与负载均衡

本地使用的是haproxy-marathon-bridge来实现负载均衡和服务发现

2.1 原理

marathon的restful api 有查看当前程序信息的接口:

http://192.168.1.110:8080/v2/tasks

demo    10001   192.168.1.113:31001 192.168.1.115:31001 192.168.1.114:31001
tomcat  10000   192.168.1.113:31000 192.168.1.115:31000 192.168.1.114:31000

haproxy-marathon-bridge根据该接口生成haproxy的服务发现及负载均衡。

2.2 选取任意一台局域网内机器

使用的ip是192.168.1.103

2.3 安装haproxy

yum -y install haproxy

2.4 安装haproxy-marathon-bridge

wget https://raw.githubusercontent.com/mesosphere/marathon/master/bin/haproxy-marathon-bridge

chmod +x haproxy-marathon-bridge

2.5 生成haproxy.cfg

./haproxy-marathon-bridge 192.168.1.110:8080 > /etc/haproxy/haproxy.cfg

生成内容:

global
  daemon
  log 127.0.0.1 local0
  log 127.0.0.1 local1 notice
  maxconn 4096

defaults
  log            global
  retries             3
  maxconn          2000
  timeout connect  5000
  timeout client  50000
  timeout server  50000

listen stats
  bind 127.0.0.1:9090
  balance
  mode http
  stats enable
  stats auth admin:admin

listen demo-10001
  bind 0.0.0.0:10001
  mode tcp
  option tcplog
  balance leastconn
  server demo-3 192.168.1.113:31001 check
  server demo-2 192.168.1.115:31001 check
  server demo-1 192.168.1.114:31001 check

listen tomcat-10000
  bind 0.0.0.0:10000
  mode tcp
  option tcplog
  balance leastconn
  server tomcat-3 192.168.1.113:31000 check
  server tomcat-2 192.168.1.115:31000 check
  server tomcat-1 192.168.1.114:31000 check

2.5 启动haproxy

systemctl start haproxy
systemctl enable haproxy

2.6 访问测试

tomcat:http://192.168.1.103:10000

demo:http://192.168.1.103:10001 

0
1
分享到:
评论

相关推荐

    docker-mesos-haproxy:Mesos HAProxy Docker 镜像

    Mesos HAProxy Bridge (CentoOS 7 + Supervisor) 这是一个带有 Mesos HAProxy 负载均衡器桥容器,用于实现 / 部署。 它基于 docker 镜像,我们在其中实现了插件,用于在配置文件更改时自动重新加载。 HAProxy 将在对...

    Mesos集群运维vagrant-mesos.zip

    这意味着,你可以使用 vagrant up,打造自己的 Mesos Marathon Chronos Docker PaaS 平台。Marathon 作为 分布式 init.d, Chronos 作为分布式 cron。要求:vagrant 1.6.5 : ...

    apache-mesos-cookbook

    Set up Mesos on different operating systems Use the Marathon and Chronos frameworks to manage multiple applications Work with Mesos and Docker Integrate Mesos with Spark and other big data frameworks ...

    apache-skywalking-java-agent-8.13.0 apache-skywalking-apm-9.0.0

    专为微服务,云原生架构和基于容器(Docker,K8S,Mesos)架构而设计,它是一款优秀的APM(Application Performance Management)工具,包括了分布式追踪,性能指标分析和服务依赖分析等。 apache-skywalking-java-...

    基于 Mesos 搭建 PaaS 平台你可能需要修的路.pdf

    基于 Mesos 搭建 PaaS 平台你可能需要修的路.pdf

    vagrant-mesos, Mesos/Docker/Marathon/Aurora 开发 Vagrant setup.zip

    vagrant-mesos, Mesos/Docker/Marathon/Aurora 开发 Vagrant setup mesosVagrant开发 environent Mesos/Marathon/Chronos/Aurora/Jenkins/Docker免责声明:这个Vagrant安装消耗了大量资源,但在我的2013 Macbook Pro...

    storm-marathon:Apache Storm 0.9.3-rc1 Docker 集群使用 Marathon 部署在 Apache Mesos 上

    该项目包含 Marathon 配方,用于在 Apache Mesos 上使用 Marathon 启动 Storm-Docker 容器。 我们正在使用 Debian Wheezy 的基础 Docker 镜像。 使用 Marathon,我们可以通过 Marathon REST Api 或通过 Marathon ...

    可自定义的Apache Mesos任务执行器-Golang开发

    Mesos执行器可定制的Apache Mesos任务执行器。 通过提供钩子机制(请参见钩子程序包),它允许受控的正常任务关闭并在任务生命周期中执行各种其他操作。 Mesos执行器可定制的Apache Mesos任务执行器。 通过提供钩子...

    Apache.Mesos.Essentials.1783288

    Build and execute robust and scalable applications using Apache Mesos About This Book Deploy Apache Mesos to concurrently run cutting edge data processing frameworks like Spark, Hadoop and Storm in ...

    Mesos是云计算下一个热点,云运维与PaaS有刚需.pdf

    Mesos是云计算下一个热点,云运维与PaaS有刚需.pdf

    vagrant-mesos-do:Vagrant脚本可轻松在DigitalOcean上设置Apache Mesos集群

    mesos-worker-N:Docker和Marathon的Mesos Worker haproxy-1:具有动态配置的HA代理 在vagrant up ,群集即可使用。 Mesos配置为与docker容器一起使用。 所有计算机都使用UFW防火墙,并且只能通过ssh进行访问。 ...

    Apache Mesos Cookbook-Packt Publishing(2017)【E文】

    Apache Mesos Cookbook-Packt Publishing(2017)【E文】

    marathon-lb:Marathon-lb是DCOS的服务发现和负载平衡工具

    马拉松磅 Marathon-lb是通过使用应用程序状态来管理HAProxy的工具。 HAProxy是一种快速,高效,经过考验的高可用性负载均衡器,具有许多高级功能,可为许多备受瞩目的网站提供支持。特征无状态设计:不直接依赖任何...

    Apache Mesos Essentials(PACKT,2015)

    Apache Mesos is a cluster manager that provides efficient resource isolation and sharing across distributed applications, or frameworks. It allows developers to concurrently run the likes of Hadoop, ...

    marathon-haproxy-subdomain-bridge

    bridge.go 程序使用 Marathon 的任务 API 来重新生成 HaProxy 配置。 它每分钟由 haproxy.cron 调用,然后 refresh-haproxy 脚本将配置移动到 /etc/haproxy/haproxy.cfg 并重新加载 HaProxy。 安装 运行 install-...

    mesos-1.11.0.tar.gz

    Apache Mesos(mesos-1.11.0.tar.gz、mesos-1.11.0.zip) 将 CPU、内存、存储和其他计算资源从机器(物理或虚拟)中抽象出来,使容错和弹性分布式系统能够轻松构建和有效运行。 Apache Mesos 是使用与 Linux 内核...

    Mesos调度器Swan-Mesos.zip

    你可以使用 swan 在 mesos 集群上部署应用程序,并管理应用程序的整个生命周期,还可以使用新版本进行滚动更新,扩展应用程序,并且可以在应用程序或服务不可用时对应用程序和自动故障转移进行运行状况检查。...

    paas-in-a-box

    HAproxy + consul-haproxy(具有自动配置生成功能的负载均衡器) 用法 tl;博士 执行:$ install.sh 如果您使用的是 Mac OSX 盒子,这将在下面的盒子中安装 Paas。 如果您使用的是 Ubuntu 盒子,这将在下面的盒子...

    mesos-ui:Apache Mesos的替代Web UI,使用和React.JS构建

    您可以通过docker以独立模式运行和部署此应用,例如: docker run -p 5000:5000 -e ZOOKEEPER_ADDRESS="ip1:2181,ip2:2181,ip3:2181" capgemini/mesos-ui:standalone-$TAG 或使用马拉松运动: 将ZOOKEEPER_ADDRESS...

    2015 Container技术峰会-Docker与Mesos的结合应用-王璞

    数人科技创始人王璞在OpenCloud 2015大会Container专场的演讲PPT:Docker与Mesos的结合应用,提到Mesos+Docker结合能够提供一个非常强大的在集群环境中部署应用和服务的平台。因为Docker非常适合应用发布,再跟Mesos...

Global site tag (gtag.js) - Google Analytics