天天看点

saltstack-haproxy业务引用

在上篇文章说了如何去安装haproxy,这里就说一下怎么去应用。

1、和上次一样,仍然把haproxy的配置文件放在/srv/salt/package/haproxy/files/目录下。

<a href="http://s3.51cto.com/wyfs02/M00/8D/19/wKioL1iG1BOjZIgzAAAO1HMu-94184.png" target="_blank"></a>

这里也贴一下配置文件的内容:

<a href="http://s2.51cto.com/wyfs02/M01/8D/1C/wKiom1iG1DzTRgBWAAAqg6vESGQ649.png" target="_blank"></a>

<code>global</code>                      <code>#全局配置            </code>

<code>maxconn </code><code>100000</code>              <code>#最大连接数 </code>

<code>chroot </code><code>/</code><code>usr</code><code>/</code><code>local</code><code>/</code><code>haproxy</code>

<code>uid </code><code>99</code>

<code>gid </code><code>99</code>

<code>daemon                      </code><code>#以后台形式运行haproxy </code>

<code>nbproc </code><code>1</code>                    <code>#启动1个haproxy实例 </code>

<code>pidfile </code><code>/</code><code>usr</code><code>/</code><code>local</code><code>/</code><code>haproxy</code><code>/</code><code>logs</code><code>/</code><code>haproxy.pid     </code><code>#pid存放路径 </code>

<code>log </code><code>127.0</code><code>.</code><code>0.1</code> <code>local3 info   </code><code>#日志输出 </code>

<code>#后端设置 </code>

<code>defaults                    </code><code>#默认配置 </code>

<code>option http</code><code>-</code><code>keep</code><code>-</code><code>alive</code>

<code>maxconn </code><code>100000</code>

<code>mode http                   </code><code>#所处理的级别.默认采用http模式 </code>

<code>timeout connect </code><code>5000ms</code>

<code>timeout client </code><code>50000ms</code>

<code>timeout server </code><code>50000ms</code>

<code>#开启haproxy Status状态监控,增加验证 </code>

<code>listen stats</code>

<code>mode http</code>

<code>bind </code><code>0.0</code><code>.</code><code>0.0</code><code>:</code><code>8888</code>

<code>stats enable</code>

<code>stats uri       </code><code>/</code><code>haproxy</code><code>-</code><code>status     </code><code>#监控页面url </code>

<code>stats auth      haproxy:saltstack   </code><code>#监控页面user:passwd </code>

<code>#前端设置 </code>

<code>frontend frontend_www_example_com</code>

<code>bind </code><code>192.168</code><code>.</code><code>1.100</code><code>:</code><code>80</code>

<code>option httplog</code>

<code>log </code><code>global</code>

<code>default_backend backend_www_example_com</code>

<code>backend backend_www_example_com</code>

<code>option forwardfor header X</code><code>-</code><code>REAL</code><code>-</code><code>IP  </code><code>#获得客户端真实ip </code>

<code>option httpchk HEAD </code><code>/</code> <code>HTTP</code><code>/</code><code>1.0</code>

<code>balance roundrobin                  </code><code>#轮训算法</code>

<code>server web</code><code>-</code><code>node1 </code><code>192.168</code><code>.</code><code>1.12</code><code>:</code><code>8080</code> <code>check inter </code><code>2000</code> <code>rise </code><code>30</code> <code>fall </code><code>15</code>

<code>server web</code><code>-</code><code>node2 </code><code>192.168</code><code>.</code><code>1.13</code><code>:</code><code>8080</code> <code>check inter </code><code>2000</code> <code>rise </code><code>30</code> <code>fall </code><code>15</code>

2、编写sls模块文件

在上次的基础上,在后面加上:

<a href="http://s4.51cto.com/wyfs02/M00/8D/19/wKioL1iG1Xigh-igAAANJYLhZTw028.png" target="_blank"></a>

<code>haproxy</code><code>-</code><code>config:</code>

<code>  </code><code>file</code><code>.managed:</code>

<code>    </code><code>-</code> <code>name: </code><code>/</code><code>etc</code><code>/</code><code>haproxy</code><code>/</code><code>haproxy.cfg</code>

<code>    </code><code>-</code> <code>source: salt:</code><code>/</code><code>/</code><code>package</code><code>/</code><code>haproxy</code><code>/</code><code>files</code><code>/</code><code>haproxy.cfg</code>

<code>    </code><code>-</code> <code>user: root</code>

<code>    </code><code>-</code> <code>group: root</code>

<code>    </code><code>-</code> <code>mode: </code><code>644</code>

<code>  </code><code>service.running:</code>

<code>    </code><code>-</code> <code>name: haproxy</code>

<code>    </code><code>-</code> <code>enable: </code><code>True</code>

<code>    </code><code>-</code> <code>reload</code><code>: </code><code>True</code>

<code>    </code><code>-</code> <code>watch:</code>

<code>      </code><code>-</code> <code>file</code><code>: haproxy</code><code>-</code><code>config</code>

3、执行命令:

<code>salt </code><code>'salt-minion'</code> <code>state.sls package.haproxy</code>

中间可以看到更新的内容:

4、验证

<a href="http://s4.51cto.com/wyfs02/M01/8D/1C/wKiom1iG1fjCv6YxAAAKczZLz2w234.png" target="_blank"></a>

本文转自 sykmiao 51CTO博客,原文链接:http://blog.51cto.com/syklinux/1894024,如需转载请自行联系原作者