服務器:CentOS 7.5html
下載地址:https://www.keepalived.org/download.htmlmysql
安裝包:keepalived-2.0.10.tar.gzsql
>cd /opt >tar -zxvf keepalived-2.0.10.tar.gz #解壓安裝包 >cd keepalived-2.0.10 #進入安裝目錄 >./configure --prefix=/usr/local/keepalived #配置 >make & make install #編譯和安裝
安裝完成後的目錄如圖所示: vim
安裝包所在路徑:/opt/keepalived-2.0.10
bash
查看配置文件目錄結構:服務器
>tree -l /opt/keepalived-2.0.10/keepalived/etc keepalived/etc/ ├── init │ ├── keepalived.conf.in │ ├── Makefile │ ├── Makefile.am │ └── Makefile.in ├── init.d │ ├── keepalived │ ├── keepalived.rh.init │ ├── keepalived.suse.init.in │ ├── Makefile │ ├── Makefile.am │ └── Makefile.in ├── keepalived │ └── keepalived.conf ├── Makefile ├── Makefile.am ├── Makefile.in ├── openrc │ └── keepalived └── sysconfig └── keepalived
將配置文件拷貝到系統相應目錄下:rest
>mkdir /etc/keepalived >cd /opt/keepalived-2.0.10/keepalived/etc >cp ./keepalived/keepalived.conf /etc/keepalived/keepalived.conf >cp ./init.d/keepalived /etc/init.d/keepalived >cp ./sysconfig/keepalived /etc/sysconfig/keepalived.conf
設置開機啓動:code
>chkconfig keepalived on
修改配置文件:router
>vim /etc/keepalived/keepalived.conf global_defs { router_id mysql-103 #每臺keepalived不一樣 } vrrp_instance VI_1 { state MASTER #主實例,BACKUP爲從實例 interface ens160 #網卡名稱 virtual_router_id 51 #主備都相同 priority 100 #優先級,主備不一樣,主高於備 advert_int 1 authentication { auth_type PASS #主備相同 auth_pass 1111 #主備相同 } virtual_ipaddress { 192.168.0.250 #vip,主備相同,且位於同一網段 } }
>firewall-cmd --add-rich-rule='rule protocol value="vrrp" accept' --permanent >firewall-cmd --reload
>service keepalived start/stop/restart/status
查看啓動狀態:htm
>ps -ef|grep keepalived root 23512 1 0 11:14 ? 00:00:00 /usr/local/keepalived/sbin/keepalived -D root 23513 23512 0 11:14 ? 00:00:00 /usr/local/keepalived/sbin/keepalived -D root 23535 7821 0 11:14 pts/3 00:00:00 grep --color=auto keepalived
驗證vip地址:
>ip addr 1: ...(ignore) 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000 link/ether 00:00... brd ff:ff:ff:ff:ff:ff inet 192.168.0.110/24 brd 192.168.0.255 scope global ens160 #本機ip valid_lft forever preferred_lft forever inet 192.168.0.250/32 scope global ens160 #出現vip valid_lft forever preferred_lft forever inet6 ffee:eeff.../64 scope link valid_lft forever preferred_lft forever
多個keepalived實例在安裝完成後須要進行主備交叉驗證,關閉主實例,從實例可看到vip,再次啓動主實例,此時只有主實例能夠看到vip