在當今各類互聯網應用中,隨着站點對硬件性能、響應速度、服務穩定性、數據可靠性等的要求愈來愈高,單臺服務器將難以承擔全部的訪問。除了使用價格昂貴的大型機、專用負載分流設備之外,企業還有另一種選擇來解決難題,就是構建集羣服務器——經過整合多臺相對廉價的普通服務器,以同一個地址對外提供相同的服務。html
負載均衡羣集:以提升應用系統的響應能力、儘量處理更多的訪問請求、減小延遲爲目標,得到高併發、高負載的總體性能。web
環境vim
四臺CentOS7虛擬機:瀏覽器
其中CentOS7-1做爲調度服務器,需配置雙網卡bash
IP地址: 192.168.234.1(內網)12.0.0.1(外網)服務器
CentOS7-二、CentOS7-3做爲web服務器(即節點服務器)網絡
CentOS7-2 IP地址:192.168.234.177併發
CentOS7-3 IP地址:192.168.234.175負載均衡
CentOS7-4做爲提供共享存儲功能的服務器ide
IP地址:192.168.234.176
配置
[root@bogon ~]# systemctl start nfs.service //開啓網絡文件共享服務 [root@bogon ~]# systemctl start rpcbind.service //開啓服務與對應端口綁定功能 注:rpcbind就是將不一樣服務與對應的端口進行綁定,以便支持機器間的互操做。 [root@bogon ~]# vim /etc/exports /usr/share *(ro,sync) /opt/zyc 192.168.234.0/24(rw,sync) /opt/hwj 192.168.234.0/24(rw,sync) 添加用來共享的文件夾,而且註明是容許192.168.234.0這個網段的用戶能讀取、寫入,而且進行同步
建立被共享的文件夾,而且給予滿權限
[root@bogon ~]# mkdir /opt/zyc [root@bogon ~]# mkdir /opt/hwj [root@bogon ~]# chmod 777 /opt/zyc /opt/hwj [root@bogon ~]# ls -l /opt 總用量 0 drwxrwxrwx. 2 root root 6 6月 20 15:28 hwj drwxr-xr-x. 2 root root 6 3月 26 2015 rh drwxrwxrwx. 2 root root 6 6月 20 15:28 zyc
發佈共享
[root@bogon ~]# exportfs -rv exporting 192.168.234.0/24:/opt/hwj exporting 192.168.234.0/24:/opt/zyc exporting *:/usr/share
用CentOS7-3掃描共享文件而且進行掛載
[root@localhost html]# showmount -e 192.168.234.176 //掃描共享出來的網絡文件夾 Export list for 192.168.234.176: /usr/share * /opt/hwj 192.168.234.0/24 /opt/zyc 192.168.234.0/24 [root@localhost html]# mount.nfs 192.168.234.176:/opt/zyc /var/www/html/ //將共享出的文件掛載至本地的站點目錄
寫入一個首頁在站點目錄下
[root@localhost html]# echo "this is zyc web" > index.html [root@localhost html]# ls index.html
而且這裏寫入的首頁內容是寫入在建立共享的服務器上的(即CentOS7-4),咱們能夠在CentOS7-4上查看到
[root@bogon opt]# cd zyc/ [root@bogon zyc]# ls index.html
注:另外一臺web服務器(即CentOS7-2)同上部署,掛載/opt/hwj便可
部署好以後,可使用本地的火狐瀏覽器自測一下,檢測是否能夠進行訪問
配置雙網卡如圖
安裝調度工具
[root@bogon ~]# yum install ipvsadm -y
開啓路由轉發功能
[root@bogon network-scripts]# vim /etc/sysctl.conf .... //省略 net.ipv4.ip_forward = 1 //末行添加 [root@bogon network-scripts]# sysctl -p net.ipv4.ip_forward = 1
作SNAT轉換
[root@bogon network-scripts]# iptables -t nat -A POSTROUTING -s 192.168.234.0/24 -o ens36 -j SNAT --to-source 12.0.0.1
此時先驗證下看SNAT地址轉換是否配置成功,使用web服務器ping外網的服務器
而後配置負載均衡策略
[root@bogon network-scripts]# modprobe ip_vs [root@bogon 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 [root@bogon network-scripts]# ipvsadm --save > /etc/sysconfig/ipvsadm [root@bogon network-scripts]# systemctl start ipvsadm.service
這裏使用一個腳原本進行配置
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.234.177:80 -m ipvsadm -a -t 12.0.0.1:80 -r 192.168.234.175:80 -m ipvsadm [root@bogon network-scripts]# source nat.sh
而後負載均衡的全部配置就完成了,接下來使用win7來訪問
而後使用CentOS7-1的本地進行訪問
就會看到調度服務器根據相同的IP地址不一樣的訪問節點提供的不一樣的網頁信息了