nginx怎么结合keepalived实现高可用
时间:2023-05-12 14:10
keepalived的介绍 keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。 系统架构图 实现步骤 1.环境配置 1.1 安装nginx 安装相关依赖 上传解压压缩包 创建目录,检测配置 预编译和安装 启动、停止相关命令 1.2 安装keepalived 2.主机配置 修改keepalived配置文件 修改的内容如下 创建编写脚本文件 脚本文件内容如下 3.从机配置 修改keepalived配置文件 4.启动服务 启动 查看虚拟ip地址 5.关闭防火墙测试 关闭防火墙 登陆虚拟ip地址查看 以上就是nginx怎么结合keepalived实现高可用的详细内容,更多请关注Gxl网其它相关文章!yum install pcre-devel zlib zlib-devel openssl openssl-devel
tar zxvf nginx-1.12.2.tar.gz
mkdir -p /usr/local/nginx./configure --prefix=/usr/local/nginx
make && make install
cd /usr/local/nginx/sbin/./nginx./nginx -s stop./nginx -s start
yum install -y keepalived
vim /etc/keepalived/keepalived.conf
#新增的配置vrrp_script chk_http_port { script "/shell/nginx_check.sh" #脚本地址 interval 2 #检测脚本执行的间隔 weight 2 #比重}vrrp_instance vi_1 { state master #主服务器为master,从服务器为backup interface eth0 #网卡 virtual_router_id 51 #主、备机的virtual_router_id必须相同 priority 100 #主、备机不同的优先级,主机优先级较大,备机值较小,默认是100 advert_int 1 authentication { auth_type pass auth_pass 1111 } #虚拟ip地址 virtual_ipaddress { 192.168.126.88 }}
mkdir /shell/nginx_check.shvim /shell/nginx_check.sh
#!/bin/basha=`ps -c nginx –no-header |wc -l`if [ $a -eq 0 ];then /usr/local/nginx/sbin/nginx sleep 2 if [ `ps -c nginx --no-header |wc -l` -eq 0 ];then killall keepalived fifi
vrrp_instance vi_1 { state backup #主服务器为master,从服务器为backup interface eth0 #网卡 virtual_router_id 51 #主、备机的virtual_router_id必须相同 priority 50 #主、备机不同的优先级,主机优先级较大,备机值较小 advert_int 1 authentication { auth_type pass auth_pass 1111 } #虚拟ip地址 virtual_ipaddress { 192.168.126.88 }}
service keepalived start
ip addr1: lo: <loopback,up,lower_up> mtu 65536 qdisc noqueue state unknown link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever2: eth0: <broadcast,multicast,up,lower_up> mtu 1500 qdisc pfifo_fast state up qlen 1000 link/ether 00:0c:29:4f:31:ce brd ff:ff:ff:ff:ff:ff inet 192.168.126.100/24 brd 192.168.126.255 scope global eth0 inet 192.168.126.88/32 scope global eth0 inet6 fe80::20c:29ff:fe4f:31ce/64 scope link valid_lft forever preferred_lft forever
service iptables stop#查看防火墙是否开机自启动chkconfig --list | grep iptableschkconfig iptables off
http://192.168.126.88/