伺服器架構配置keepalived 雙機熱備
阿新 • • 發佈:2018-12-19
下載wget http://keepalived.org/software/keepalived-2.0.6.tar.gz mkdir /usr/local/keepalived/ tar -zxvf keepalived-2.0.6.tar.gz -C /usr/local/keepalived cd /usr/local/keepalived/keepalived-2.0.6 ./configure make make install cp -r keepalived /etc/init.d/keepalived mkdir /etc/keepalived/ cd /usr/local/keepalived/keepalived-2.0.6/keepalived/etc/keepalived cp keepalived.conf /etc/keepalived/ cd /usr/local/keepalived/keepalived-2.0.6/keepalived/etc/sysconfig/ cp keepalived /etc/sysconfig/keepalived cp /usr/local/keepalived/keepalived-2.0.6/bin/keepalived /usr/sbin vi /etc/keepalived/keepalived.conf #以下是配置的內容 vrrp_instance VI_1 { state MASTER interface ens33 virtual_router_id 51 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.67.100 } } 以上修改瞭如下三項 1. priority 101 #Master值要大於Bakcup 2.更改網路介面 vrrp_instance VI_1 中interface:eno16777736(ip addr命令中的網路) 3. 192.168.67.100 是虛擬ip 啟動keepalived service keepalived start或者systemctl start keepalived 備用排程伺服器 只有一項不同 priority 100 同樣配置完畢後啟動keepalived 注意: #vrrp_strict #這個註釋掉,否則可能造成物理機的瀏覽器無法訪問應用 啟動keepalived service keepalived start 設定開機自啟動 systemctl enable keepalived.service
如果nginx死掉,虛擬ip不會自動切換,如果要nginx停止執行後虛擬ip自動切換,需要設定指令碼:
#增加keepalived配置檔案 vi /etc/keepalived/keepalived.conf #修改配置 ! Configuration File for keepalived global_defs { notification_email { [email protected] [email protected] [email protected] } notification_email_from
[email protected] 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 chk_nginx{ script "/root/nginx_chk.sh" } vrrp_instance VI_1 { state MASTER interface eno16777736 virtual_router_id 51 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.43.66 } track_script{ chk_nginx } } #建立 vi /root/nginx_chk.sh,輸入指令碼 #!/bin/bash if [ "$(ps aux | grep "nginx: master process"|grep -v grep)" == "" ] then #/etc/init.d/keepalived/keepalived stop service keepalived stop fi