中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

淺談Keepalived雙機熱備

發布時間:2020-08-11 04:49:32 來源:網絡 閱讀:436 作者:俊偉祺i 欄目:系統運維

一、Keepalived雙機熱備的基礎知識

keepalived官方網站: www.keepalived.org/ 在非LVS環境中keepalived也可以作為熱備軟件使用。

1、Keepalived作用

keepalived最初是專門針對LVS設計的一款強大的輔助工具,主要用來提供故障切換和健康檢查功能——判斷LVS負載調度器、節點服務器的可用性,及時隔離并替換為新的服務器,當故障主機回復后將其重新加入群集。單獨部署LVS環境的話,調度器發生宕機的話,整個群集就失效了,某一個web節點宕機后,客戶端在訪問時,總會碰上訪問不到網頁的情況,所以,將keepalived和LVS結合起來,才可形成一個真正的高可用群集,當然,后端的共享存儲也必須搭建一個高可用的存儲服務器,三者其中有一個滿足不了,都不能稱之為一個高可用的群集環境。

2、Keepalived的熱備方式

keepalived采用VRRP(虛擬路由冗余協議)熱備份協議,以軟件的方式實現Linux服務器的多機熱備功能。VRRP是針對路由器的一種備份解決方案——由多臺路由器組成一個熱備組,通過共用的虛擬IP(VIP)地址對外提供服務;每個熱備份組內同一時刻只有一臺主路由器提供服務,其他路由器處于冗余狀態,若當前在線的路由器失效,則其他路由器會自動接替(優先級決定接替順序)虛擬IP地址,以繼續提供服務。

熱備組內的每臺路由器都可能成為主路由器,虛擬路由器的IP地址(VIP)可以在熱備組內路由器進行轉移,所以也稱為漂移IP地址。使用keepalived時,漂移地址的實現不需要手動建立虛接口配置文件(如ens32:0),而是由keepalived根據配置文件自動管理。
淺談Keepalived雙機熱備

二、使用Keepalived實現雙機熱備

基于VRRP的熱備方式,keepalived可以用作服務器的故障切換,每個熱備組可以有多臺服務器——最常用的是多機熱備了。在這種多機熱備方案中,故障切換主要針對虛擬IP地址的漂移來實現。因此能適用于各種應用服務器(不管是Web、FTP、Mail、還是SSH、DNS....)。

拓撲圖如下所示:
淺談Keepalived雙機熱備

1、配置主服務器

Keepalived服務的配置目錄位于/etc/keepalived/。其中,keepalived.conf是主配置文件;另外包括一個子目錄samples/,提供了許多配置樣例作為參考。在Keepalived的配置文件中,使用“global_defs {...}”區段指定全局參數,使用“vrrp_instance實例名稱{...}”區段指定VRRP熱備參數,注釋文字以“!”符號開頭。

[root@centos04 ~]# systemctl stop firewalld   <!--關閉防火墻-->
[root@centos04 ~]# yum -y install ipvsadm keepalived  <!--安裝keeplived服務-->
[root@centos04 ~]# cp /etc/keepalived/keepalived.conf 
/etc/keepalived/keepalived.conf.bak   <!--備份keepalived主配置文件-->
[root@centos04 ~]# systemctl start keepalived   <!--啟動keepalived服務-->
[root@centos04 ~]# chkconfig --level 35 keepalived on  <!--設置開機自動啟動-->
[root@centos04 ~]# vim /etc/keepalived/keepalived.conf  <!--編輯keepalived主配置文件-->
! Configuration File for keepalived

global_defs {
   router_id LVS_HA_Master     <!--修改這里的服務器名稱-->
}

vrrp_instance VI_1 {           <!--定義VRRP熱備實例-->
    state MASTER               <!--熱備狀態,MASTER表示主服務器(注意大小寫)-->
    interface ens32              <!--承載VIP地址的物理接口-->
    virtual_router_id 51        <!--虛擬路由器的ID號,每個熱備組保持一致-->
    priority 100                     <!--優先級0-100,數值越大越優先-->
    advert_int 1                    <!--通告間隔秒數(心跳頻率)-->
    authentication {              <!--認證信息,每個熱備組保持一致-->
        auth_type PASS         <!--認證類型-->
        auth_pass 1111          <!--密碼字串-->
    }
    virtual_ipaddress {          <!--指定漂移地址,可以有多個-->
        192.168.100.253
    } 
}
............     <!--此處省略部分內容-->

確認上面配置無誤后,然后啟動keepalived服務,實際狀態為MASTER的主服務器將為ens32接口自動添加VIP地址,通過ip命令可以查看(注意:ifconfig命令看不到)。

[root@centos04 ~]# systemctl restart keepalived  <!--重啟keepalived服務-->
[root@centos04 ~]# ip a show dev ens32 <!--查看ens32接口-->
ens32: <BROADCAST,MULTICAST,UP,LOWER_UPUt qlen 1000
    link/ether 00:0c:29:77:2c:03 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.40/24 brd 192.168.1.255 scope global noprefixroute ens32
       valid_lft forever preferred_lft forever
    inet 192.168.100.253/32 scope global ens32   <!--可以看到VIP已經配置在ens32上-->
       valid_lft forever preferred_lft forever
    inet6 fe80::95f8:eeb7:2ed2:d13c/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

