2018-07-20筆記(keeplived高用,lvs負載均衡)

18.1 集羣介紹

集羣(cluster)就是一組計算機,它們作爲一個整體向用戶提供一組網絡資源。這些單個的計算機系統就是集羣的節點(node)。一個理想的集羣是,用戶從來不會意識到集羣系統底層的節點,在他們看來,集羣是一個系統,而非多個計算機系統。並且集羣系統的管理員可以隨意增加和刪改集羣系統的節點
集羣根據功能劃分爲兩大類:高可用和負載均衡。
高可用集羣

高可用集羣通常爲2臺服務器,一臺工作,另一臺作爲冗餘,當提供服務的機器宕機時,冗餘將接替繼續提供服務。
實現高可用的開源軟件有:heartbeat、Keepalived,其中heartbeat已無人維護,所以今後使用Keepalived來搭建高可用集羣。
負載均衡集羣

負載均衡集羣,需要有1臺服務器作爲分發器,它負責把用戶的請求分發給後端的服務器處理,在這個集羣裏,除了分發器外就是給用戶提供服務的服務器了,這些服務器數量至少爲2臺,所以負載均衡集羣至少要3臺服務器。
實現負載均衡的開源軟件有:LVS、Keepalived、haproxy、nginx;商業軟件有:F5、Netscaler。

18.2 keepalived介紹

1.keepalived通過VRRP協議來實現高可用

2.在VRRP協議裏,將多臺功能相同的集齊組成一個小組,這個小組會又一個master角色和backup角色(N>=1)這個角色可以多個。

3.master會通過組播的形式向各個backup發現VRRP協議的數據包,當backup收不到master發來的VPPR數據包時,就會認爲master宕機了,這時backup就會啓動服務來替換新的master,如果有多臺backup就要看優先級來決定。

4.keepalived要有三個模塊:

core :核心,負責主進程的啓動、維護以及全局配置文件的加載和解析

check:負責模塊的健康檢查

vrrp:提供VPPR協議

18.3/18.4/18.5 用keepalived配置高可用集羣

這裏用keppalived實現nginx服務的高可用,因爲nginx在生產環境中,很多企業把nginx做一個負載均衡器 ,假設nginx一旦掛掉,那麼後端所有的web,即使說是正常的,那也無法訪問到
1、首先準備兩臺機器,都安裝keepalived
master:192.168.66.128
backup:192.168.66.129

[root@master ~]# yum install -y keepalived
[root@backup ~]# yum install -y keepalived

2、兩臺機分別安裝nginx,可以源碼安裝,也可以直接yum安裝,安裝nginx需要epel擴展源

yum install -y epel-release
yum install -y nginx
[root@master ~]# nginx -v
nginx version: nginx/1.10.2
[root@backup ~]# nginx -v
nginx version: nginx/1.10.2

3、master192.168.66.128配置
(1)修改keppalived默認配置文件/etc/keepalived/keepalived.conf

[root@master ~]# > /etc/keepalived/keepalived.conf            #清空默認配置文件
[root@master ~]# vi /etc/keepalived/keepalived.conf           #添加下面的內容,記得把註釋去掉
global_defs {                            //global_defs 全局配置標識
   notification_email {                  //notification_email用於設置報警郵件地址
   [email protected]                            //可以設置多個,每行一個
   }
   notification_email_from [email protected]    //設置郵件發送地址  
   smtp_server 127.0.0.1                   //設置郵件的smtp server地址,這裏爲本機
   smtp_connect_timeout 30                 //設置連接smtp sever超時時間
   router_id LVS_DEVEL
}
#######################  check模塊配置  ######################
vrrp_script chk_nginx {               
    script "/usr/local/sbin/check_ng.sh"   //檢查服務是否正常,通過寫腳本實現,腳本檢查服務健康狀態
    interval 3                             //檢查的時間間斷是3秒
}
#######################  vrrp模塊配置  ######################
vrrp_instance VI_1 {                      //VRRP配置標識 VI_1是實例名稱 
    state MASTER                          //定義master相關
    interface eth0                       //網卡名稱,這裏我的爲eth0,通過vrrp協議去通信、去發廣播
    virtual_router_id 51                  //定義路由器ID ,配置的時候和從機器一致
    priority 100                          //權重,主角色和從角色的權重是不同的
    advert_int 1                          //設定MASTER與BACKUP主機質檢同步檢查的時間間隔,單位爲秒
    authentication {                      //認證相關信息
        auth_type PASS                    //這裏認證的類型是PASS
        auth_pass 123456                  //密碼的形式是一個字符串
    }
    virtual_ipaddress {                   //設置虛擬IP地址 (VIP),又叫做漂移IP地址
        192.168.66.100                    //更改爲192.168.66.100
    }
    track_script {                        //加載腳本 
        chk_nginx            
    }
}

