日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

在RHEL6.6环境下进行LVS-NAT实验(Vmware模式)

發布時間:2025/3/21 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在RHEL6.6环境下进行LVS-NAT实验(Vmware模式) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

結合這幾天做LVS-NAT結構模型的實驗。特總結如下

一、準備三臺RHEL6.6虛擬機

1臺Director

2臺RealServer

1、克隆兩臺RealServer

? ?在裝好RHEL6.6后,最好是將裝好了的RHEL6.6作為Director。其余兩臺RS1、RS2通過克隆的方式實現,只能在Director關機的情況下進行克隆。這里我選擇的是完整克隆。也可以通過“現有快照”克隆

右擊Director——>管理——>克隆



RS2克隆方法同RS1克隆方法一樣
2、更新網卡設備名與IP規劃

(1)、更新RS1、RS2網卡設備名

因為克隆后的虛擬機與原虛擬機比較改變了網絡設備的名,例如,克隆后的網卡為eth1,而原虛擬機則為eth0。

[root@gnnt rules.d]# ifconfig

eth1 ? ? ?Link encap:Ethernet ?HWaddr 00:0C:29:6E:CF:B2 ?

? ? ? ? ? inet addr:172.16.0.9 ?Bcast:172.16.255.255 ?Mask:255.255.0.0

? ? ? ? ? ............................................................

[root@gnnt ~]# cd /etc/udev/rules.d/

[root@gnnt rules.d]# vim 70-persistent-net.rules?

# PCI device 0x8086:0x100f (e1000) (custom name provided by external tool)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:7f:d5:6a", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"


# PCI device 0x8086:0x100f (e1000) (custom name provided by external tool)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:6e:cf:b2", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

可看見有兩個網卡的配置信息,需要刪除掉關于eth0 的信息。然后修改eth1的網卡名稱為eth0。

(2)、IP規劃

Director:eth0(橋接模式,可瀏覽外網) ? ? IP地址:172.16.0.9 ? ?子網掩碼:255.255.0.0?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??默認網關:172.16.1.1 ??DNS:202.106.0.20

? ? ? ? ?eth1(僅主機模式,不可瀏覽外網) IP地址:192.168.1.3 ? ?子網掩碼:255.255.255.0


RS1:eth0(僅主機模式) ? ? ? ? ? ? ? ? ? ?IP地址:192.168.1.1 ? ?子網掩碼:255.255.255.0

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??默認網關:192.168.1.3


RS2:eth0(僅主機模式) ? ? ? ? ? ? ? ? ? ?IP地址:192.168.1.2 ? ?子網掩碼:255.255.255.0

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??默認網關:192.168.1.3

具體實現方法可參照:

http://1343138116.blog.51cto.com/6124664/1680268? Vmware虛擬機三種網絡模式用途的第3節ifcfg-ethX的配置

配置完成后執行如下操作

[root@gnnt /]#service network restart ?#重啟網絡服務,使配置生效。可以省略,直接進行下一步

[root@gnnt /]#reboot ? #重啟系統,讓系統重新讀取網卡的設備名稱

[root@gnnt /]#ifconfig #查看網卡的設備名是否更新

? ??IP地址規劃好后測試連通效果。Director:eth0網卡能否PING通互聯網,以ping www.baidu.com為例;?Director:eth1能否PING通RS1:eth0、RS2:eth0;?RS1:eth0、RS2:eth0能否互相PING通。

3、通過yum方式安裝ipvsadm

具體實現方法可參照:

http://1343138116.blog.51cto.com/6124664/1681861?RedHat 6.6自建yum倉庫

? ?當yum倉庫建立完成后通過yum install ipvsadm命令方式安裝

二、LVS-NAT實現方法

拓撲圖

注:

1、這里的Client我使用的是物理機

2、添加Router只是為了能夠看出LVS-NAT的整個流程,在這里沒有實際意義

3、RS1、RS2的網關地址是DIP:192.168.1.3

4、RS可以使用Linux或Windows,如果要調內核參數則只能用Linux

1、RS1設置

[root@gnnt ~]# rpm -qa|grep httpd ? #查看是否安裝了httpd服務,若沒有安裝則需要安裝以下文件

httpd-2.2.15-39.el6.x86_64

httpd-tools-2.2.15-39.el6.x86_64

