close

! Configuration File for keepalived

global_defs {
   router_id rtmp_audio
}

vrrp_script chk_test {
   script "test.sh"  #用shell命令執行test.sh(若exit 0為OK,exit 1為fail)
   interval 1  #時間間隔為1秒檢測一次
   weight -20   #當nginx的服務不存在了,就把當前的權重-20(也就是把priority 100-20=80,MASTER就會變SLAVE)
   fall 2      #測試失敗的次數
   rise 1      #測試成功的次數
}

vrrp_script chk_http {  #檢測nginx服務是否在運行有很多方式,比如進程,用腳本檢測等等
   script "killall -0 httpd"  #用shell命令檢查httpd服務是否存在
   interval 1  #時間間隔為1秒檢測一次
   weight -20   #當nginx的服務不存在了,就把當前的權重-20(也就是把priority 100-20=80,MASTER就會變SLAVE)
   fall 2      #測試失敗的次數
   rise 1      #測試成功的次數
}

vrrp_instance VI_1 {
    state MASTER                    #backup 改BACKUP
    interface bond1                #VIP所在的網卡接口
    #虛擬路由標識.這個標識是一個數字,並且同一個vrrp實例使用唯一的標識
    virtual_router_id 11
    #優先級.這是一個數字,數值愈大,優先級越高
    priority 100                    #backup 改90
    nopreempt                     #設置為不搶佔 註:這個配置只能設置在backup主機上,而且這個主機優先級要比另外一台高
    preempt_delay                #搶佔延時,默認5分鐘
    #同步通知間隔.MASTER與BACKUP負載均衡器之間同步檢查的時間間隔,單位為秒
    advert_int 1
    #身份驗證.包含驗證類型和驗證密碼。類型主要有PASS、AH兩種,通常使用的類型為PASS,據說AH使用時有問題。驗證密碼為明文,同一vrrp實例MASTER與BACKUP 使用相同的密碼才能正常通信
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        172.16.152.117
        #如果有多個VIP繼續換行寫
    }
    #track_script {
      #    chk_http
      #}
      
      #notify "/etc/keepalived/notify.sh"
    
}

# VIP的ip和端口,可設多個
virtual_server 172.16.152.117 8080 {
    #檢測的間隔時間,單位為秒
  delay_loop 6
  #lvs調度算法
  lb_algo rr
  #lvs方式(TUN|DR|NAT)三種方式
  lb_kind DR
  #持久連接超時的時間,單位為秒
  persistence_timeout 50
  #使用的協議TCP/UDP
  protocol TCP
        
  real_server 172.16.152.112 8080 { #backup 改172.16.152.116
      #權重,數值越大,權重越高
        weight 1
        notify_down "killall keepalived"
        #健康檢測的方式 HTTP_CHECK |SSL_GET|HTTP_GET|
        HTTP_GET {
            url { 
                path /index.jsp
                status_code 200    # Can only specify a HTTP status_code
            }
            # 連接超時時間
            connect_timeout 3
            #嘗試連接的次數
            nb_get_retry 3
            #3次成功retry之間的時間
            delay_before_retry 3
        }
    }
}
 

arrow
arrow
    文章標籤
    keepalived ha
    全站熱搜

    龍之家族 發表在 痞客邦 留言(0) 人氣()