2、配置從節點

在同一keepalived熱備組內,所有服務器的keepalived配置文件基本相同,包括虛擬路由器的ID號認證信息漂移地址心跳頻率等不同之處主要在于路由器名稱、熱備狀態、優先級。

  • 路由器名稱(route_id):建議為每個參與熱備的服務器指定不同的名稱。

  • 熱備狀態(state):至少應有一臺主服務器,將狀態設置為MASTER;可以有多臺備用的服務器,將狀態設置為BACKUP。

  • 優先級(priority):數值越大則取得VIP控制權的優先級就越高,因此主服務的優先級應設置為最高;其他備用服務器可依次遞減,但不能相同,以免在爭奪VIP控制權時發生沖突。

配置備用服務器時(可以有多臺)時,可以參考主服務器的keepa.conf文配置文件內容,只要修改路由器名稱、熱備狀態、優先級就可以了。

[root@centos05 ~]# systemctl stop firewalld   <!--關閉防火墻-->
[root@centos05 ~]# yum -y install keepalived ipvsadm<!--安裝相關工具-->
[root@centos05 ~]# scp 
root@192.168.100.40:/etc/keepalived/keepalived.conf
/etc/keepalived/
<!--使用從節點服務器root用戶將主節點服務器的keepalived配置文件復制過來-->
root@192.168.100.40 s password: <!--輸入主節點root用戶的密碼-->
keepalived.conf                             100% 3549     3.5MB/s   00:00   
[root@centos05 ~]# vim /etc/keepalived/keepalived.conf  
                  <!--編輯keepalived主配置文件-->
global_defs {
   ...............
   router_id LVS_DEVEL2          <!--修改這里的服務器名稱-->
  .....................

}
                ..............
vrrp_instance VI_1 {
    state BACKUP  <!--修改這里的狀態,改為BACKUP-->
    interface ens32  <!--若該服務器承載VIP的物理接口有變,則這里也要修改-->
    virtual_router_id 51
    priority 90               <!--修改優先級,要比主服務器低-->
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }   
    virtual_ipaddress {
    192.168.100.253
    }
}   
              .................
<!--改動上述幾行后,保存退出即可-->
[root@centos05 ~]# systemctl start keepalived  <!--啟動服務-->
[root@centos05 ~]# systemctl enable keepalived<!--設置開機自啟動-->

確認配置無誤,一樣需要啟動keepalived服務。此時主服務器仍然在線,VIP地址實際上仍然由主服務器控制,其他服務器處于備份狀態,因此在備用服務器中將不會為ens32接口添加VIP地址。

[root@centos05 ~]# ip a show dev ens33       <!--查看ens33接口,不會看到VIP-->
ens32: <BROADCAST,MULTICAST,Udel state UP group default qlen 1000
    link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.50/24 brd 192.168.1.255 scope global noprefixroute ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

3、測試雙機熱備功能

將主服務器關機,或停止keepalived服務,等待約15秒后,查看備份服務器的ens32網卡,會發現漂移地址已經轉移過來了,說明雙機熱備功能生效。待主服務器開機后,漂移地址會自動轉移回到主服務器上。

[root@centos05 ~]# ip a show dev ens32   <!--主服務器關機后查看備份服務器的網卡信息-->
ens32: <BROADCAST,MULTICAST,UP state UP group default qlen 1000
    link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.50/24 brd 192.168.1.255 scope global noprefixroute ens32
       valid_lft forever preferred_lft forever
    inet 192.168.100.253/32 scope global ens32 <!--漂移地址已經轉移過來了-->
       valid_lft forever preferred_lft forever
    inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

再將主服務器開機,會發現VIP已經轉移回了主服務器,而備份服務器又查不到了VIP:

[root@centos04 ~]# ip a show dev ens32   <!--在主服務器上進行查看-->
ens32: <BROADCAST,MULTICAST,UP,Lefault qlen 1000
    link/ether 00:0c:29:77:2c:03 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.40/24 brd 192.168.1.255 scope global noprefixroute ens32
       valid_lft forever preferred_lft forever
    inet 192.168.100.253/32 scope global ens32 <!--VIP地址在這里了-->
       valid_lft forever preferred_lft forever
    inet6 fe80::95f8:eeb7:2ed2:d13c/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
[root@centos05 ~]# ip a show dev ens32  <!--在備份服務器上進行查看-->
ens32: <BROADCAST,MULTICAST,UP,P grou00
    link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.50/24 brd 192.168.1.255 scope goute ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

—————— 本文至此結束,感謝閱讀 ——————

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蓝田县| 乐山市| 德令哈市| 津市市| 即墨市| 抚远县| 恩施市| 江城| 什邡市| 天峨县| 大庆市| 贡觉县| 巢湖市| 梅州市| 古浪县| 遂昌县| 渝北区| 河池市| 昌都县| 卢龙县| 丹东市| 海宁市| 渑池县| 宜阳县| 郸城县| 黄石市| 泗水县| 平遥县| 长治县| 略阳县| 桃园县| 湟中县| 岳阳市| 株洲县| 宁河县| 名山县| 惠安县| 泸定县| 宿迁市| 东乡族自治县| 潞西市|