LVS負載均衡

環境環境:

共五臺服務器

一臺load調度器(網關):兩塊網卡      外:12.0.0.1                       內:192.168.200.1

兩臺sever-web網站服務器:apache     web01:192.168.200.110     web02:192.168.200.120

一臺shave共享存儲                              192.168.200.130

一臺interent客戶端                              12.0.0.12    


注:在虛擬機環境下做實驗,由於服務器要處於僅主機模式下,

       所以需提前將每個服務器所需下載的安裝包配置好。


實驗步驟:

------------------------------------1、安裝所需環境包:-----------------------------------------
#shave:
yum install -y nfs-utils rpcbind
#server-web01
yum install -y httpd
#server-web02
yum install -y httpd
#load
yum install -y ipvsadm
----------------------------------2、五臺服務器都設置網卡爲僅主機模式,配置ens33-------------------------
#slave、web01、web02、load、win10
vim /etc/sysconfig/network-scripts/ifcfg-ens33 
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="39248c70-2e9e-4b84-8a0b-34e261c03851"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.200.130"
NETMASK="255.255.255.0"
GATEWAY="192.168.200.1"
systemctl restart network
systemctl stop firewalld.service 
setenforce 0
#load   ens36
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens36"
DEVICE="ens36"
ONBOOT="yes"
IPADDR="12.0.0.1"
NETMASK="255.255.255.0"
----------------------------------------3、編輯slave配置文件---------------------
systemctl start rpcbind
systemctl start nfs
vim /etc/exports
/usr/share *(ro,sync)
/opt/benet 192.168.200.0/24(rw,sync)
/opt/accp 192.168.200.0/24(rw,sync)
#共享目錄通過只讀,同步方式允許範圍*爲所有人
#爲節點服務器創建的兩個站點,benet和accp,目錄創建好之後通過lvm掛載過去,允許範圍200網段,可讀可寫
                 
#創建共享目錄:
mkdir benet accp
chmod 777 accp/ benet/
ls -l
------------------------------------------4、slave發佈共享---------------------------------------
exportfs -rv
exporting 192.168.200.0/24:/opt/accp
exporting 192.168.200.0/24:/opt/benet
exporting *:/usr/share
-----------------------------------------5、配置web01、web02--------------------------------
#web01
systemctl start httpd
netstat -natp | grep 80
ping 192.168.200.130
showmount -e 192.168.200.130
mount.nfs 192.168.200.130:/opt/accp /var/www/html
df -h
tmpfs                      183M   24K  183M   1% /run/user/0
192.168.200.130:/opt/accp   38G  3.5G   35G  10% /var/www/html
cd /var/www/html     //創建測試文件
echo "this is accp web" > index.html
#shave         //查看備份是否成功
cd /opt/accp
ls
#web02
//web02 爲benet
systemctl start httpd
showmount -e 192.168.200.130
mount.nfs 192.168.200.130:/opt/benet /var/www/html
cd /var/www/html     //創建測試文件
echo "this is benet web" > index.html
---------------------------------------6、配置load------------------------------------------
#添加一塊網卡
#兩塊網卡都配置靜態ip
#不用關閉防火牆
systemctl restart network
ifconfig
------------------------------#做路由轉發
vim /etc/sysctl.conf                      //末行插入
net.ipv4.ip_forward=1
sysctl -p                  //加載生效
iptables -t nat -F          //清空nat緩存
iptables -F                   //清空轉發表
iptables -t nat -A POSTROUTING -o ens36 -s 192.168.200.0/24 -j SNAT --to-source 12.0.0.1
#使用web01驗證
ping 12.0.0.12
---------------------#回到load,做調度
-------加載lvs內核
modprobe ip_vs
cat /proc/net/ip_vs
ipvsadm --save > /etc/sysconfig/ipvsadm                              //保存
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.200.110:80 -m
ipvsadm -a -t 12.0.0.1:80 -r 192.168.200.120:80 -m
ipvsadm
#清楚緩存
#添加虛擬服務器,指定服務器,指定算法
#通過服務器找到真實的節點服務器,-m 指定nat模式
source nat.sh            //啓動腳本
----------------------------------------測試實驗結果-------------------------------------------
win10 
網站訪問:12.0.0.1


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章