LVS負荷分散クラスター
1.実験の準備
ホスト | オペレーティング・システム | IPアドレス | ツール/ソフトウェア/インストールパッケージ |
---|---|---|---|
ロードスケジューラ | CentOS7 | 内部ネットワーク:192.168.153.10、外部ネットワーク:12.0.0.1 | ipvsadm |
NFSサーバー | CentOS7 | 192.168.153.20 | rpcbind、nfs-utils |
ノードサーバー1 | CentOS7 | 192.168.153.30 | rpcbind、nfs-utils、httpd |
ノードサーバー2 | CentOS7 | 192.168.153.40 | rpcbind、nfs-utils、httpd |
クライアント | ウインドウズ10 | 12.0.0.12 | / |
2. NFSサーバーを展開します(192.168.153.40)
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
yum install nfs-utils rpcbind -y
systemctl start rpcbind.service
systemctl start nfs.service
systemctl enable nfs.service
systemctl enable rpcbind.service
mkdir /opt/kgc /opt/benet
chmod 777 /opt/kgc /opt/benet
vim /etc/exports
/usr/share *(ro,sync)
/opt/ 192.168.80.0/24(rw,sync)
/opt/benet 192.168.80.0/24(rw,sync)
exportfs -rv #发布共享
showmount -e #查看 NFS 服务器端共享了哪些目录
3.ノードサーバーをデプロイします(192.168.153.20 192.168.153.30)
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
yum install httpd -y
systemctl start httpd.service
systemctl enable httpd.service
yum install nfs-utils rpcbind -y
showmount -e 192.168.153.40
systemctl start rpcbind.service
systemctl enable rpcbind.service
----192.168.153.20----
mount.nfs 192.168.153.40:/opt/wt /var/www/html
echo 'this is wt wed!' > /var/www/html/index.html
----192.168.153.30----
mount.nfs 192.168.153.40:/opt/dw /var/www/html
echo 'this is dw wed!' > /var/www/html/index.html
vim /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network
4.ロードスケジューラをデプロイします(内部ゲートウェイens33:192.168.153.10、外部ゲートウェイens37:12.0.0.1)
①ゲートウェイを追加
cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens36
#将ens33的信息复制到ens36
vim /etc/sysconfig/network-scripts/ifcfg-ens36
vim /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network
②ファイアウォールとセキュリティメカニズムを閉じる
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
③SNAT転送ルールを設定する
vim /etc/sysctl.conf
net.ipv4.ip_forward=1
或 echo '1' > /proc/sys/net/ipv4/ip_forward
sysctl -p
iptables -t nat -F
iptables -F
iptables -t nat -A POSTROUTING -s 192.168.153.0/24 -o ens36 -j SNAT --to-source 12.0.0.1
④LVSカーネルモジュールをロードする
modprobe ip_vs #加载 ip_vs模块
cat /proc/net/ip_vs #查看 ip_vs版本信息
⑤ipvsadm管理ツールをインストールする
yum -y install ipvsadm
⑥サービスを開始する前に、負荷分散戦略を保存する必要があります
ipvsadm-save > /etc/sysconfig/ipvsadm #保存负载分配策略
systemctl start ipvsadm.service
ipvsadm -C #清除原有策略
✓負荷分散戦略を構成します(NATモードはサーバー上でのみ構成する必要があり、ノードサーバーに特別な構成は必要ありません)
ipvsadm -A -t 12.0.0.1:80 -s rr
ipvsadm -a -t 12.0.0.1:80 -r 192.168.153.20:80 -m
ipvsadm -a -t 12.0.0.1:80 -r 192.168.153.30:80 -m
ipvsadm #启动策略
ipvsadm -ln #查看节点状态,Masq代表 NAT模式
ipvsadm-save > /etc/sysconfig/ipvsadm #保存策略
5、クライアントブラウザアクセステスト
IPが12.0.0.12のクライアントは、ブラウザーを使用してhttp://12.0.0.1/にアクセスし、ブラウザーを常に更新して負荷分散効果をテストします。更新間隔を長くする必要があります。