注意:需要把註釋去掉後保存退出,虛擬IP地址是一個共有地址,當主機宕機後,備機Nginx啓動,如果備機Nginx解析地址依然爲源主機IP,則依舊無法正常訪問(源主機宕機,IP地址失效)。爲解決上述問題,主機和備機都解析到一個公共IP地址,在主機宕機後備機Nginx服務啓動即可解析到正常可以訪問的IP地址
(2)編輯上面keppalived配置中定義的檢查nginx的腳本,路徑也是在上面定義的

[root@master ~]# vi /usr/local/sbin/check_ng.sh    #添加下面的內容
#!/bin/bash
#時間變量,用於記錄日誌
d=`date --date today +%Y%m%d_%H:%M:%S`
#計算nginx進程數量
n=`ps -C nginx --no-heading|wc -l`
#如果進程爲0,則啓動nginx,並且再次檢測nginx進程數量,
#如果還爲0,說明nginx無法啓動,此時需要關閉keepalived
if [ $n -eq "0" ]; then
        /etc/init.d/nginx start
        n2=`ps -C nginx --no-heading|wc -l`
        if [ $n2 -eq "0"  ]; then
                echo "$d nginx down,keepalived will stop" >> /var/log/check_ng.log
                systemctl stop keepalived
        fi
fi

如果不停止keepalived服務,則容易使服務器發生腦裂,在高可用(HA)系統中,當聯繫2個節點的“心跳線”斷開時,本來爲一整體、動作協調的HA系統,就分裂成爲2個獨立的個體。由於相互失去了聯繫,都以爲是對方出了故障。兩個節點上的HA軟件像“裂腦人”一樣,爭搶“共享資源”、爭起“應用服務”,就會發生嚴重後果——或者共享資源被瓜分、2邊“服務”都起不來了;或者2邊“服務”都起來了,但同時讀寫“共享存儲”,導致數據損壞。

如何判斷腦裂?

分別在兩臺機查看當前服務器是否擁有虛擬IP,如果兩臺服務器都擁有,則說明發生了腦裂,證明目前雙機通信出現問題,產生此問題的原有在於 兩臺服務器都探測不到組內其他服務器的狀態(心跳請求無法正常響應),私自判定另一臺服務器掛起,則搶佔虛擬IP,腦裂的出現是不被允許的,解決此問題的方法爲檢查防火牆設置(關閉防火牆)或者使用串口通信。
注:需要注意腳本中nginx的啓動方式,如果是自定義腳本啓動的用上面的方式,yum 安裝使用service 或者systemctl啓動
keepalived的停止方式,因爲是centos7所以用 systemctl stop
(3)給腳本加上執行權限

[root@master ~]# chmod 755 /usr/local/sbin/check_ng.sh

(4)啓動keepalived
主機和備機啓動keepalived服務前都要先檢查selinux以及防火牆是否關閉,防止兩邊檢測不到對方的狀態

[root@master ~]# systemctl start keepalived
[root@master ~]# ps aux |grep keepalived
root      3386  0.0  0.1  17224  1100 ?        Ss   16:41   0:00 /usr/sbin/keepalived -D
root      3388  0.0  0.2  17308  2660 ?        S    16:41   0:00 /usr/sbin/keepalived -D
root      3389  0.1  0.1  17308  1920 ?        S    16:41   0:00 /usr/sbin/keepalived -D
root      3678  0.0  0.0   6044   812 pts/0    S+   16:43   0:00 grep keepalived

