搭建Keepalived+Lvs+Nginx高可用集群负载均衡

一、配置Master

1、keepalived配置

global_defs {
	router_id LVS_151
}

vrrp_instance VI_1 {
	state MASTER
	interface ens33
	virtual_router_id 41
	priority 100
	advert_int 1
	authentication {
		auth_type PASS
		auth_pass 1111
	}
	virtual_ipaddress {
		192.168.1.150
	}
}

virtual_server 192.168.1.150 80 {
	#健康检查的时间,单位:秒
	delay_loop 6
	#配置负载均衡的算法,默认是轮询
	lb_algo rr
	#设置LVS的模式 NAT|TUN|DR
	lb_kind DR
	#设置会话持久化的时间 单位:秒
	persistence_timeout 5
	#协议 -t
	protocol TCP

	# 负载均衡的真实服务器,也就是nginx节点的具体的真实的ip地址
	real_server 192.168.1.171 80 {
		# 轮询的默认权重配比设置为1 
		weight 1
		TCP_CHECK {
			# 检查的80端口
			connect_port 80
			# 超时时间 2s
			connect_timeout 2
			#重试次数 2次
			nb_get_retry 2
			#间隔时间 3s
			delay_before_retry 3
		}
	}
	
	real_server 192.168.1.172 80 {
		# 轮询的默认权重配比设置为1 
		weight 1
		TCP_CHECK {
			# 检查的80端口
			connect_port 80
			# 超时时间 2s
			connect_timeout 2
			#重试次数 2次
			nb_get_retry 2
			#间隔时间 3s
			delay_before_retry 3
		}
	}	
}

2、清除lvs现有配置的规则

ipvsadm -C

3、重启keepalived

systemctl restart keepalived

4、查看集群列表

ipvsadm -Ln

二、配置Backup

global_defs {
	router_id LVS_152
}

vrrp_instance VI_1 {
	state BACKUP
	interface ens33
	virtual_router_id 41
	priority 100
	advert_int 1
	authentication {
		auth_type PASS
		auth_pass 1111
	}
	virtual_ipaddress {
		192.168.1.150
	}
}

#其余和主机一样

三、测试

1、keepalived异常测试

  • 关闭主LVS的keepalived,查看请求访问情况是否正常,LVS主机虚拟ip是否已经转移到备用机
  • 重启LVS主机keepalived查看是否恢复正常

2、nginx异常测试

  • 关闭其中一台nginx,查看请求是否正常,目标ip是否与另一台一致
  • 重启关闭的nginx,查看请求是否恢复正常

你可能感兴趣的:(Nginx学习,nginx,运维,lvs)