1、准备
Master:192.168.220.17(服务器1)
Backup:192.168.220.18(服务器2)
vip:192.168.220.55(不用管,在下面keepalived.conf配置即可)
tomcat官网:https://tomcat.apache.org/(下载自己对应的版本)
jdk官网:https://www.oracle.com/(下载自己对应的版本)
2、安装keepalive
yum install keepalived
安装完成,路径地址为 cd /etc/keepalived
如无法安装,https://www.keepalived.org/download.html官网自行下载安装
3、安装tomcat
此步骤忽略,自行安装
4、配置keepalived.conf
MASTER:
global_defs {
notification_email {
root@localhost
}
notification_email_from root@localhost
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
# script_user root
# enable_script_security
}
vrrp_script chk_tomcat {
script "/etc/keepalived/tomcat_check.sh"
interval 3
weight -5
fall 3
rise 2
}
vrrp_instance VI_1 {
state MASTER
interface ens32
mcast_src_ip 192.168.220.18
virtual_router_id 51
priority 100 #此处不同,要低于master
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_interface {
ens32
}
track_script {
chk_tomcat
}
virtual_ipaddress {
192.168.220.55
}
}
BACKUP:
global_defs {
notification_email {
root@localhost
}
notification_email_from root@localhost
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
# script_user root
# enable_script_security
}
vrrp_script chk_tomcat {
script "/etc/keepalived/tomcat_check.sh"
interval 3
weight -5
fall 3
rise 2
}
vrrp_instance VI_1 {
state BACKUP
interface ens32
mcast_src_ip 192.168.220.17
virtual_router_id 51
priority 99
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
track_interface {
ens32
}
track_script {
chk_tomcat
}
virtual_ipaddress {
192.168.220.55
}
}
tomcat脚本:
#!/bin/bash
JAVA_PROCESS=`ps -C java --no-heading| wc -l`
#tomcat_home=/etc/keepalived/apache-tomcat-9.0.38-8082
#SHUTDOWN=$tomcat_home/bin/shutdown.sh
#STARTTOMCAT=$tomcat_home/bin/startup.sh
if [ $JAVA_PROCESS -eq 0 ];then
echo "tomcat is stop"
sleep 2
if [ `ps -C java --no-heading| wc -l` -eq 0 ];then
shutdown -r now
#/etc/init.d/keepalived stop
#. /etc/profile
#cd /etc/keepalived/apache-tomcat-9.0.38-8082/bin/
#service keepalived restart
#./startup.sh
#nohup ./startup.sh >/dev/null 2>&1&
#nohup /etc/keepalived/apache-tomcat-9.0.38-8082/bin/startup.sh >/dev/null 2>&1&
#echo "启动$tomcat_home"
#$STARTTOMCAT
fi
fi
设置开机自启tomcat级keepalived
cat /etc/rc.d/rc.local
vim /etc/rc.d/rc.local
nohup /etc/keepalived/apache-tomcat-9.0.38-8082/bin/startup.sh >/dev/null 2>&1&
service keepalived start
将以上两条数据加入到rc.local文件里
这样就大功告成了
具体实现功能为:
主服务器tomcat挂掉,从服务器顶上,且主服务器重新启动tomcat及keepalived。
有兴趣者可访问http://tylxjj.top/(此为个人网站,欢迎来访,并联系。)