DR(直連路由)
直連路由是一個半開放的服務器網路,在客戶機發送apr請求之后,由調度器進行回應,然后通過分配相應的節點服務器來進行回應,
由于不需要像NAT那樣通過調度器來進行公網地址發出,所以節點服務器都是可以進行上網鏈接的,
步驟:
1)需要材料:一臺服務器用作調度器,兩臺服務器用作節點服務器,還有一臺用作NFS,其中,調度器網卡配置為NAT模式的外網可以上網,兩臺節點服務器為兩張網卡服務器,一張用作外網,一張用作內網,nfs的網卡配置為僅主機模式的私網ip地址,不能訪問外網,專門用作nfs檔案共享用,
增設內網網卡的目的是為了提供有效安全的資料包存盤,
2)調度器操作,創建一個vip虛擬地址,cd /etc/sysconfig/network-scripts/進入到網卡組態檔,復制網卡ens33并且命名為ens33:0,這是為了創建vip虛擬地址,
3)進入ens33:0進行修改ip地址(需要同網段并且不與其他服務器ip地址沖突):

并且洗掉子網掩碼和dns
4)開啟網卡ens33:0,然后就可以看到ens33中出現了一個新的網路ip地址:

5)匯入模塊(modprobe ip_vs)并且下載ipvsadm命令
6)添加vip地址作為調度器地址,并且加入節點服務器的真實ip地址:
ipvsadm -A -t 192.168.53.254:80 -s rr
ipvsadm -a -t 192.168.53.254:80 -r 192.168.53.50:80 -g -w 1
ipvsadm -a -t 192.168.53.254:80 -r 192.168.53.150:80 -g -w 1
此刻可進行ipvsadm -ln查看是否添加成功:
[root@localhost network-scripts]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.53.254:80 rr
-> 192.168.53.50:80 Route 1 0 0
-> 192.168.53.150:80 Route 1 0 0
7)修改**/etc/sysctl.conf**檔案,在尾部追加命令:
net.ipv4.ip_forward = 1
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
并輸入sysctl -p來進行驗證
8)永久保存該設定,使用ipvsadm命令:
ipvsadm-save /etc/sysconfig/ipvsadm
重啟并設定開機自啟動:
systemctl enable ipvsadm
systemctl restart ipvsadm
如果此時再次查看有可能會出現bug,導致原本是虛擬埠會被篡改成本機地址127.0.0.,這個時候就需要將該地址進行洗掉并且重新撰寫串列(ipvsadm -D -t 127.0.0.)
此刻,調度器已經調配好
9)節點服務器要進行的操作,更改虛擬網卡地址,并且重啟網路服務和網路
(systemctl stop NetworkManage&
systemctl start NetworkManage&
systemctl restart network)
10)進入/etc/sysctl.conf檔案中在后面追加如下欄位:
net.ipv4.conf.lo.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
net.ipv4.conf.lo.all_ignore=1
net.ipv4.conf.lo.all_announce=2
此項操作是為了使客戶訪問以及接收到的資料包都是通過調度器來實作收發而非節點服務器,輸入sysctl -p來查看是否輸入成功,
11)**cd /etc/sysconfig/network-scripts/**進入網卡組態檔,將環回介面檔案給復制下來并且命名為ifcfg-lo:0:cp ifcfg-lo ifcfg-lo:0,并且進行修改:

具體操作為將DEVICE的名字改為lo:0,IPADDR改為調度器中的vip虛擬地址,子網掩碼為32位即都是255,并且將除了如圖中的其他引數都給洗掉,
12)開啟lo:0,并且重啟網路服務以及網卡
ifup lo:0
systemctl stop NetworkManager
systemctl start NetworkManager
systemctl restart network
過后可以看到lo換回網路出現了新添加的ip地址

13)添加路由器,表明該服務器需要先去到哪里進行中轉
route add -host 192.168.53.254 dev lo:0,而后可以查看路由,會看到出現了一個環回介面:
route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.53.2 0.0.0.0 UG 100 0 0 ens33
192.168.53.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
192.168.53.254 0.0.0.0 255.255.255.255 UH 0 0 0 lo
192.168.174.0 0.0.0.0 255.255.255.0 U 101 0 0 ens37
14)驗證,首先兩臺服務器都需要搭建好相應的服務(如APACHE,tomcat,nginx),另外下載好nfs和rpcbind已做備用
yum -y install rpcbind nfs-utils
其次在服務部署機中需要有該專案(apache,tomcat,nginx),注意,apache可以自由跳轉,但是如果使nginx需要進入組態檔中輸入權重設定來進行跳轉:
upstream proxy_test {
server 192.168.53.50:80 weight=1;
server 192.168.53.150:80 weight=1;
}
server {
listen 80;
server_name localhost;
在兩臺服務器節點中的nginx部署項里,分別鍵入不同的網頁部署進行測驗,這么做的主要目的是為了查看瀏覽訪問是否可以輪詢來進行訪問:


可以查看調度器的ipvsadm配置來看看訪問情況:

15)最后配置nfs靜態儲存點,準備一臺只有私網網卡的IP地址的服務機,下載
yum -y install rpcbind nfs-utils
并且將自身的某一檔案進行共享并且寫入/etc/exports中

重啟rpcbind和nfs.service服務,并輸入showmount -e驗證是否成功登記,而后在節點服務器進行掛載,可以將網頁部署檔案與該掛載在一起,就可以進行部署,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/271918.html
標籤:其他
上一篇:Shell腳本重啟多個SpringBoot應用 & IGNITE服務
下一篇:Linux學習筆記(二)