(5)測試監控腳本可用性
因爲在keepalived配置中定義了nginx檢查腳本,並加載,所以啓動keepalived會去檢查nginx的進程,沒有會自動啓動nginx,這裏已經把nginx也帶起來,說明腳本正常

[root@master ~]# ps aux |grep nginx
root      3417  0.0  0.1  15776  1560 ?        Ss   16:41   0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx     3420  0.0  0.2  15940  2388 ?        S    16:41   0:00 nginx: worker process                   
root      4366  0.0  0.0   6044   808 pts/0    S+   16:49   0:00 grep nginx

(6)keepalived相關的日誌會記錄在/var/log/messages下,可以看到vip已經添加

[root@master ~]# cat /var/log/messages
Jul 16 16:41:41 localhost Keepalived_healthcheckers[3388]: Opening file '/etc/keepalived/keepalived.conf'.
Jul 16 16:41:41 localhost Keepalived_healthcheckers[3388]: Configuration is using : 6710 Bytes
Jul 16 16:41:41 localhost Keepalived_healthcheckers[3388]: Using LinkWatch kernel netlink reflector...
Jul 16 16:41:41 localhost Keepalived_healthcheckers[3388]: Netlink reflector reports IP 192.168.66.100 added
Jul 16 16:41:45 localhost Keepalived_vrrp[3389]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 192.168.66.100

(7)查看vip地址

[root@master ~]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:95:62:81 brd ff:ff:ff:ff:ff:ff
    inet 192.168.66.128/24 brd 192.168.66.255 scope global eth0
    inet 192.168.66.100/32 scope global eth0
    inet6 fe80::20c:29ff:fe95:6281/64 scope link 
       valid_lft forever preferred_lft forever

可以看到eth0已經有兩個地址192.168.66.128和192.168.66.100
(8)檢查防火牆

[root@master ~]# iptables -nvL
Chain INPUT (policy ACCEPT 35856 packets, 38M bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 13895 packets, 2078K bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@master ~]# getenforce 
Disabled

4、backup192.168.66.129配置
(1)修改keppalived默認配置文件/etc/keepalived/keepalived.conf

[root@backup ~]# > /etc/keepalived/keepalived.conf 
[root@backup ~]# vi /etc/keepalived/keepalived.conf                    #添加下面的內容
global_defs {
   notification_email {
     [email protected]                          
   }                                              
   notification_email_from luo.com
   smtp_server 127.0.0.1
   smtp_connect_timeout 30                         
   router_id LVS_DEVEL                             
}
vrrp_script chk_nginx {                           
    script "/usr/local/sbin/check_ng.sh"       
    interval 3                                  
}
vrrp_instance VI_1 {                               
    state BACKUP                                      #這裏需要注意設置成大寫BACKUP                                
    interface eth0                                        #注意網卡的名字
    virtual_router_id 51                              #設置成和MASTER相同的,纔會認爲是一組
    priority 90                                             #權重設置的比MASTER低                                 
    advert_int 1                                   
    authentication {                           
        auth_type PASS                        
        auth_pass 123456                       
    }
    virtual_ipaddress {                        
        192.168.66.100
    }
    track_script {                              
        chk_nginx                                 
    }
}

把註釋去掉後保存退出,注意註釋的內容
說明: 如果是多臺服務器,權重決定了master宕機後,backup接管master角色的順序
(2)編輯上面keppalived配置中定義的檢查nginx的腳本,路徑也是在上面定義的

[root@backup ~]# vi /usr/local/sbin/check_ng.sh    #添加下面的內容
#!/bin/bash
#時間變量,用於記錄日誌
d=`date --date today +%Y%m%d_%H:%M:%S`
#計算nginx進程數量
n=`ps -C nginx --no-heading|wc -l`
#如果進程爲0,則啓動nginx,並且再次檢測nginx進程數量,
#如果還爲0,說明nginx無法啓動,此時需要關閉keepalived
if [ $n -eq "0" ]; then
        /etc/init.d/nginx start
        n2=`ps -C nginx --no-heading|wc -l`
        if [ $n2 -eq "0"  ]; then
                echo "$d nginx down,keepalived will stop" >> /var/log/check_ng.log
                systemctl stop keepalived
        fi
fi

(3)給腳本加上執行權限

[root@backup ~]# chmod 755 /usr/local/sbin/check_ng.sh

(4)檢查selinux和防火牆相關的配置

[root@backup ~]# iptables -nvL
Chain INPUT (policy ACCEPT 35856 packets, 38M bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 13895 packets, 2078K bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@master ~]# getenforce 
Disabled

(5)啓動keepalived,並查看

[root@backup ~]# systemctl start keepalived
[root@backup ~]# ps aux |grep keepalived
root      3697  0.0  0.1  17532  1084 ?        Ss   01:23   0:00 /usr/sbin/keepalived -D
root      3699  0.0  0.2  17616  2628 ?        S    01:23   0:00 /usr/sbin/keepalived -D
root      3700  0.0  0.1  17616  1884 ?        S    01:23   0:00 /usr/sbin/keepalived -D
root      3705  0.0  0.0   5980   776 pts/2    S+   01:26   0:00 grep keepalived

(6)查看腳本是否有效,看nginx有沒自動啓動

[root@backup ~]# ps aux |grep nginx
root      3746  0.0  0.1  16072  1548 ?        Ss   01:27   0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx     3749  0.0  0.1  16236  1972 ?        S    01:27   0:00 nginx: worker process                   
root      4241  0.0  0.0   5980   776 pts/2    S+   01:31   0:00 grep nginx

測試
(1)在master和backup上創建一個nginx默認索引頁,用來區分主和從的nginx服務

[root@master ~]# vi /usr/share/nginx/html/index.html
[root@master ~]# cat /usr/share/nginx/html/index.html 
Master Master
[root@backup ~]# vi /usr/share/nginx/html/index.html 
[root@backup ~]# cat /usr/share/nginx/html/index.html 
backup backup

(2)用瀏覽器訪問VIP
2018-07-20筆記(keeplived高用,lvs負載均衡)
因爲VIP是在主上,所以訪問到主的nginx默認索引頁
(3)模擬主宕機,把主上的keepalived服務停掉,再訪問VIP,看有沒漂移到backup上

[root@master ~]# systemctl stop keepalived

2018-07-20筆記(keeplived高用,lvs負載均衡)
可以看到訪問是backup的nginx的默認索引頁,說明VIP已經漂移到backup上
(4)模擬主已經恢復好,把主上的keepalived服務啓動,看vip會不會自動漂移到master上

[root@master ~]# systemctl start keepalived

訪問vip
2018-07-20筆記(keeplived高用,lvs負載均衡)
說明測試是成功的
注意事項:
1、keepalived配置文件中的角色master和backup,網卡名字,權重和virtual_router_id
2、vip要用ip add命令查看
3、注意selinux和防火牆設置
4、keepalived服務日誌記錄在/var/log/message上

18.6 負載均衡集羣介紹

主流開源軟件LVS、keepalived、haproxy、nginx等
①其中LVS屬於4層(網絡OSI 7層模型),nginx屬於7層,haproxy既可以認爲是4層,也可以當做7層使用
②keepalived的負載均衡功能其實就是lvs,lvs是keepalived內置的
③lvs這種4層的負載均衡是可以分發TCP協議,web服務是80端口,除了分發80端口,還有其他的端口通信的,比如MySQL的負載均衡,就可以用LVS實現,而nginx僅僅支持http,https,mail,haproxy;haproxy也支持MySQL這種TCP負載均衡的
④7層有限制,不過有些更高級的功能,nginx可以通過站點目錄,去區分網站服務器之前,LVS4層的就不支持
⑤相比較來說,LVS這種4層的更穩定,能承受更多的請求,承載的併發量更高,而nginx這種7層的更加靈活,能實現更多的個性化需求

