安装keepalived需要的依赖包
#yum install openssl-devel
#yum install popt-devel
#yum install ipvsadm
#yum install libnl*
#yum install -y libnfnetlink-devel
安装keepalived
方法1.源码安装:
通过ftp上传keepalived-2.0.4.tar.gz
#tar zxvf keepalived-2.0.4.tar.gz
#cd keepalived-2.0.4
#./configure --prefix=/usr/local/keepalived
#make && make install
方法2.直接使用yum命来
#yum install keepalived
(ps:如果没有硬性规定文件存放位置,这个比较方便)
(ps:如果担心使用yum命令安装,不知道文件都存放在哪里,可以使用:
#rpm -ql keepalived 去查看下载keepalived所产生的文件位置。)
yum 安装完之后,keepalived的配置文件在/etc/keepalived/keepalived.conf
配置主服务器配置文件
vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
#notification_email {
#}
#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
}
#监控nginx服务是否正常,每两秒检查一次
vrrp_script chk_nginx {
script "/etc/keepalived/check_nginx.sh"#监控nginx脚本代码,见结尾!
interval 2
weight -2
}
vrrp_instance VI_1 {
state MASTER#主机
interface ens192#网段
virtual_router_id 51#和backup一样
priority 100#主机高于备机
advert_int 1#检查服务器状态间隔时间
authentication {
auth_type PASS#和backup一样
auth_pass 1111#和backup一样
}
virtual_ipaddress {
***.***.**.**#虚拟ip(VIP)
}
#当前节点VIP关联到本机ip上,则调用发送邮件的脚本
notify_master "/etc/keepalived/sendmail2.pl"
#启动vrrp_script脚本
track_script {
chk_nginx#监控nginx的脚本名称
}
}
开启服务
#service keepalived start
备机安装
参考主机安装流程
配置备服务器配置文件
vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
#notification_email {
#}
#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_instance VI_1 {
state BACKUP#主机
interface ens192#网段
virtual_router_id 51#和backup一样
priority 98#主机高于备机
advert_int 1#检查服务器状态间隔时间
authentication {
auth_type PASS#和backup一样
auth_pass 1111#和backup一样
}
virtual_ipaddress {
***.***.**.**#虚拟ip(VIP)
}
#当前节点VIP关联到本机ip上,则调用发送邮件的脚本
notify_master "/etc/keepalived/sendmail2.pl"
}
两台服务器的情况下,备机不需要nginx服务了,所以没安装,因此不需要检测nginx的脚本了。
开启服务
#service keepalived start
此时在主机输入命令:
#ip addr
两个inet 说明已经成功了。
测试的话,可以把主机的keepalived进程停止掉。
#service keepalived stop
然后去备机
#ip addr
就能看到你设定的虚拟IP(vip)就绑定到备机ip上了。
至于,发送邮件的脚本,上一篇已经详细说明过了。大家可以回头看看。
这里其实也算结合了nginx+keepalived实现负载均衡高可用的。
nginx的安装与配置,下期再见!
ps:监控nginx脚本代码
#!/bin/bash
counter=$(ps -C nginx --no-heading|wc -l)
if [ "$" = "0" ];then
cd /etc/keepalived/ && ./sendmail.pl && service keepalived stop
fi
图:
图片我只是加了nginx服务重启并睡眠3秒钟的功能。
如果帮到你,转发让更多人一起交流交流呀!
领取专属 10元无门槛券
私享最新 技术干货