实现原理
lvs压力小,但是无法通过域名进行轮询,nginx压力大,但是可以通过域名进行轮询,如果都有需求,需要四七层负载结合
架构图
客户端进入lvs发送给nginx,nginx实现域名进行负载均衡分发给不同的主机
实验
其中apache服务中:
13:www.ljh.com1
14:www.ljh.com2
15:www.ljh.com3
所有机器都挂载阿里云:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum makecache
永久关闭NetworkManager(10、11、12)
service NetworkManager stop
chkconfig NetworkManager off
构建三台apache(13、14、15)一起操作
yum -y install httpd
配置不同的网页初始界面
13:echo "www.ljh.com1" > /var/www/html/index.html
14:echo "www.ljh.com2" > /var/www/html/index.html
15:echo "www.ljh.cn" > /var/www/html/index.html
service httpd start
curl localhost
安装2台nginx(11、12)
yum -y install nginx
vim /etc/nginx/nginx.conf
具体思路:通过2个upstream使用不同的域名主机调用
nginx -t
nginx
修改hosts文件
测试轮询(11)
配置lvs-DR(10)
配置网关
cd /etc/sysconfig/network-scripts/
cp -a ifcfg-ens33 ifcfg-ens33:0
vim ifcfg-ens33:0
ifup ens33:0
关闭网卡重定向功能
vim /etc/sysctl.conf
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
sysctl -p
命令行管理
modprobe ip_vs
lsmod | grep ip_vs
yum -y install ipvsadm.x86_64
创建集群
ipvsadm -A -t 192.168.10.10:80 -s rr
ipvsadm -a -t 192.168.10.10:80 -r 192.168.1.11:80 -g
ipvsadm -a -t 192.168.10.10:80 -r 192.168.1.12:80 -g
ipvsadm --set 1 2 1
ipvsadm -Ln
ipvsadm --save >> /etc/sysconfig/ipvsadm
配置lvs真实节点(11、12)
cd /etc/sysconfig/network-scripts/
cp -a ifcfg-lo ifcfg-lo:0
vim ifcfg-lo:0
修改内核参数,关闭arp响应级别和宣告模式(通讯行为)
vim /etc/sysctl.conf
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce= 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce= 2
net.ipv4.conf.lo.arp_ignore= 1
net.ipv4.conf.lo.arp_announce = 2
sysctl -p
ifup lo:0
ifconfig
添加路由记录,并写入到开机自启中
route add -host 192.168.10.100 dev lo:0
echo "route add -host 192.168.10.100 dev lo:0" >> /etc/rc.local
chmod +x /etc/rc.local
修改hosts文件设置为VIP
测试:
发布者:LJH,转发请注明出处:https://www.ljh.cool/6182.html