18.7 LVS介紹

•LVS是由國人章文嵩開發

• 流行度不亞於apache的httpd,基於TCP/IP做的路由和轉發,穩定性和效率很高

• LVS最新版本基於Linux內核2.6,有好多年不更新了

• LVS有三種常見的模式:NAT、DR、IP Tunnel

• LVS架構中有一個核心角色叫做分發器(Load balance),它用來分發用戶的請求,還有諸多處理用戶請求的服務器(Real Server,簡稱rs)
2018-07-20筆記(keeplived高用,lvs負載均衡)
• 這種模式藉助iptables的nat表來實現

• 用戶的請求到分發器後,通過預設的iptables規則,把請求的數據包轉發到後端的rs上去

• rs需要設定網關爲分發器的內網ip

• 用戶請求的數據包和返回給用戶的數據包全部經過分發器,所以分發器成爲瓶頸

• 在nat模式中,只需要分發器有公網ip即可,所以比較節省公網ip資源

LVS NAT模式的特點

1、LVS NAT模式是通過一個分發器(Load Balancer);把用戶的請求,分發給後端的Real Server ,Real Server這些服務器接收到請求以後,處理好用戶請求以後,就重新丟回給分發器;最後分發器再返回給用戶;

2、LVS NAT模式的弊端是分發器會成爲整個網絡的瓶頸,當訪問量、請求量、反饋量大的時候,分發器的壓力會很大

3、LVS NAT模式的規模,一般最多支持10來臺服務器,超過10臺的話就會有力不從心;

4、LVS NAT模式這個結構,只需要有一個公網IP,其他real server服務器全部在內網就可以實現。可以節省很多的公網IP資源
2018-07-20筆記(keeplived高用,lvs負載均衡)
• 這種模式,需要有一個公共的IP配置在分發器和所有rs上,我們把它叫做vip

• 客戶端請求的目標IP爲vip,分發器接收到請求數據包後,會對數據包做一個加工,會把目標IP改爲rs的IP,這樣數據包就到了rs上

• rs接收數據包後,會還原原始數據包,這樣目標IP爲vip,因爲所有rs上配置了這個vip,所以它會認爲是它自己

LVS IP Tunnel模式的特點

在分發器(load balancer)與真實服務器(real server)之間建立了虛擬通道,叫做 ip tunnel ;實際上是更改了數據包目的IP;請求過來通過分發器,通過在真實服務器上配置的VIP;用戶請求的時候,數據包裏面包好的目的IP,當數據包到達分發器的時候,分發器會進行一個數據包目的IP的更改,然後發送到具體的真實服務器上,通過lvs的自己的算法,進行實現到底傳輸到哪臺真實服務器上;然後真實服務器再解包處理,再通過一個VIP直接通過公網返回到用戶,這樣省略數據回到分發器的過程,減小了分發器的壓力,解決了分發器的瓶頸。
2018-07-20筆記(keeplived高用,lvs負載均衡)
• 這種模式,也需要有一個公共的IP配置在分發器和所有rs上,也就是vip

• 和IP Tunnel不同的是,它會把數據包的MAC地址修改爲rs的MAC地址

• rs接收數據包後,會還原原始數據包,這樣目標IP爲vip,因爲所有rs上配置了這個vip,所以它會認爲是它自己

LVS DR模式的特點

與IP Tunnel模式整體過程相同,不同的是,它會把數據包的MAC地址修改爲rs的MAC地址進行分發。

18.8 LVS調度算法

• 輪詢 Round-Robin rr

• 加權輪詢 Weight Round-Robin wrr

• 最小連接 Least-Connection lc

• 加權最小連接 Weight Least-Connection wlc

• 基於局部性的最小連接 Locality-Based Least Connections lblc

• 帶複製的基於局部性最小連接 Locality-Based Least Connections with Replication lblcr

• 目標地址散列調度 Destination Hashing dh

