[admin@master ~]$ sudo mkdir /srv/salt/prod/cluster
1) 编写配置文件
[admin@master ~]$ sudo mkdir /srv/salt/prod/cluster/files
~~~
[admin@master files]$ cat haproxy-outside.cfg
global
log 127.0.0.1 local2
chroot /usr/local/haproxy
pidfile /usr/local/haproxy/haproxy.pid
maxconn 100000
daemon
nbproc 1
defaults
option http-keep-alive
maxconn 100000
mode http
log global
option httplog
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
#########################################################
listen status
mode http
bind *:8888
stats enable
stats hide-version
stats uri /haproxy-status
stats auth haproxy:saltstack
stats admin if TRUE
stats realm Haproxy\ Statistics
#stats scope .
#---------------------------------------------------------------------
# main frontend which proxys to the backends
#---------------------------------------------------------------------
#frontend main *:5000
# acl url_static path_beg -i /static /images /javascript /stylesheets
# acl url_static path_end -i .jpg .gif .png .css .js
#
# use_backend static if url_static
# default_backend app
#---------------------------------------------------------------------
######################################################################
frontend frontend_www_example_com
bind 10.2.11.170:80
mode http
option httplog
log global
default_backend backend_www_example_com
#######################################################
backend backend_www_example_com
option forwardfor header X-REAL-IP
option httpchk HEAD / HTTP/1.0
balance roundrobin
server web01.51yuki.cn 10.2.11.207:8080 check inter 2000 rise 30 fall 15
server web02.51yuki.cn 10.2.11.206:8080 check inter 2000 rise 30 fall 15
~~~
2)编写sls文件
~~~
[admin@master cluster]$ sudo vim haproxy-outside.sls
include:
- haproxy.install_ha
haproxy-service:
file.managed:
- name: /etc/haproxy/haproxy.cfg
- source: salt://cluster/files/haproxy-outside.cfg
- user: root
- group: root
- mode: 644
service.running:
- name: haproxy
- enable: True
- reload: True
- require:
- cmd: haproxy-init
- watch:
- file: haproxy-service
~
~~~
最好编写top.sls文件
[admin@master base]$ sudo vim top.sls
base:
"*":
- init.env_init
prod:
"proxy01.test.com"
- cluster.haproxy-outside
"proxy02.test.com"
- cluster.haproxy-outside
执行
[admin@master base]$ sudo salt '*' state.highstate
- 第一章:saltstack的基本介绍
- 第二章:saltstack的安装部署
- 第一节:在centos7系统上安装saltstack工具
- 第二节:在windows server 2008上安装salt-minion
- 第三章: saltstack的配置管理
- 第一节:salt-master配置
- 第二节:salt-minion配置
- 第三节:了解YAML
- 第四节:salt-master配置文件详解
- 第五节:了解Jinja2
- 第六节:配置普通用户可以运行saltstack的模块
- 第四章:远程执行
- 第一节:远程执行基础介绍
- 第二节:目标定位
- 一、全局及正则表达式匹配
- 二、列表匹配
- 三、Grains
- 四: Pillar
- 五:subnet and ip
- 六:组合匹配
- 七: node group
- 第三节:常用模块
- 一、查看帮助
- 二、Network模块
- 三、Service模块
- 四:State模块
- 五、Cron模块
- 六、File模块
- 七、iptables模块
- 八、pkg包管理
- 第四节:Salt其他命令
- 一、salt-cp(拷贝文件)
- 二、salt-ssh
- 三、salt-key
- 第五节:saltstack返回程序
- 第一节:返回保持到数据库(mysql)
- 第五章:配置管理
- 第一节:简单入门
- 第二节:状态间关系
- 第六章:数据系统
- 第一节:grains
- 第二节:pillar
- 第七章:saltstack配置管理
- 第一节:系统初始化操作
- 第二节:功能模块
- 一、haproxy模块
- 二、keepalived模块
- 三、nginx模块
- 四: pcre模块
- 五: zlib模块
- 六:user模块
- 七:php模块
- 第三节:业务模块
- 第一节:haproxy代理
- 第二节:keepalived业务
- 第八章:自动化管理工具saltstack
- 第一节:文件管理
- 第二节:软件管理
- 第三节:服务管理
- 第四节:sysctl模块管理