可使用rpm安裝,自動尋找依賴,簡化安裝流程。html
源碼安裝:linux
須要先安裝openssl-develvim
安裝openssl-devel出現衝突問題:dom
initscripts conflicts with redhat-release-server-7.2-9.el7.x86_64
解決:卸載衝突包url
參考:.net
http://www.mamicode.com/info-detail-2369782.htmlrest
http://blog.51cto.com/2484643/2140696code
http://www.cnblogs.com/LHXW/p/9593520.htmlserver
./configure配置KeepAlived出現configure: error: libnfnetlink headers missing問題:htm
yum install -y libnfnetlink-devel
安裝相關依賴
參考:
https://blog.yoodb.com/yoodb/article/detail/1378
https://www.cnblogs.com/succeed/p/6697185.html
安裝KeepAlived及常見問題:
https://www.cnblogs.com/linuxlinuxlinux/p/7699771.html
https://blog.csdn.net/liupeifeng3514/article/details/79018116
https://blog.csdn.net/xyang81/article/details/52554398
https://www.cnblogs.com/dcrq/p/5642680.html
配置完成後,須要使用systemctl enable keepalived.service加爲開機啓動系統服務,實際是創建一個到啓動目錄的連接,原理詳見rhel7開機啓動服務一篇。
而後,service keepalived start,發現無論用:
[root@localhost sbin]# service keepalived start
Starting keepalived (via systemctl): [ OK ]
[root@localhost sbin]# systemctl status keepalived.service
● keepalived.service - LVS and VRRP High Availability Monitor
Loaded: loaded (/usr/lib/systemd/system/keepalived.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Thu 2018-12-20 23:09:17 EST; 2s ago
Process: 9681 ExecStart=/usr/local/keepalived/sbin/keepalived $KEEPALIVED_OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 9682 (code=exited, status=0/SUCCESS)
Dec 20 23:09:11 localhost.localdomain Keepalived_healthcheckers[9683]: Openin...
Dec 20 23:09:11 localhost.localdomain Keepalived_vrrp[9684]: (VI_1): No VIP s...
Dec 20 23:09:11 localhost.localdomain Keepalived_healthcheckers[9683]: Activa...
Dec 20 23:09:11 localhost.localdomain Keepalived_healthcheckers[9683]: Activa...
Dec 20 23:09:11 localhost.localdomain Keepalived_healthcheckers[9683]: Activa...
Dec 20 23:09:11 localhost.localdomain Keepalived_healthcheckers[9683]: Activa...
Dec 20 23:09:11 localhost.localdomain Keepalived_healthcheckers[9683]: Activa...
Dec 20 23:09:12 localhost.localdomain Keepalived_vrrp[9684]: Stopped
Dec 20 23:09:12 localhost.localdomain Keepalived[9682]: Keepalived_vrrp exite...
Dec 20 23:09:12 localhost.localdomain Keepalived[9682]: Stopping
Hint: Some lines were ellipsized, use -l to show in full.
因此要用systemctl命令啓動:
[root@localhost sbin]# systemctl enable keepalived.service
[root@localhost sbin]# systemctl restart keepalived.service
[root@localhost sbin]# systemctl status keepalived.service
● keepalived.service - LVS and VRRP High Availability Monitor
Loaded: loaded (/usr/lib/systemd/system/keepalived.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2018-12-20 23:10:04 EST; 3s ago
Process: 9755 ExecStart=/usr/local/keepalived/sbin/keepalived $KEEPALIVED_OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 9756 (keepalived)
CGroup: /system.slice/keepalived.service
└─9756 /usr/local/keepalived/sbin/keepalived -D
Dec 20 23:10:04 localhost.localdomain Keepalived_vrrp[9758]: Registering grat...
Dec 20 23:10:04 localhost.localdomain Keepalived_vrrp[9758]: Opening file '/e...
Dec 20 23:10:04 localhost.localdomain Keepalived_vrrp[9758]: Cant find interf...
Dec 20 23:10:04 localhost.localdomain Keepalived_vrrp[9758]: Default interfac...
Dec 20 23:10:04 localhost.localdomain systemd[1]: Started LVS and VRRP High A...
Dec 20 23:10:04 localhost.localdomain Keepalived_vrrp[9758]: Default interfac...
Dec 20 23:10:04 localhost.localdomain Keepalived_vrrp[9758]: Default interfac...
Dec 20 23:10:04 localhost.localdomain Keepalived_vrrp[9758]: (VI_1): No VIP s...
Dec 20 23:10:05 localhost.localdomain Keepalived[9756]: Keepalived_vrrp exite...
Dec 20 23:10:05 localhost.localdomain Keepalived[9756]: Stopping
Hint: Some lines were ellipsized, use -l to show in full.
服務啓動報錯問題:
Job for keepalived.service failed because a configured resource limit was exceeded. See "systemctl status keepalived.service" and "journalctl -xe" for details.
解決:(注意徹底按照下文操做,看全作全每一個步驟!!)
https://blog.csdn.net/zsg88/article/details/76690847
須要注意的是在修改了啓動腳本後,須要使用systemctl daemon-reload從新載入systemd,掃描新的或有變更的單元
不然修改的腳本沒法生效!!通常也是啓動報錯緣由。
啓動前配置必要文件,拷貝必要文件問題:
https://blog.csdn.net/weixin_40885374/article/details/81018645
https://blog.csdn.net/dingsai88/article/details/51015681
缺乏的必要文件(腳本)編寫參照:
http://www.mamicode.com/info-detail-1181951.html
注意:腳本配置問題,腳本文件也能夠直接去keepalived源碼目錄keepalived/etc子目錄拷貝,注意修改腳本文件中配置的pid位置,配置文件位置,sysconfig腳本位置,
把源碼目錄擁有的這些文件拷貝到腳本中配置的對應位置,注意訪問權限問題
腳本參考:
#!/bin/sh
#
#Startup script for the Keepalived daemon
#
# processname: keepalived
# pidfile: /var/run/keepalived.pid
# config: /etc/keepalived/keepalived.conf
# chkconfig: - 21 79
# description: Start and stop Keepalived
# Source function library
. /etc/rc.d/init.d/functions
# Source configuration file (we set KEEPALIVED_OPTIONS there)
. /usr/local/keepalived/etc/sysconfig/keepalived
RETVAL=0
prog="keepalived"
start() {
echo -n $"Starting $prog: "
daemon keepalived ${KEEPALIVED_OPTIONS}
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
}
這個腳本實際上不全,缺乏restart,stop等功能腳本內容,具體腳本參照源碼包目錄keepalived-1.3.5/keepalived/etc/init.d下面的keepalived腳本文件!!
配置注意
虛擬機設置KeepAlived的VIP,須要設置和虛擬網關同一網段的,纔可經過外網訪問(虛擬機內網則無所謂)。這裏設置和172.20.10.30同一網段的好比172.20.10.150,172.20.10.151,能夠外網訪問。若是設置成如192.168.xxx則沒法外網訪問!!這時虛擬機設置的限制。
雙主配置:
https://www.cnblogs.com/mmdln/p/8988951.html
vim塊(列)操做: