haproxy的配置文件詳解

Haproxy是目前比較流行的一種羣集調度工具,同類羣集調度工具備不少,如LVS和Nginx。相比較而言,LVS性能最好,可是搭建相對複雜,Nginx的upstream模塊支持羣集功能,可是相對羣集節點健康檢查功能不強,性能沒有Haproxy好,更多的是應用在企業內網環境中。html

HAProxy雖然名字前有HA,但它並非一款高可用軟件,而是一款用於實現負載均衡的軟件,可實現四層與七層的負載均衡。web

上述幾個web羣集調度器屬於軟件類型的,還有不少硬件羣集調度器,硬件通常使用比較多的是F5,也有不少公司使用國產的一些產品,如梭子魚、綠盟等。硬件羣集調度器有一些比較顯而易見的缺點,若是說出問題了,還要須要廠家的技術支持,廠家維護時還須要咱們的錯誤日誌,在出現問題到問題解決這段時間,可能一個月的時間都過去了。如果使用軟件型的羣集調度器,那麼只要咱們運維人員技術過硬,發現問題到解決問題,很快的。redis

關於haproxy的經常使用調度算法,能夠參考博文:Haproxy支持的調度算法算法

haproxy的詳細配置過程和配置日誌記錄,能夠參考博文:keepalived+Haproxy搭建高可用Web羣集centos

這篇博文不談如何配置haproxy,主要來聊一下它的配置文件說明以及生產環境中的參數調優。bash

haproxy的配置文件一般分爲三個部分:global、defaults和listen。依次爲全局配置、默服務器

認配置、應用組件配置。app

global配置:負載均衡

global        log 127.0.0.1   local   #配置日誌記錄,local0爲日誌設備,默認存放到系統日誌
        log 127.0.0.1   local1 notice  #notice爲日誌級別,一般有24個級別
        #log loghost    local0 info
        maxconn 4096             #最大鏈接數
        chroot /usr/share/haproxy         #該服務自設置的根目錄,通常需將此行註釋掉
        uid 99         #用戶UID
        gid 99        #用戶GID
        daemon        #守護進程模式

defaults配置項配置默認參數,通常會被應用組件繼承,若是在應用組件中沒有特別的聲明,將安裝默認配置參數:運維

defaults        log     global               #定義日誌爲global配置中的日誌定義
        mode    http                 #模式爲http
        option  httplog              #採用http日誌格式記錄日誌
        option  dontlognull
        retries 3         #檢查節點服務器失敗次數,連續達到三次失敗,則認爲節點不可用
        redispatch             #當服務器負載很高時,自動結束當前隊列處理比較久的鏈接
        maxconn 2000                      #最大鏈接數
        contimeout      5000              #鏈接超時時間
        clitimeout      50000             #客戶端超時時間
        srvtimeout      50000             #服務器超時時間

listen配置項通常配置應用模塊參數:

listen  appli4-backup 0.0.0.0:10004           #定義一個名爲appli4-backup的應用
                option  httpchk /index.html        #檢查服務器的index.html文件
                option  persist     #強制將請求發送到已經down掉的服務器,通常禁用此選項。
                balance roundrobin        #負載均衡調度算法使用輪詢算法
            server  inst1 192.168.114.56:80 check inter 2000 fall 3     #定義在線節點
         server  inst2 192.168.114.56:81 check inter 2000 fall 3 backup #定義備份節點#注意:在以上定義備份節點的參數中,#「check inter 2000」表示haproxy服務器和節點之間的一個心跳頻率,#「fall 3」表示連續三次檢測不到心跳頻率則認爲該節點失效。#節點配置後帶有「 backup」表示該節點只是個備份節點,只有主節點失效該節點纔會上。#去除backup,表示爲主節點,和其餘主節點共同提供服務。

haproxy的參數調優:

centos 7 ä¹haproxyçéç½®æ件详解åhaproxyåæ°è°ä¼

相關文章
相關標籤/搜索