在上篇文章說了如何去安裝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,如需轉載請自行聯系原作者