• 源地址散列調度 Source Hashing sh

注:前4種爲常用的調度算法

18.9/18.10 LVS NAT模式搭建

lvs的nat模式,其實就是iptables端口轉發,把請求轉發到後端的的主機上
準備三臺機器

• 分發器,也叫調度器(簡寫爲dir)

內網 192.168.66.130,外網:192.168.159.100(vmware僅主機模式)這個IP更據你虛擬機IP段來設置

• rs1

內網:192.168.66.131,設置網關爲192.168.66.130也就是分發器的IP

• rs2

內網:192.168.66.132,設置網關爲192.168.66.130

增加網卡時需要注意:

在虛擬機增加一個新的網卡之後,並設置爲僅主機模式

開啓虛擬機,用ifconfig命令,查看是否已經加載了網卡——>安裝ifconfig包:yum install -y net-tools

複製網卡配置文件到新的網卡里面,並更改配置文件中的IP,刪除UUID,更改mac

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens37
[root@localhost network-scripts]# vim ifcfg-ens37

更改mac,可以使用ip add命令查看,新的網卡的mac,並在配置文件中更改

重啓網卡

ifup ens37

重啓網絡服務

systemctl restart network

用物理機嘗試新的網卡IP是否能通信

三臺機器上都執行執行

systemctl stop firewalld
systemc disable firewalld
systemctl start iptables
iptables -F 
service iptables save

在分發器192.168.66.130上安裝ipvsadm

[root@localhost network-scripts]# yum install -y ipvsadm

在分發器192.168.66.130上編寫腳本

vim /usr/local/sbin/lvs_nat.sh  
內容如下
#! /bin/bash
# director 服務器上開啓路由轉發功能
echo 1 > /proc/sys/net/ipv4/ip_forward  //對內核參數修改,打開路由轉發
# 關閉icmp的重定向
echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects //僞裝操作,不然不能轉發rs的數據
echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects //僞裝操作,不然不能轉發rs的數據
# 注意區分網卡名字,兩個網卡分別爲ens33和ens37
echo 0 > /proc/sys/net/ipv4/conf/ens33/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/ens37/send_redirects
# director 設置nat防火牆
iptables -t nat -F
iptables -t nat -X
iptables -t nat -A POSTROUTING -s 192.168.66.0/24  -j MASQUERADE
//MASQUERADE實現同網段的機器去上網,路由器使用的就是這個功能
# director設置ipvsadm
IPVSADM='/usr/sbin/ipvsadm'  //定義一個變量,方便下面命令引用
$IPVSADM -C    //清空規則
$IPVSADM -A -t 192.168.159.100:80 -s wlc -p 3  //用來定義lvs的模式;wlc爲算法,可以按需求選擇lvs裏面適合的算法
$IPVSADM -a -t 192.168.159.100:80 -r 192.168.66.131:80 -m -w 1  //詳細規則,-r 指定rs機器IP,-m 指定nat模式,-w指定rs權重
$IPVSADM -a -t 192.168.159.100:80 -r 192.168.66.132:80 -m -w 1  //詳細規則,-r 指定rs機器IP,-m 指定nat模式,-w指定rs權重

-A增加一個規則,-t 制定lvs 模式,之後IP 就是分發器的IP,-s 指定算法;-p 指定超時時間(數據包轉發超時時間),例如用戶1訪問的是a機器,-p 的意思就是在同一個時間,一直在同一臺機器上進行請求

測試腳本

[root@localhost network-scripts]# sh /usr/local/sbin/lvs_nat.sh

執行腳本,若是沒輸出,表示腳本沒有錯誤

效果測試

使用curl模擬公網IP進行訪問

[root@localhost ~]# curl 192.168.159.100
master master
[root@localhost ~]# curl 192.168.159.100
backup backup
[root@localhost ~]# curl 192.168.159.100
master master
[root@localhost ~]# curl 192.168.159.100
backup backup
[root@localhost ~]# curl 192.168.159.100
master master

通過上述結果,說明lvs已經部署成功了

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