[root@gnnt ~]#service httpd status #查看httpd服務是否啟動,可以看出httpd服務是停止的

httpd is stopped

[root@gnnt ~]# service httpd start #啟動httpd服務

Starting httpd: httpd: apr_sockaddr_info_get() failed for gnnt

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ ?OK ?]

#這里的意思是需要一個DNS服務器,可以不用理會,本次實驗不會用到bind服務

[root@gnnt ~]#echo "welcome to RS1.gnnt.com" > /var/www/html/index.html #編輯index.html文件

[root@gnnt ~]#setenforce 0 ? #Permissive=0,代表僅記錄安全警告但不阻止可疑行為

setenforce是SElinux的知識,請參閱

http://os.51cto.com/art/201105/265956.htm? SELinux入門:了解和配置SELinux

[root@gnnt ~]#service iptables stop ? ?#一定要將防火墻關閉,否則不能“curl RS2”的內容

[root@gnnt ~]#curl?http://localhost? ? #訪問本機的index.html文件

welcome to RS1.gnnt.com

[root@gnnt ~]#curl?http://192.168.1.2??#訪問RS2的index.html文件

welcome to RS2.gnnt.com

2、RS2設置

[root@gnnt ~]# rpm -qa|grep httpd ?#查看是否安裝了httpd服務,若沒有安裝則需要安裝以下文件

httpd-2.2.15-39.el6.x86_64

httpd-tools-2.2.15-39.el6.x86_64

[root@gnnt ~]#service httpd status #查看httpd服務是否啟動,可以看出httpd服務是停止的

httpd is stopped

[root@gnnt ~]# service httpd start #啟動httpd服務

Starting httpd: httpd: apr_sockaddr_info_get() failed for gnnt

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[ ?OK ?]

#這里的意思是需要一個DNS服務器,可以不用理會,本次實驗不會用到bind服務

[root@gnnt ~]#echo "welcome to RS2.gnnt.com" > /var/www/html/index.html #編輯index.html文件

[root@gnnt ~]#setenforce 0 ? ???#Permissive=0,代表僅記錄安全警告但不阻止可疑行為

[root@gnnt ~]#service iptables stop ?? ?#一定要將防火墻關閉,否則不能“curl RS1”的內容

[root@gnnt ~]#curl http://localhost? ?? #訪問本機的index.html文件

welcome to RS2.gnnt.com

[root@gnnt ~]#curl?http://192.168.1.1? ?#訪問RS1的index.html文件

welcome to RS1.gnnt.com

注:也要將Director的防火墻關閉

3、Director設置

注:文檔最后有對ipvsadm命令詳解的補充,想仔細研究的同學也可以根據命令詳解設置不同的調度方式

(1)、使用rr調度算法進行負載均衡

[root@gnnt ~]#ipvsadm -A -t 172.16.0.9:80 -s rr

[root@gnnt ~]#ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.8 -m

[root@gnnt ~]#ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.9 -m

#添加一個IP地址172.16.0.9,端口為80的集群服務器

#添加一個IP地址192.168.1.1,端口為80的集群RS服務

#添加一個IP地址192.168.1.2,端口為80的集群RS服務

注:測試前一定要在Director中開啟IP轉發,重啟服務或系統后IP轉發會失效。測試步驟在第三節

[root@gnnt ~]# cat /proc/sys/net/ipv4/ip_forward

0

[root@gnnt ~]# echo 1 ?> /proc/sys/net/ipv4/ip_forward?

[root@gnnt ~]# cat /proc/sys/net/ipv4/ip_forward

1

[root@gnnt ~]#

(2)、查看客戶端連接數

[root@gnnt ~]# ipvsadm -L -c

IPVS connection entries

pro expire state ? ? ? source ? ? ? ? ? ? virtual ? ? ? ? ? ?destination


TCP 01:58 ?TIME_WAIT ? 172.16.0.255:53948 172.16.0.9:http ? ?192.168.1.1:http

TCP 01:57 ?TIME_WAIT ? 172.16.0.255:53944 172.16.0.9:http ? ?192.168.1.1:http

TCP 01:54 ?TIME_WAIT ? 172.16.0.255:53937 172.16.0.9:http ? ?192.168.1.1:http

TCP 01:55 ?TIME_WAIT ? 172.16.0.255:53943 172.16.0.9:http ? ?192.168.1.1:http

.............................................................................

