keepalived

199 阅读1分钟
问题:
1.lvs会挂,业务下线,单点故障
2.RS会挂,一部分用户会请求异常,lvs还存有这个RS的负载记录
解决:
单点故障的解决方式:它是一个,一个有问题,可以用一堆:一变多!
多点 形式 1)主备 2)主主
lvs 内核中有模块:ipvs 增加代码 or 第三方实现
keepalived代替人自动运维,解决单点故障,实现HA
1.监控自己服务
2.Master通告自己还活着,Backup监听Master状态,Master挂了,一堆Backup推举出一个新的Master
3.配置:vip 添加ipvs keepalived是有配置文件
4.对后端server做健康检查
keepalied是一个通用工具,主要作为HA实现
nginx,可以作为公司的负载均衡来用,ngnx成为单点故障,也可用keepalived来解决
学习keepalived
node01: 清一下lvs配置
	ipvsadm -ln
	ipvsadm -C
	ipvsadm -ln
	卸一下vip	
	ifconfig eth0:8 down
node01,node04
	yum install keepalived -y
	node04 yum install keepalived ipvsadm -y
	cd /etc/keepalived
	cp keepalived.conf keepalived.conf.bak
	vi keepalived.conf
		vrrp : 虚拟路由冗余协议
                node01~
			vrrp_instance VI_1{
				state MASTER                 // node04 BACKUP
				interface eth0
				virtual_router_id 51
				priority 100      			 // node04 50
				advert_int 1
				authentication {
					auth_type PASS
					auth_pass 1111
				}
				virtual_ipaddres{
					192.168.150.100/24 dev eth0 label eth0:3
				}
			}
			
			virtual_server 192.168.150.100 80 {
				delay_loop 6
				lb_algo rr
				lb_kind DR
				nat_mask 255.255.255.0
				persistence_timeout 0
				protocol TCP
				real_server 192.168.150.12 80 {
					weight 1
					HTTP_GET{
						url {
							path /
							status_code 200
						}
						connect_timeout 3
						nb_get_retry 3
						delay_before_retry 3
					}
				}
				real_server 192.168.150.13 80 {
					weight 1
					HTTP_GET{
						url {
							path /
							status_code 200
						}
						connect_timeout 3
						nb_get_retry 3
						delay_before_retry 3
					}
				}
			}