LVS负载均衡群集——实战篇-创新互联
LVS负载均衡群集
环境准备:
创新互联公司-专业网站定制、快速模板网站建设、高性价比遵义网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式遵义网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖遵义地区。费用合理售后完善,十余年实体公司更值得信赖。CentOS 7-1:调度器,网关(需要两块网卡)外:12.0.0.1 内:192.168.200.1
CentOS 7-2:网站服务器(Apache)192.168.200.110
CentOS 7-3:网站服务器(Apache)192.168.200.120
CentOS 7-4:提供共享存储 192.168.200.130
win7-1:客户端 12.0.0.12
yum在线安装前置操作:
1.共享存储服务器CentOS 7-4的操作:
[root@localhost ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.48.el7.x86_64
[root@localhost ~]# rpm -q rpcbind
rpcbind-0.2.0-42.el7.x86_64
2.节点服务器CentOS 7-2和7-3两台节点服务器:
[root@localhost ~]# yum install httpd -y
3.调度器网关CentOS 7-1操作:
//要先添加一个网络适配器,成为两个网卡
[root@localhost ~]# yum install ipvsadm -y
共享存储服务器CentOS 7-4:
//先将网卡更改为仅主机模式
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static" //将dhcp改为static
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.200.130 //在末行下插入:IP,子网,网关
NETMASK=255.255.255.0
GATEWAY=192.168.200.1
修改完成后输入:wq保存退出
[root@localhost ~]# service network restart
Restarting network (via systemctl): [ 确定 ]
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start nfs.service
[root@localhost ~]# systemctl status nfs.service
● nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled; vendor preset: disabled)
Active: active (exited) since 二 2019-11-26 17:42:05 CST; 11s ago
......省略多行,状态为Active说明正常
[root@localhost ~]# systemctl start rpcbind.service
[root@localhost ~]# systemctl status rpcbind.service
● rpcbind.service - RPC bind service
Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; indirect; vendor preset: enabled)
Active: active (running) since 二 2019-11-26 17:40:23 CST; 4min 26s ago
......省略多行,状态为Active说明正常
[root@localhost ~]# vim /etc/exports
/usr/share *(ro,sync)
/opt/accp 192.168.200.0/24(rw,sync)
/opt/benet 192.168.200.0/24(rw,sync)
//加入以上内容之后输入:wq保存退出
[root@localhost ~]# cd /opt/
[root@localhost opt]# mkdir benet accp
[root@localhost opt]# chmod 777 accp/ benet/ //提升权限
[root@localhost opt]# exportfs -rv //进行发布
exporting 192.168.200.0/24:/opt/benet
exporting 192.168.200.0/24:/opt/accp
exporting *:/usr/share
节点服务器(CentOS 7-2)上的操作:
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static" //将dhcp改为static
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.200.110 //在末行下插入:IP,子网,网关
NETMASK=255.255.255.0
GATEWAY=192.168.200.1
修改完成后输入:wq保存退出
[root@localhost ~]# service network restart
Restarting network (via systemctl): [ 确定 ]
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# netstat -ntap | grep 80
tcp6 0 0 :::80 :::* LISTEN 7315/httpd
//设置网络适配器为仅主机
[root@localhost ~]# ping 192.168.200.130
PING 192.168.200.130 (192.168.200.130) 56(84) bytes of data.
64 bytes from 192.168.200.130: icmp_seq=1 ttl=64 time=0.754 ms
64 bytes from 192.168.200.130: icmp_seq=2 ttl=64 time=0.368 ms
64 bytes from 192.168.200.130: icmp_seq=3 ttl=64 time=0.398 ms
[root@localhost ~]# showmount -e 192.168.200.130
Export list for 192.168.200.130:
/usr/share *
/opt/benet 192.168.200.0/24
/opt/accp 192.168.200.0/24
[root@localhost ~]# mount.nfs 192.168.200.130:/opt/accp /var/www/html/ //挂载
[root@localhost ~]# cd /var/www/html/
[root@localhost html]# echo "this is accp web" > index.html //写首页内容
此时回到存储服务器CentOS 7-4上看是否有此文件:
[root@localhost ~]# cd /opt/
[root@localhost opt]# ls
accp benet rh
[root@localhost opt]# cd accp/
[root@localhost accp]# ls
index.html
[root@localhost accp]# cat index.html
this is accp web
//此时有我们新建的index.html文件
此时,在CentOS 7-2节点服务器上使用火狐浏览器输入:127.0.0.1看是否可以显示我们写入的网页内容:
节点服务器(CentOS 7-3)上的操作:
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static" //将dhcp改为static
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.200.120 //在末行下插入:IP,子网,网关
NETMASK=255.255.255.0
GATEWAY=192.168.200.1
//修改完成后输入:wq保存退出
[root@localhost ~]# service network restart
Restarting network (via systemctl): [ 确定 ]
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start httpd.service
[root@localhost ~]# netstat -ntap | grep 80
tcp6 0 0 :::80 :::* LISTEN 7315/httpd //设置网络适配器为仅主机
[root@localhost ~]# ping 192.168.200.130
PING 192.168.200.130 (192.168.200.130) 56(84) bytes of data.
64 bytes from 192.168.200.130: icmp_seq=1 ttl=64 time=0.532 ms
64 bytes from 192.168.200.130: icmp_seq=2 ttl=64 time=1.01 ms
64 bytes from 192.168.200.130: icmp_seq=3 ttl=64 time=0.940 ms
[root@localhost ~]# showmount -e 192.168.200.130
Export list for 192.168.200.130:
/usr/share *
/opt/benet 192.168.200.0/24
/opt/accp 192.168.200.0/24
[root@localhost ~]# mount.nfs 192.168.200.130:/opt/benet /var/www/html/
[root@localhost ~]# cd /var/www/html/
[root@localhost html]# echo "this is benet web" > index.html
此时回到存储服务器CentOS 7-4上看是否有此文件:
[root@localhost ~]# cd /opt/
[root@localhost opt]# ls
accp benet rh
[root@localhost opt]# cd accp/
[root@localhost accp]# ls
index.html
[root@localhost accp]# cat index.html
this is benet web
//此时有我们新建的index.html文件
验证:在CentOS 7-3节点服务器上使用火狐浏览器输入:127.0.0.1看是否可以显示我们写入的网页内容
调度,网关服务器CentOS 7-1的操作:
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens36
[root@localhost network-scripts]# vim ifcfg-ens36
BOOTPROTO="static" //将dhcp改为static
NAME="ens36" //把名称改为ens36
UUID号删除
DEVICE="ens36" //把名称改为ens36
ONBOOT="yes"
IPADDR=12.0.0.1 //在末行下插入:IP,子网
NETMASK=255.255.255.0
//修改完成后输入:wq保存退出
[root@localhost network-scripts]# vim ifcfg-ens33
BOOTPROTO="static" //将dhcp改为static
DEVICE="ens33"
ONBOOT="yes" //在末行下插入:IP,子网
IPADDR=192.168.200.1
NETMASK=255.255.255.0
//修改完成后输入:wq保存退出
[root@localhost network-scripts]# service network restart
Restarting network (via systemctl): [ 确定 ]
[root@localhost network-scripts]# vim /etc/sysctl.conf
//在最后一行按o转下行插入
net.ipv4.ip_forward=1
//修改完成后输入:wq保存退出
[root@localhost network-scripts]# sysctl -p
net.ipv4.ip_forward = 1
[root@localhost network-scripts]# iptables -t nat -F
[root@localhost network-scripts]# iptables -F
[root@localhost network-scripts]# iptables -t nat -A POSTROUTING -o ens36 -s 192.168.200.0/24 -j SNAT --to-source 12.0.0.1
win7-1中验证转发:
先把网卡设置为仅主机模式,网卡配置为静态地址,同时关闭防火墙:
加载LVS内核模块:
[root@localhost network-scripts]# modprobe ip_vs
[root@localhost network-scripts]# cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
启动服务:(注意:在CentOS 7中必须要先保存在启动服务,否则会报错!!!)
[root@localhost network-scripts]# ipvsadm --save > /etc/sysconfig/ipvsadm
[root@localhost network-scripts]# systemctl start ipvsadm.service
编写配置规则:
[root@localhost network-scripts]# cd /opt/
[root@localhost opt]# vim nat.sh
#!/bin/bash
ipvsadm -C //清除内核虚拟服务器表中的所有记录
ipvsadm -A -t 12.0.0.1:80 -s rr //添加新的虚拟的服务器
ipvsadm -a -t 12.0.0.1:80 -r 192.168.200.110:80 -m
ipvsadm -a -t 12.0.0.1:80 -r 192.168.200.120:80 -m
ipvsadm
//输入完成后输入:wq保存退出
[root@localhost opt]# source nat.sh
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP localhost.localdomain:http rr
-> 129.168.200.110:http Masq 1 0 0
-> 129.168.200.120:http Masq 1 0 0
验证:使用win7-1客户终端访问12.0.0.1,看是否可以成功:
此时可以访问,说明LVS负载均衡群集成功提供服务,试验成功!
网站标题:LVS负载均衡群集——实战篇-创新互联
链接分享:http://azwzsj.com/article/coiodp.html