(3)、查看統計信息

[root@gnnt ~]# ipvsadm -L --stats

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port ? ? ? ? ? ? ? Conns ? InPkts ?OutPkts ?InBytes OutBytes

? -> RemoteAddress:Port

TCP ?172.16.0.9:http ? ? ? ? ? ? ? ? ?4507 ? ?22120 ? ?21685 ?2037284 ?2504098

? -> 192.168.1.1:http ? ? ? ? ? ? ? ? 2596 ? ?13021 ? ?12926 ?1185170 ?1491242

? -> 192.168.1.2:http ? ? ? ? ? ? ? ? 1911 ? ? 9099 ? ? 8759 ? 852114 ?1012856

(4)、查看速率信息

[root@gnnt ~]# ipvsadm -L --rate

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port ? ? ? ? ? ? ? ? CPS ? ?InPPS ? OutPPS ? ?InBPS ? OutBPS

? -> RemoteAddress:Port

TCP ?172.16.0.9:http ? ? ? ? ? ? ? ? ? ? 4 ? ? ? 19 ? ? ? 18 ? ? 2208 ? ? 1953

? -> 192.168.1.1:http ? ? ? ? ? ? ? ? ? ?3 ? ? ? 14 ? ? ? 14 ? ? 1629 ? ? 1379

? -> 192.168.1.2:http ? ? ? ? ? ? ? ? ? ?1 ? ? ? ?5 ? ? ? ?5 ? ? ?579 ? ? ?573

(5)、查看超時信息

[root@gnnt ~]# ipvsadm -L --timeout

Timeout (tcp tcpfin udp): 900 120 300

(6)、清除ipvsadm規則

[root@gnnt ~]# ipvsadm -C

(7)、保存ipvsadm,以便重啟以后規則也能生效

推薦使用

[root@gnnt ~]# service ipvsadm save ??#直接保存ipvsadm規則

ipvsadm: Saving IPVS table to /etc/sysconfig/ipvsadm: ? ? ?[ ?OK ?]



[root@gnnt ~]#ipvsadm -S > /etc/sysconfig/ipvsadm.com ? #將ipvsadm規則保存指定的文件中

[root@gnnt ~]#ipvsadm -R < /etc/sysconfig/ipvsadm.com ??#從指定的文件中載入ipvsadm規則

三、通過物理機進行測試

通過按F5按鈕刷新,查看測試效果

? ? ? ? ? ?





? ? ? ? ? ?圖1

? ? ? ? ? ?圖2

?


補充:ipvsadm命令詳解

默認調度方法:wlc

ipvsadm:

管理集群服務

添加:-A -t|u|f service-address [-s scheduler]

-t: TCP協議的集群?

-u: UDP協議的集群

service-address: ? ? IP:PORT

-f: FWM: 防火墻標記?

service-address: Mark Number

# ipvsadm -A -t 172.16.0.9:80 -s rr


修改:-E


刪除:-D -t|u|f service-address



管理集群服務中的RS

添加:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight]

-t|u|f service-address:事先定義好的某集群服務

-r server-address: 某RS的地址,在NAT模型中,可使用IP:PORT實現端口映射;

[-g|i|m]: LVS類型

-g: DR

-i: TUN

-m: NAT

[-w weight]: 定義服務器權重

# ipvsadm -a -t 172.16.0.9:80 -r 192.168.10.1 -m?

# ipvsadm -a -t 172.16.0.9:80 -r 192.168.10.2 -m


修改:-e


刪除:-d -t|u|f service-address -r server-address


查看

-L|l

-n: 數字格式顯示主機地址和端口

--stats:統計數據

--rate: 速率

--timeout: 顯示tcp、tcpfin和udp的會話超時時長

-c: 顯示當前的ipvs連接狀況


刪除所有集群服務

-C:清空ipvs規則


保存規則

-S?

# ipvsadm -S > /path/to/somefile

載入此前的規則:

-R

# ipvsadm -R < /path/from/somefile




至此,本文檔已經結束,文檔中難免有不盡人意之處,希望各位能夠給出寶貴的建議,謝謝!



紫禁之巔

2015年8月6日 15:44

轉載于:https://blog.51cto.com/zjzd86/1682275

總結

以上是生活随笔為你收集整理的在RHEL6.6环境下进行LVS-NAT实验(Vmware模式)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。