溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

地址轉(zhuǎn)換模式(LVS-NAT)

發(fā)布時間:2020-06-23 13:23:11 來源:網(wǎng)絡(luò) 閱讀:301 作者:wx5cc19525285e2 欄目:系統(tǒng)運維

LVS 基本配置詳解請參考博文:https://blog.51cto.com/14306186/2437030
案例環(huán)境:
地址轉(zhuǎn)換模式(LVS-NAT)
實現(xiàn)結(jié)果如下:

  • 使用NAT模式的群集技術(shù),LVS負載調(diào)度器是所有節(jié)點訪問Internet的網(wǎng)關(guān)服務(wù)器,其200.0.0.1也作為整個群集的VIP地址。
  • 使用輪詢(rr)的調(diào)度算法。
  • web1和web2先搭建web服務(wù),分別準(zhǔn)備不同的網(wǎng)頁文件,供客戶端訪問,以此來確定client訪問LVS服務(wù)器的200.0.0.1,可以訪問到兩臺wbe服務(wù)器。
  • 待client測試成功后,web1和web2便可以掛載NFS服務(wù)器提供的共享目錄,以此來為client提供相同的網(wǎng)頁文件。
    一、準(zhǔn)備:
    1、先把網(wǎng)絡(luò)調(diào)試至互通
    2、準(zhǔn)備系統(tǒng)鏡像和相關(guān)的軟件包,以便搭建httpd服務(wù),和安裝相關(guān)工具。這里為了方便,便直接使用系統(tǒng)映像中的安裝包來搭建httpd服務(wù)。
    3、配置防火墻策略放行流量(圖個方便,我這里直接停掉了防火墻)
    二、配置負載調(diào)度器:
    開啟路由轉(zhuǎn)發(fā)功能:
    [root@localhost /]# vim /etc/sysctl.conf 
    ...................       // 省略部分
    net.ipv4.ip_forward = 1
    [root@localhost /]# sysctl -p
    net.ipv4.ip_forward = 1

    配置負載分配策略:

    [root@localhost /]# modprobe ip_vs                   # 加載 ip_vs 模塊
    [root@localhost /]# 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

    ipvsadm 是在負載調(diào)度器上使用的 LVS 群集管理工具,通過調(diào)用 ip_vs 模塊來添加、刪除服務(wù)器節(jié)點,以及查看群集的運行狀態(tài)(需要手動安裝)。

    [root@localhost /]# yum -y install ipvsadm              # 安裝 ipvsadm
    [root@localhost /]# ipvsadm -v                       # 查看版本信息
    ipvsadm v1.27 2008/5/15 (compiled with popt and IPVS v1.2.1)
    [root@localhost /]# ipvsadm -C                 # 清除原有策略
    [root@localhost /]# ipvsadm -A -t 200.0.0.1:80 -s rr           
    [root@localhost /]# ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.10:80 -m -w 1
    [root@localhost /]# ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.20:80 -m -w 1
    [root@localhost /]# ipvsadm-save            # 保存策略
    -A -t localhost.localdomain:http -s rr
    -a -t localhost.localdomain:http -r 192.168.1.10:http -m -w 1
    -a -t localhost.localdomain:http -r 192.168.1.20:http -m -w 1
    [root@localhost /]# systemctl enable ipvsadm.service            # 設(shè)置為開機自啟

    配置節(jié)點服務(wù)器:
    web1 配置:

    [root@localhost /]# yum -y install httpd              # 安裝 http 服務(wù)
    [root@localhost /]# echo test1.com > /var/www/html/index.html            # 準(zhǔn)備測試網(wǎng)頁
    [root@localhost /]# systemctl start httpd               # 開啟服務(wù)
    [root@localhost /]# systemctl enable httpd           # 開機自啟

    web2 配置:

    [root@localhost /]# yum -y install httpd              # 安裝 http 服務(wù)
    [root@localhost /]# echo test2.com > /var/www/html/index.html             # 準(zhǔn)備測試網(wǎng)頁
    [root@localhost /]# systemctl start httpd
    [root@localhost /]# systemctl enable httpd

    當(dāng)然,在實際生產(chǎn)環(huán)境時,網(wǎng)頁內(nèi)容都是一樣的,這里為了區(qū)分驗證從實驗的成功與否,我寫了兩個內(nèi)容不同的測試文件。
    測試一下 LVS 是否在工作:
    地址轉(zhuǎn)換模式(LVS-NAT)
    刷新網(wǎng)頁:
    地址轉(zhuǎn)換模式(LVS-NAT)
    三、NFS 共享存儲服務(wù):
    搭建 NFS 共享使兩臺web服務(wù)器共同掛載同一個NFS服務(wù)器共享的目錄,以此來提供相同的網(wǎng)頁文件。
    安裝 nfs-utils、rpcbind 軟件包:

    [root@localhost /]# yum -y install nfs-utils rpcbind        # 安裝軟件包
    [root@localhost /]# systemctl enable nfs                    # 設(shè)置為開機自啟
    [root@localhost /]# systemctl enable rpcbind

    這兩軟件包我使用 rpm-qa 在Centos 7 上查看的時候是有的,具體這里本人也不是很清楚到底是不是安裝系統(tǒng)時自帶的,所以在做時還是敲一下這命令吧,以防萬一嘛,如有大佬知道的,還煩請告知小弟。(拜謝)
    設(shè)置共享目錄:

    [root@localhost /]# mkdir -p /opt/wwwroot              # 創(chuàng)建共享目錄
    [root@localhost /]# vim /etc/exports                       # 修改 NFS 主配置文件
    /opt/wwwroot    192.168.2.0/24(rw,sync,no_root_squash)
    --rw:允許讀寫,ro 為只讀
    --sync:表示同步寫入
    --no_root_squash:當(dāng)客戶機以 root 身份訪問時賦予本地的 root 權(quán)限(默認是 root_squash,將作為 nfsnobody 用戶降權(quán)對待)
    [root@localhost wwwroot]# echo nfs.test.com > index.html            # 準(zhǔn)備測試文件
    [root@localhost /]# systemctl restart rpcbind             # 重啟服務(wù)使配置生效
    [root@localhost /]# systemctl restart nfs
    [root@localhost /]# showmount -e                        # 查看本機發(fā)布的共享目錄
    Export list for localhost.localdomain:
    /opt/wwwroot 192.168.2.0/24

    在兩臺 web 主機上掛載 NFS 共享目錄,并配置為開機自動掛載

    [root@localhost /]# mount 192.168.2.1:/opt/wwwroot /var/www/html/            # 在兩臺 web 主機上都執(zhí)行此操作
    [root@localhost /]# df -hT /var/www/html/                  # 查看是否掛載成功
    Filesystem               Type  Size  Used Avail Use% Mounted on
    192.168.2.1:/opt/wwwroot nfs4   50G  4.0G   47G   8% /var/www/html
    [root@localhost /]# vim /etc/fstab                          # 設(shè)為開機自動掛載
    192.168.2.1:/opt/wwwroot        /var/www/html   nfs     defaults,_netdev 0 0

    測試驗證:
    地址轉(zhuǎn)換模式(LVS-NAT)
    .
    我們看到 NFS 上寫的測試文件已經(jīng)訪問成功,但無論怎么刷新都不會變,這就說明 LVS 負載均衡也就成功了。

當(dāng)LVS服務(wù)器重啟后,LVS規(guī)則將會丟失,這就用到了備份,需要注意的是,備份時的主機名和恢復(fù)時的主機名必須一致,并且需要注意網(wǎng)卡優(yōu)先的問題,否則在恢復(fù)后,會發(fā)現(xiàn)VIP(群集的虛擬IP)變成了LVS服務(wù)器的另一個IP地址

[root@localhost /]# ipvsadm-save > /etc/sysconfig/ipvsadm.bak            # 先備份一分
[root@localhost /]# ipvsadm -ln    #    查看
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
[root@localhost /]# ipvsadm-restore <  /etc/sysconfig/ipvsadm.bak            # 恢復(fù)策略
[root@localhost /]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  200.0.0.1:80 rr                                          # 注意這里是否還是原來的 VIP
  -> 192.168.1.10:80              Masq    1      0          0         
  -> 192.168.1.20:80              Masq    1      0          0         
向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI