环境配置:
虚拟机关机,在真机进行:
清理缓存:
其余两个主机与1相同
lm1端:
yum install -y ipvsadm
ipvsadm -A -t 172.25.10.100:80 -s rr #把ip为100端口为80的主机,设定为负载均衡主机
ipvsadm -a -t 172.25.10.100:80 -r 172.25.10.2:80 -g #当访问主机为100的主机时,转接到2主机
ipvsadm -a -t 172.25.10.100:80 -r 172.25.10.3:80 -g
ip addr add 172.25.10.100/24 dev eth0 #增加临时ip值
lm2端:
yum install -y arptables_jf #arptables火墙
arptables -A INPUT -d 172.25.10.100 -j DROP #增加火墙策略,访问100的主机进来时,丢弃掉这个包
arptables -A OUTPUT -s 172.25.10.100 -j mangle --mangle-ip-s 172.25.10.2 #当访问100的主机出去时,
arptables-save > /etc/sysconfig/arptables #将此策略存到配置文件中
yum install httpd -y
systemctl start httpd
cd /var/www/html/
echo lm2 > index.html
ip addr add 172.25.10.100/32 dev eth0
arptables -nL #查看策略
lm3端:(同lm2一样)
yum install -y arptables_jf
arptables -A INPUT -d 172.25.10.100 -j DROP
arptables -A OUTPUT -s 172.25.10.100 -j mangle --mangle-ip-s 172.25.10.3
arptables-save > /etc/sysconfig/arptables
yum install httpd -y
systemctl start httpd
cd /var/www/html/
echo lm3 > index.html
ip addr add 172.25.10.100/32 dev eth0
真实主机端:
curl 172.25.10.100
lm1端:
yum install keepalived
cd /etc/keepalived/
vim keepalived.conf #编辑配置文件
ip addr del 172.25.10.100/24 dev eth0 #删除上一个实验添加的地址
ipvsadm -C
ipvsadm -ln
systemctl restart keepalived
ipvsadm -ln
lm2端:
主机端:
lm1端:
真实主机端:
qemu-img create -f qcow2 -b rhel7.6-base.qcow2 lm4 #新建虚拟机四
lm4端:
yum install keepalived
scp root@172.25.10.1:/etc/keepalived/keepalived.conf . #还要对其进行更改,指名其为backup主机且优先级比master主机低
lm1端:
重启服务
systemctl stop keepalived #让master主机停止(模拟出故障)
#此时外部访问仍然正常
真实主机端:
lm4端:
journalctl -ex #通过对模拟机4日志的观察,它已经完全替代master主机
lm1端:
systemctl start keepalived
#开启master主机服务
真实主机端:
#此时外部访问仍然正常
lm4端:
journalctl -ex #通过对模拟机4日志的观察,它又转变为backup主机
lm1端:
ipvsadm -A -t 172.25.10.100:21 -s rr ##把ip为100端口为21的主机,设定为负载均衡主机
ipvsadm -a -t 172.25.10.100:21 -r 172.25.10.2:21 -g
ipvsadm -a -t 172.25.10.100:21 -r 172.25.10.3:21 -g
vim keepalived.conf
systemctl restart keepalived
ipvsadm -ln
lm2端:
yum install vsftpd
systemctl start vsftpd
cd /var/ftp/
touch lm2
lftp localhost
lm3端:
yum install vsftpd
systemctl start vsftpd
cd /var/ftp/
touch lm3
lftp localhost
lm1端: