在上篇文章說了如何去安裝haproxy,這裏就說一下怎麼去應用。前端
一、和上次同樣,仍然把haproxy的配置文件放在/srv/salt/package/haproxy/files/目錄下。
node
這裏也貼一下配置文件的內容:python
global #全局配置 maxconn 100000 #最大鏈接數 chroot /usr/local/haproxy uid 99 gid 99 daemon #之後臺形式運行haproxy nbproc 1 #啓動1個haproxy實例 pidfile /usr/local/haproxy/logs/haproxy.pid #pid存放路徑 log 127.0.0.1 local3 info #日誌輸出 #後端設置 defaults #默認配置 option http-keep-alive maxconn 100000 mode http #所處理的級別.默認採用http模式 timeout connect 5000ms timeout client 50000ms timeout server 50000ms #開啓haproxy Status狀態監控,增長驗證 listen stats mode http bind 0.0.0.0:8888 stats enable stats uri /haproxy-status #監控頁面url stats auth haproxy:saltstack #監控頁面user:passwd #前端設置 frontend frontend_www_example_com bind 192.168.1.100:80 mode http option httplog log global default_backend backend_www_example_com #後端設置 defaults #默認配置 option http-keep-alive maxconn 100000 mode http #所處理的級別.默認採用http模式 timeout connect 5000ms timeout client 50000ms timeout server 50000ms #開啓haproxy Status狀態監控,增長驗證 listen stats mode http bind 0.0.0.0:8888 stats enable stats uri /haproxy-status #監控頁面url stats auth haproxy:saltstack #監控頁面user:passwd #前端設置 frontend frontend_www_example_com bind 192.168.1.100:80 mode http option httplog log global default_backend backend_www_example_com #後端設置 backend backend_www_example_com option forwardfor header X-REAL-IP #得到客戶端真實ip option httpchk HEAD / HTTP/1.0 balance roundrobin #輪訓算法 server web-node1 192.168.1.12:8080 check inter 2000 rise 30 fall 15 server web-node2 192.168.1.13:8080 check inter 2000 rise 30 fall 15
二、編寫sls模塊文件
web
在上次的基礎上,在後面加上:
算法
haproxy-config: file.managed: - name: /etc/haproxy/haproxy.cfg - source: salt://package/haproxy/files/haproxy.cfg - user: root - group: root - mode: 644 service.running: - name: haproxy - enable: True - reload: True - watch: - file: haproxy-config
三、執行命令:後端
salt 'salt-minion' state.sls package.haproxy
中間能夠看到更新的內容:frontend
四、驗證ide