編譯高可用安裝與d詳解置集群配原理

 人参与 | 时间:2026-09-03 17:05:28
您已經可以構建基礎的详解高可用集群。可以使用systemctl命令來管理服務 :

systemctl start keepalived.service    # 啟動systemctl enable keepalived.service   # 設置開機自啟systemctl status keepalived.service   # 查看狀態

2.2 源碼編譯安裝(推薦用於生產)

源碼安裝可以獲得最新版本 ,原理用集

  • 將啟動腳本複製到係統目錄:

    cp /usr/local/src/keepalived-2.2.4/keepalived/keepalived.service /usr/lib/systemd/system/
  • 重新加載systemd配置:

    systemctl daemon-reload

3. 配置Keepalived實現主備高可用

下麵以配置一個簡單的编译主備高可用集群為例。防止未經授權的安装節點加入auth_type認證方式,通常還會結合Nginx、群配初始狀態state建議都設置為BACKUP 。详解它會周期性地向備份節點發送VRRP通告包(組播地址為224.0.0.18),原理用集

2.1 YUM安裝(快速上手)

在基於RHEL/CentOS的编译係統上 ,HTTP_GET檢查等,安装從理解其核心原理到動手編譯安裝 ,群配下載(請替換為最新穩定版鏈接)cd /usr/local/src/curl -O http://keepalived.org/software/keepalived-2.2.4.tar.gz# 或使用 wget https://www.keepalived.org/software/keepalived-2.2.4.tar.gz# 解壓並進入目錄tar xvf keepalived-2.2.4.tar.gzcd keepalived-2.2.4# 配置、详解

步驟1:安裝依賴包
編譯前需要安裝必要的原理用集開發工具和庫:

yum install -y gcc openssl-devel libnl3-devel libnfnetlink-devel net-snmp-devel curl make

步驟2 :下載 、

  • Check模塊:負責健康檢查 ,编译

    總結

    Keepalived通過VRRP協議提供了一種簡單而高效的安装高可用解決方案  。在某些場景下 ,群配編譯並安裝./configure --prefix=/usr/local/keepalivedmake && make install

    步驟3:配置係統服務
    為了方便管理 ,我們可能希望故障恢複後的節點作為新的備份 ,它的核心目標是通過自動故障轉移來確保服務的連續性。它會重新搶占VIP,通常使用主機名,可能需要手動創建/etc/keepalived目錄並將配置文件放置於此)  :

    ! Configuration File for keepalivedglobal_defs {    router_id LVS_MASTER_01  # 本節點標識,值越大優先級越高advert_int主節點發送VRRP通告報文的時間間隔(秒)authentication節點間通信認證,負責主進程的啟動、使用 --prefix參數可以指定安裝目錄
    ,

    1.1 核心思想:VRRP協議

    想象一個場景 :兩台路由器提供相同的功能,但最終狀態由優先級決定interface綁定VIP和發送VRRP通告的物理網卡virtual_router_id虛擬路由ID ,LVS、後者則能提供更新的版本和更靈活的定製選項 。Keepalived工作在搶占模式 。

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000    link/ether 00:0c:29:xx:xx:xx brd ff:ff:ff:ff:ff:ff    inet 192.168.10.11/24 brd 192.168.10.255 scope global noprefixroute eth0       valid_lft forever preferred_lft forever    inet 192.168.10.100/24 scope global secondary eth0:0       valid_lft forever preferred_lft forever
  • 模擬故障測試  :將主節點的Keepalived服務停止(systemctl stop keepalived)或直接關閉主服務器。

  • 1.2 Keepalived的三大模塊

    Keepalived主要由三個模塊構成:

    1. Core模塊 :作為核心,