给多台lvs调度器配置keepalived,从而实现lvs的高可用,lvs采用DR模式。
lvs的vip不需要自己手动配置,使用keepalived自动配置。
配置web服务器:
1、配置ip地址 192.168.4.100
2、伪装ip:
cd /etc/sysconfig/network-scripts/
cp ifcfg-lo{,:0} #复制本地回环网卡lo
vim ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.4.15 #伪装ip
NETMASK=255.255.255.255 #4个255主机型ip
NETWORK=192.168.4.15 #所属网络
BROADCAST=192.168.4.15 #广播地址
ONBOOT=yes #开机启动
NAME=lo:0
3、隐藏伪装的ip:
vim /etc/sysctl.conf
#手动写入,忘记了去看LVS-DR
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
4、重启网卡,关闭防火墙:
systemctl restart network
# 如果启动失败关闭NetworkManager
systemctl stop firewalld
配置lvs调度服务器:
1、配置ip地址 192.168.4.5
2、安装keepalived,ipvsadm(为了查看信息)
yum -y install keepalievd
yum -y install ipvsadm
ipvsadm -C #清空集群
3、配置keepalived
vim /etc/keepalived/keepalived.conf
global_defs {
notification_email {
xxx@gamil.com #报警收件人邮箱
}
notification_email_from ka@localhost #发件人
smtp_server 127.0.0.1 #邮件服务器
smtp_connect_timeout 30
router_id lvs1 #路由id
}
vrrp_instance VI_1 {
state MASTER #主服务器为MASTER,备份服务器为BACKUP
interface eth0 #网卡名
virtual_router_id 51 #虚拟路由id主服务器、备份服务器相同
priority 100 #优先级,主、备服务器是根据优先级划分的
advert_int 1 #每1秒进行一次优先级的比较
authentication { #密码认证
auth_type pass
auth_pass 1111 #主、备服务器密码应该相同
}
virtual_ipaddress { #主服务器获得的vip
192.168.4.15
}
}
virtual_server 192.168.4.15 80 { #定义集群,ipvsadm -A
delay_loop 6
lb_algo rr #集群的调度算法
lb_kind DR #集群工作模式,DR
#persistence_timeout 50 #50秒内访问同一台主机,不注释掉无法轮询
protocol TCP #采用tcp协议
real_server 192.168.4.100 80 { #为集群添加real server,ipvsadm -A -t xx -r
weight 1 # real server权重
TCP_CHECK { # 对real server进行健康检查,仅检查端口,不检查内容
connect_timeout 3 #超时时间为3秒,超过3秒则表示不能连通
nb_get_retry 3 #如果不能连通则检查3次
delay_before_retry 3 #每3秒检查一次
}
}
real_server 192.168.4.200 80 { #为集群添加另外一台real server
weight 1 #设置权重为1
TCP_CHECK { # 对real server进行健康检查,仅检查端口,不检查内容
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
4、启动服务,清空防火墙规则:
systemctl start keepalived
iptables -F
5、检验:
ip a s 查看是否多了一个192.168.4.15的网卡
ipvsadm -Ln 查看集群是否配置成功
写总结的第二十七天!!!