nginx结合keepalived实现高可用的完整步骤
本文重点介绍nginxfusionkeepalived高可用性的详细过程。原文根据示例代码非常详细,对大家学习培训或者应用nginx有一定的参考价值。和有必要的朋友一起了解一下吧。
序言
为了更好地考虑系统的高可用性,一般需要构建一个集群。服务器挂机,大家的系统又可以显示服务项目了。当我们用nginx做反向代理,做静态动态分离服务器时,也是如此。系统的高可用性是成每个人关心的关键。本文引入nginx和keepalived完成主从关系,构建高可用集群。
先决条件专业知识
本文关于nginx的介绍不多,默认设置的读者已经掌握了nginx的相关专业知识。
Keepalived的介绍
Keepalived的功能是检查服务器的状态。如果web服务器出现故障或工作中出现常见故障,Keepalived将对其进行检查,并将出现常见故障的服务器从系统中删除。此外,当使用其他服务器替换服务器时,Keepalived会在一切正常的情况下自动将服务器添加到服务器群中。这种工作都是自动完成的,不需要人工干预,只有出现常见故障的服务器才需要人工恢复。
系统框架图
完成流程
1。自然环境设备
1.1安装nginx
安装依赖于
yuminstallpcre-develzlibzlib-developensslopenssl-devel
提交压缩文件以释放压力
tarzxvfnginx-1.12.2.tar.gz
建立文件目录和检查设备
mkdir-p/usr/local/nginx
./configure--prefix=/usr/local/nginx
编译和安装
make&&makeinstall
启动和终止相关指令
cd/usr/local/nginx/sbin/
./nginx
./nginx-sstop
./nginx-sstart
1.2安装keepalived
yuminstall-ykeepalived
2。计算机主机配置
更改keepalived环境变量
vim/etc/keepalived/keepalived.conf
变更内容如下
#增加的配备
vrrp_scriptchk_http_port{
script"/shell/nginx_check.sh"#脚本制作详细地址
interval2#检验脚本制作实行的间距
weight2#比例
}
vrrp_instanceVI_1{
stateMASTER#主服务器为MASTER,从服务器为BACKUP
interfaceeth0#网口
virtual_router_id51#主、备用机的virtual_router_id务必同样
priority100#主、备用机不一样的优先,服务器优先很大,备机值较小,默认设置是100
advert_int1
authentication{
auth_typePASS
auth_pass1111
}
#虚似IP地址
virtual_ipaddress{
192.168.126.88
}
}
编写脚本文件
mkdir/shell/nginx_check.sh
vim/shell/nginx_check.sh
该脚本的内容如下
#!/bin/bash
A=`ps-Cnginx–no-header|wc-l`
if[$A-eq0];then
/usr/local/nginx/sbin/nginx
sleep2
if[`ps-Cnginx--no-header|wc-l`-eq0];then
killallkeepalived
fi
fi
3。从属设备
更改keepalived环境变量
vrrp_instanceVI_1{
stateBACKUP#主服务器为MASTER,从服务器为BACKUP
interfaceeth0#网口
virtual_router_id51#主、备用机的virtual_router_id务必同样
priority50#主、备用机不一样的优先,服务器优先很大,备机值较小
advert_int1
authentication{
auth_typePASS
auth_pass1111
}
#虚似IP地址
virtual_ipaddress{
192.168.126.88
}
}
4。启动服务项目
开始
servicekeepalivedstart
查询虚拟IP地址
ipaddr
1:lo:<LOOPBACK,UP,LOWER_UP>mtu65536qdiscnoqueuestateUNKNOWN
link/loopback00:00:00:00:00:00brd00:00:00:00:00:00
inet127.0.0.1/8scopehostlo
inet6::1/128scopehost
valid_lftforeverpreferred_lftforever
2:eth0:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdiscpfifo_faststateUPqlen1000
link/ether00:0c:29:4f:31:cebrdff:ff:ff:ff:ff:ff
inet192.168.126.100/24brd192.168.126.255scopeglobaleth0
inet192.168.126.88/32scopeglobaleth0
inet6fe80::20c:29ff:fe4f:31ce/64scopelink
valid_lftforeverpreferred_lftforever
5。关闭防火墙检测
关闭防火墙
serviceiptablesstop
#查看防火墙是不是开机自启动
chkconfig--list|grepiptables
chkconfigiptablesoff
登录虚拟IP地址查询
http://192.168.126.88/
摘要
这就是本文的全部内容。希望本文中的内容对大家的学习培训或者工作有一定的参考价值。感谢您的申请。
评论列表(0条)