高效使用nginx双主热备,使用keepalived来实现,安装与使用

安装

  • 1、编辑 ./configure --prefix=/usr/local/keepalived --sysconf=/etc
	 Prefix 安装位置 
	 Sysconf keepalived核心配置文件所在位置,固定位置,改成其他位置keepalived
	 启动不了,/var/log/message中会报错 
	 安装过程如果报错 
	 安装依赖 yum install -y libnl libnl-devel 
	 重启configure 
	 Make &&make install 
	 核心文件在/etc/keepalived/

配置

  • 1、配置主节点
	修改/etc/keepalived/keepalived.conf 
	Global_defs{ 
		  #路由id,当前安装keepalived的节点主机标识符,保证全局唯一 
		  route_id keep_171 
	} 
	Vrrp_instance VI_1{ 
		  #表示状态是MASTER主机还是备用机BACKUP 
		  State MASTER 
		  #该实例绑定的网卡 
		  Interface ens33 
		  #保证主备节点一致即可 
		  Virtual_router_id 51 
		  #权重,master权重一般高于backup,如果有多个,那就是选举,谁的权重搞,谁就当选 
		  Priority 100 
		  #主备之间同步检查时间间隔,单位秒 
		  advert_int 2 
		  #认证权限密码,防止非法节点接入 
		  Authentication{ 
		  	auth_type pass 
		  	Auth_pass 1111 
		  } 
		  #虚拟出来的ip,可以有多个(vip) 
		  Virtual_ipaddress{ 
		  	192.168.1.1 
		  } 
	} 
	查看网卡信息ip addr 
	启动keepalived 安装目录下sbin 下keepalived 
	查看进程 ps -ef | grep keepalived 
	再次查看网卡是否出现vip域名
	注意:配置信息没有分号,换行就行了 
		 有时使用systemctl 命令无效,就使用pkill 命令 
  • 2、配置备节点
其他配置基本和主节点一致 
其中修改state为BACKUP,priority权重改小事主节点一般多久行 

Keepalived配置nginx自动重启

  • 新增/etc/keepalived/check_nginx_alive_or_not,sh脚本
	#!/bin/bash
	
	A=ps -C nginx --no-header | wc -l 
	#判断nginx是否宕机,如果宕机了,尝试重启 
	if [ $A -eq 0 ];
		then /usr/local/nginx/sbin/nginx 
		#等待一小会再次检查nginx,如果没有启动成功,则停止keepalived,使其启动备用机 
		Sleep 3 
		If [ ps -C nginx --no-header | wc -l -eq 0 ];then 
			Killall keepalived 
		Fi 
	Fi 
注意相对应的空格,否则运行失败 
增加运行权限 
配置keepalived监听nginx脚本 
	Vrrp_script check_nginx_alive { 
		Script “ /etc/keepalived/check_nginx_alive_or_not.sh” 
		Interval 2 #每隔两秒运行上一行脚本 
			Weight 10 #如果基本运行失败,则升级权重+10 
		} 
		在vrrp_instance中新增监控的脚本 
		Track_script { 
			Check_nginx_alive#追踪nginx脚本 
		} 
	}
重启keepalived ,systemctl restart keepalived 
有时会无效,可以查看安装时的日志,tail messages 查看报错信息,常规错误是pid不存在,可重启(不推荐)

配置keepalived双主热备

  • 意思就是把备机当主机配置,把主机当备机配置,调换相应的配置即可

然后就可以愉快的玩耍了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值