SaltStack(3)——SaltStack多节点推送实现haproxy负载均衡集群

本实验是在上一个实验《SaltStack(2)—— SaltStack实现nginx自动编译安装》基础上进行的,已经配置好master及minion的环境,创建好默认数据配置目录,并且编写好了apache和nginx自动安装部署脚本。

上一篇博客链接:https://blog.csdn.net/dghfttgv/article/details/104893330

目录

一、SaltStack多节点推送实现haproxy负载均衡集群

(一)、部署集群

  • 步骤一:创建实验目录
  • 步骤二:编写配置模板
  • 步骤三:编译、测试

(二)、在集群中添加server4后端

  • 步骤一:在server4上部署相关服务
  •          1、在servre4上配置阿里云yum源
  •          2、下载salt-minion 服务
  •          3、在 servre1上将认证
  •          4、在server上安装httpd服务
  •          5、在haproxy值配置文件的模板中添加server4后端主机
  • 步骤二:测试

 

一、SaltStack多节点推送实现haproxy负载均衡集群

实验环境:

主机名ip服务
server1172.25.6.1服务端 salt-master
server2172.25.6.2客户端 salt-minion
server3172.25.6.3客户端 salt-minion
server3172.25.6.4客户端 salt-minion(中途添加)

实验

(一)、部署集群

步骤一 :

创建实验目录

[root@server1 salt]# mkdir haproxy         ##创建文件子目录
[root@server1 salt]# 
[root@server1 salt]# cd haproxy/           ##进入实验环境中 
[root@server1 haproxy]# 
[root@server1 haproxy]# vim init.sls       ##编辑sls文件 

haproxy-install:                           ##安装haproxy软件 
  pkg.installed:
    - name: haproxy     

  file.managed:                            ##配置haproxy的主配置模板 
    - name: /etc/haproxy/haproxy.cfg 
    - source: salt://haproxy/haproxy.cfg   ##source源所在的位置     

  service.running:                         ##开启服务
    - name: haproxy
    - enable: True                         ##设置开机自启
    - watch:
      - file: haproxy-install               

 

步骤二:

编写配置模板

[root@server1 ~]# vim /srv/salt/haproxy/haproxy.cfg      ##编写配置未见模板 

    stats      uri           /status

#---------------------------------------------------------------------
# main frontend which proxys to the backends
#---------------------------------------------------------------------
frontend  main *:80
    default_backend             app

#---------------------------------------------------------------------
# static backend for serving up images, stylesheets and such
#---------------------------------------------------------------------
backend app
    balance     roundrobin
   server server1 172.25.6.1:80 check
   server server3 172.25.6.3:80 check

 

步骤三:

测试、编译

[root@server3 yum.repos.d]# scp salt-latest.repo  server4:/etc/yum.repos.d/

 

1、编译:

[root@server3 yum.repos.d]# scp salt-latest.repo  server4:/etc/yum.repos.d/

 

 

2、测试

server1[root@server2 ~]# curl server2

 

(二)、在集群中添加server4

步骤一 :

在server4上安装

1、配置阿里云镜像的网络源

将server3上的阿里云网络源复制至server下

[root@server3 yum.repos.d]# scp salt-latest.repo  server4:/etc/yum.repos.d/

 

2、下载salt-minion 服务

[root@server4 ~]# yum install salt-minion -y       ##下载salt-minion

[root@server4 ~]# systemctl start salt-minion             ##开启salt-minion服务
[root@server4 ~]# 
[root@server4 ~]# vim /etc/salt/minion                    ##编辑minion主配置文件

...

master: 172.25.6.1                                        ##添加master主机ip 

...


[root@server4 ~]# 
[root@server4 ~]# systemctl restart salt-minion.service   ##重启minon服务 

 

 

3、在 servre1上将认证

[root@server1 haproxy]# salt-key -A      ##将密钥传给从节点 

4、在server上安装httpd服务

[root@server1 apache]#  salt server4 state.sls apache

 

5、在haproxy值配置文件的模板中添加server4后端主机

[root@server1 ~]# vim /srv/salt/haproxy/haproxy.cfg      

 

6、重新编译

[root@server1 haproxy]# salt server2 state.sls haproxy

 

步骤二:

测试

[root@server2 ~]# curl server2

(server4已经加入了集群 )

 

在浏览器上 查看:http://172.25.6.2/status

 

将server1后端宕掉

[root@server1 ~]# systemctl stop httpd     ##关闭server1服务的httpd服务 

 

 

在浏览器上的监控画面中看到server1后端已经端开

 

总结:因为使用salt远程部署haproxy服务,所以在推送的各个从节上都必须安装有salt-minion服务 且必须和master节点相连

(注:在 进行实验部署时保证haproxy主机上的httpd或者nginx服务因为haproxy监听的是80端口如果开启服务会导致haproxy启动失败 !!)

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值