本文接上篇puppet负载均衡的环境实验。

Foreman-proxy可以采用四层或者七层负载,都可以实现,在foreman的web界面添加一个smart-proxy,后端多个真实foreman-proxy处理的目的

个人采用的是haproxy实现的四层和七层代理,pm01和pm03是foreman-proxy服务器,ag01是foreman服务器,lvs是负载均衡服务器(vip在lvs01服务器上),上面代理了puppet,foreman-proxy业务。

5.1 Foreman-proxy七层负载均衡

因为七层在做https的代理时候,出现ssl证书验证问题,于是根据官方配置文件的提示,采用http代理,而不是https代理,同时将所有的ssl证书替换为lvs代理的ssl证书。

5.1.1 修改foreman-proxy配置文件

[root@pm01 puppet]# grep -v "#" /etc/foreman-proxy/settings.yml | grep -v "^$"

---

:settings_directory: /etc/foreman-proxy/settings.d

:ssl_ca_file: /var/lib/puppet/ssl/certs/ca.pem

:ssl_certificate: /var/lib/puppet/ssl/certs/lvs.jq.com.pem

:ssl_private_key: /var/lib/puppet/ssl/private_keys/lvs.jq.com.pem

:trusted_hosts:

- pm01.jq.com

- pm02.jq.com

- pm03.jq.com

- ag01.jq.com

- ag02.jq.com

- ag03.jq.com

- ca01.jq.com

- ca02.jq.com

- lvs01.jq.com

- lvs02.jq.com

- pc.jq.com

- lvs.jq.com

:daemon: true

:bind_host: 0.0.0.0

:http_port: 8000  #默认此处为:https_port:8443

:virsh_network: default

:log_file: /var/log/foreman-proxy/proxy.log

:log_level: DEBUG

5.1.2 修改foreman-proxy的foreman配置文件

[root@pm01 puppet]# cat /etc/puppet/foreman.yaml

---

:url: "https://ag01.jq.com"

:ssl_ca: "/var/lib/puppet/ssl/certs/ca.pem"

:ssl_cert: "/var/lib/puppet/ssl/certs/lvs.jq.com.pem"

:ssl_key: "/var/lib/puppet/ssl/private_keys/lvs.jq.com.pem"

:user: ""

:password: ""

:puppetdir: "/var/lib/puppet"

:puppetuser: "puppet"

:facts: true

:timeout: 10

:threads: null

5.1.3 Haproxy代理配置

[root@lvs01 haproxy]# grep -v "#" /etc/haproxy/haproxy.cfg | grep -v "^$"

global

maxconn         40000

ulimit-n        500000

log             127.0.0.1 local0 info

uid             99

gid             99

chroot          /tmp

daemon

defaults

log     global

retries 2

option redispatch

option dontlognull

option httpclose

balance roundrobin

timeout connect 30000ms

timeout client 30000ms

timeout server 30000ms

timeout check 2000

listen admin_stats

bind 0.0.0.0:8080

mode http

stats refresh 5s

stats enable

stats hide-version

stats realm Haproxy\ Statistics

stats uri /haproxy

stats auth admin:password

listen puppetmaster *:8140

mode tcp

option ssl-hello-chk

balance source

server pm01 pm01.jq.com:8140 check inter 2000 fall 3

server pm03 pm03.jq.com:8140 check inter 2000 fall 3

frontend foremanproxy

  bind 0.0.0.0:8000

  mode http

  log global

  option httplog

  reqadd X-Forwarded-Proto:\ https

  default_backend web_server

backend web_server

  mode http

  log global

  option httplog

  balance source

  cookie SERVERID insert indirect nocache

  server pm01 pm01.jq.com:8000 check inter 2000 fall 3

  server pm03 pm03.jq.com:8000 check inter 2000 fall 3

 

同时,foreman-proxy运行在8000端口,也是安全的,

上图可以看出,信息到了8000端口,最后还是https在处理。

5.2 Foreman-proxy四层负载均衡

四层采用的是https的代理,haproxy配置如下:

listen foreman-proxy *:8443

mode tcp

option ssl-hello-chk

option tcplog

#    #balance source

balance roundrobin

#    #balance source

server pm01 pm01.jq.com:8443 check inter 2000 fall 3

server pm03 pm03.jq.com:8443 check inter 2000 fall 3

5.3 foreman web添加smart_proxy

foreman web界面添加smart_proxy,只需要添加lvs服务器上的foreman-proxy即可,如下:

四层负载:

http://lvs.jq.com:8000

七层负载:

https://lvs.jq.com:8443

 

5.4 负载测试

采用分别停止pm01和pm03服务器上foreman-proxy进程的方式测试,每次测试之前删除foreman页面上的主机和smart_proxy,然后再在web添加foreman-proxy地址,在pm01,pm03,ag01上执行puppet agent -t,可以发现,主机成功添加到主机页面。

