keepalived配置文件詳解

/export/servers/keepalived/conf/keepalived.conf配置文件詳解:


! Configuration File for keepalived

#全局配置

global_defs {

   notification_email {         #設置報警郵件地址,每行一個,(如何要開啓郵件報警,需要開啓本機的sendmail服務)

      [email protected]   

}

   notification_email_from [email protected]   #設置郵件的發送地址

   smtp_server mail.jd.com            #設置郵件的smtp server地址

   smtp_connect_timeout 30            #設置連接smtp server的超時時間

   router_id LVS_DEVEL             #表示keepalived服務器的一個標識,是發郵件時顯示在郵件主題中的信息

}

#keepalived的VRRPD配置,是所有keepalived配置的核心

#VRRP實例配置

vrrp_instance VIP_142    #是VRRP實例開始的標識,後跟VRRP實例名稱

{

state MASTER        #keepalived的角色,MASTER主,BACKUP備

interface eth0        #用於指定HA監測網絡的接口

virtual_router_id 142     #虛擬路由標識,這個標識是一個數字,同一個VRRP實例使用唯一的一個標識,即在同一個vrrp_instance下,MASTER和BACKUP必須是一致的!

priority 100         #權重優先級

advert_int 2         #用於設定master和backup主機之間同步檢查的時間間隔,單位是秒

garp_master_delay 10     #用於切換到master狀態後延時進行Gratuitous arp請求的時間

smtp_alert          #表示是否開啓郵件通知(用全局區域的郵件設置來發通知)

authentication        #主備之間進行通信的驗證類型和密碼:驗證類型主要有PASS和AH兩種,一個在vrrp_instance下,MASTER和backup必須使用相同的密碼纔可以通信

{

auth_type PASS 

auth_pass 123456

}

#virtual_ipaddress用於設置虛擬ip地址,可以設置多個vip,每行一個,

virtual_ipaddress

10.95.0.200/24

}

track_interface     #用於設置一些額外的網絡監控接口,其中任何一個網絡接口出現故障,keepalived都會進去fault狀態!

{

eth0

nopreempt       #設置不搶佔功能,只能在backup上使用,知道機器有故障了才切換,

preemtp_delay 300   #用於設置搶佔的延時時間,(例:開啓啓動沒必要搶佔)

}

#以下是lvs的主要主要配置信息,主要實現lvs的ip包轉發功能!

virtual_server 10.95.0.200 80        #虛擬ip和端口

{

  delay_loop 6        #設置健康檢查的時間間隔

  lb_algo wrr         #設置負載調度算法

  lb_kind DR         #設置lvs的模式

  persistence_timeout 60    #會話保持時間,單位秒

  protocol TCP        #ip包轉發協議,有TCP和UDP兩種

  real_server 10.95.0.143 80    #real server 的ip

  {

    weight 3            #權重

    TCP_CHECK            #健康檢查

    {

      connect_timeout 10        #表示無響應超時時間

      nb_get_retry 3            #表示重連次數

      delay_before_retry 3        #表示重試間隔

      connect_port 80            #表示端口

    }

  }

  real_server 10.95.0.144 80

  {

    weight 3

    TCP_CHECK

    {

      connect_timeout 10

      nb_get_retry 3

      delay_before_retry 3

      connect_port 80

    }

  }

}



健康監測應許多種檢查方式,常見的有,HTTP_GET,SSL_GET,TCP_CHEC,SMTP_CHECK,MISC_CHECK.

HTTP_GET |SSL_GET

{

    url{

        path /index.html    #指定url信息

        digest e6owjfdsjfalsjdfsalkf30wfdsfjwqe    

        #ssl檢查後的摘要信息,這些摘要信息可以通過genhash命令工具獲取,

            #例:genhash -s 192.168.12.80 -p 80 -u /index.html

        status_code 200   

}

    connect_port 80

    bindto 192.168.31.128       #表示通過此地址來對發送請求對服務器進行健康檢查

    nb_get_retry 3

    delay_before_retry 2


}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章