keealived安裝

keealived安裝linux

依賴
 yum install -y libnl*
 yum install -y libnfnetlink-devel zlib zlib-devel gcc gcc-c++ openssl openssl-devel opensshnginx

1.上官網下載 .tar.gz任意版本壓縮包
2.上傳linux ,解壓tar xvf keepalived-1.3.5.tar.gz
3.進入解壓目錄,./configure --prefix=/usr/local/keepalived  指定安裝目錄。而後make && make install
4. cp /解壓目錄/keepalived/etc/init.d/keepalived /etc/init.d/keepalived 賦值執行問腳本到service服務
5.mkdir /etc/keepalived  而後賦值配置文件到指定目錄
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.confc++

6.cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/keepalivedbash

7.chkconfig keepalived on 設置開機啓動ssh

8.service keepalived start 啓動url


ps:
使用service keepalived start命令啓動服務時,
默認會將/etc/sysconfig/keepalived文件中KEEPALIVED_OPTIONS參數做爲keepalived服務啓動時的參數,
並從/etc/keepalived/目錄下加載keepalived.conf配置文件,或用-f參數指定配置文件的位置。或者修改啓動腳本里的
keepalived=/usr/local/keepalived/sbin/keepalived 啓動腳本
keepalived_config=/usr/local/keepalived/etc/keepalived/keepalived.conf 配置文件地址
keepalived_pid=/usr/local/keepalived/run/keepalived.pid pid沒的說router

配置以下:具體含義能夠本身查
! Configuration File for keepalivedserver

global_defs {
   #notification_email {
   # acassen@firewall.loc
   #failover@firewall.loc
   #sysadmin@firewall.loc
   #} 不須要郵件發送
   #notification_email_from Alexandre.Cassen@firewall.loc
   #smtp_server 192.168.200.1
   #smtp_connect_timeout 30
   router_id LVS_DEVEL
   #vrrp_skip_check_adv_addr
   #vrrp_strict   暫不須要這些參數
   #vrrp_garp_interval 0
   #vrrp_gna_interval 0
}
vrrp_script check_nginx {
    script "/etc/keepalived/check_nginx.sh"         ##監控腳本
    interval 2                                      ##時間間隔,2秒
    weight -10                                        ##權重weight 爲正時,腳本檢測成功時此weight會加到priority上 ,weight爲負時,腳本檢測成功時此weight不影響priority,檢測失敗時priority – abs(weight)
    fall 2  
    rise 1
}進程

vrrp_instance VI_1 {
    state MASTER
    interface em1
    mcast_src_ip 192.168.17.32
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    track_script {
        check_nginx        #監控腳本
   }
    virtual_ipaddress {
        192.168.18.200
    }
}ip

備用節點修改mcast_src_ip爲本身ip ,priority值小於主節點 99便可,注意跟權重的配合。
修改state=BACKUP

check_nginx.sh 最靠譜的方式應該檢查某個url是否返回值
#!/bin/bash
# 若是進程中沒有nginx則將keepalived進程kill掉
A=`ps -C nginx --no-header |wc -l`      ## 查看是否有 nginx進程 把值賦給變量A 
if [ $A -eq 0 ];then                    ## 若是沒有進程值得爲 零
       service keepalived stop          ## 則結束 keepalived 進程
fi

雙主模式只須要再建一個vrrp_instance 將slave 變成master master裏配置 slave便可。注意ip不能重複。

相關文章
相關標籤/搜索