转载于:https://www.cnblogs.com/krainbow/p/4323195.html

Foreman-porxy负载均衡搭建相关推荐

  1. nginx+tomcat实现Windows系统下的负载均衡搭建教程

    下面小编就为大家分享一篇nginx+tomcat实现Windows系统下的负载均衡搭建教程,具有很好的参考价值,希望对大家有所帮助 刚入行没多久就听过'负载均衡'的大名,到现在因为工作接触的少,所以没 ...

  2. linux window nginx性能,Nginx负载均衡搭建(Window与Linux)

    windows上搭建nginx负载均衡 1.准备几台http服务器软件,这里选用一台apache一台tomcat apache(windows)下载链接:https://www.apachehaus. ...

  3. weblogic 负载均衡搭建

    负载均衡说明 集群是一组WebLogic Server的组合,集群是为了满足服务的高可用(High Avilability)以及可扩展(Load Balancing)需求而出现的. weblogic ...

  4. SQL SERVER 2016 AlwaysOn 无域集群+负载均衡搭建与简测

    之前和很多群友聊天发现对2016的无域和负载均衡满心期待,毕竟可以简单搭建而且可以不适用第三方负载均衡器,SQL自己可以负载了.windows2016已经可以下载使用了,那么这回终于可以揭开令人憧憬向 ...

  5. nginx+keepalived+tomcat+memcache负载均衡搭建小集群

    最近一段时间一直在研究高可用高并发负载均衡分布式集群等技术,先前发布了lvs基于网络第四次协议搭建的小集群,现在用空刚好搭建了一个基于nginx搭建的小集群. 我准备了四台机器,情况如下 机器名称 机 ...

  6. centos7 rabbitmq 单机部署 集群部署 HAProxy 负载均衡搭建

    准备工作 搭建 RabbitMQ Server 单机版 搭建 RabbitMQ Server 高可用集群 搭建 HAProxy 负载均衡 一.准备工作 节点 系统 版本 ip node1 centos ...

  7. SLB——阿里云平台负载均衡搭建实验

    Server Load Balance--负载均衡 云产品资源 云服务器状态确认 负载均衡配置 负载均衡验证 个人感觉 云产品资源 注意:以下云资源已经失效,别做无谓尝试 两台ECS服务器,一台CLB ...

  8. centos 7 lvs 负载均衡搭建部署

    环境: 在vm里开三个虚拟机 负载调度器:10.0.3.102 真实服务器1:10.0.3.103 真实服务器2:10.0.3.104 虚拟ip: 10.0.3.99 (用来飘移) 负载调度器上 if ...

  9. linux下keepalived+nginx的负载均衡搭建

    应用场景:集群搭建过程中nginx通常会代理多个tomcat,以达到高可用状态,但此时如果nginx所在的机器宕机,会影响线上使用,可以用keepalived+nginx来做nginx的ha 一.所需 ...

最新文章

  1. 机器学习之 weka学习(三)
  2. vue-cookies使用方法,vue中使用获取cookie
  3. python搭建博客项目思路_Django项目——Blog简易开发入门
  4. CentOS6系统编译部署LAMP(Linux, Apache, MySQL, PHP)环境
  5. C代码:清理一行字串前后的无效字符
  6. dom4j解析xml
  7. Java widget xui_XUI使用总结
  8. android获取手机唯一识别号
  9. 你知道几种编程思想?
  10. Dissect ActiveX Control Safety
  11. 臭打游戏的看过来!Windows 11 22H2 这波加强直接起飞
  12. 架构系列---一套高并发IM通信系统完整设计和实现
  13. 阿里技术专家的编程方法论:如何写出一手漂亮的代码?
  14. otc焊接机器人编程模拟软件_otc焊接机器人编程
  15. 虚拟机的虚拟化如何开启?
  16. stram是不是用php语言,简中成steam第一大语言,玩家却大喊:千万别进来
  17. 计算机视觉之图像检索
  18. 杠杆平台的炒股技巧是什么?
  19. 识骨寻踪第十二季/全集Bones迅雷下载
  20. 局域网内共享excel文件的方法

热门文章

  1. 使用response实现文件的下载
  2. Unity关于烘焙场景的小问题
  3. IT外包合作中的合同事项需要注意哪些细节?
  4. jquery 对象不支持此属性或方法
  5. java如何添加一个网段,java 判断ip是不是属于一个网段
  6. 电脑连上网线但是不能用linux,为什么无线网络连接上却不能上网,详细教您电脑连上无线网却不能上网怎么办...
  7. 习题:设计一个学生类,其中数据成员有学号、姓名、年龄、3门课程的成绩,以及若干成员函数。并利用这个类建立一个对象数组。
  8. (五)RabbitMQ管理
  9. vba数组如何精确筛选_v34.VBA数组知识点76问(七)
  10. 教你用CHARIOT测量带宽、网速