<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      MySQL雙主Keepalived主備搶占配置手冊

      MySQL雙主Keepalived主備搶占配置手冊

        以下是為服務器(192.168.43.218 和 192.168.43.219)配置Keepalived高可用的完整手冊,虛擬IP(VIP)為 192.168.43.222,并已按要求將虛擬路由器ID設置為 222。此配置能確保當一臺MySQL服務器故障時,VIP自動漂移到另一臺,實現(xiàn)高可用。

      配置規(guī)劃

      組件

      服務器 1 (Master-1)

      服務器 2 (Master-2)

      說明

      真實IP

      192.168.43.218

      192.168.43.219

      服務器的固定IP

      虛擬IP (VIP)

      192.168.43.222 (主)

      192.168.43.222 (備)

      對應用層提供服務的浮動IP

      Keepalived角色

      MASTER

      BACKUP

      初始狀態(tài)

      優(yōu)先級 (priority)

      150

      100

      MASTER優(yōu)先級需高于BACKUP

      虛擬路由器ID

      222

      222

      關鍵修改點,確保全網唯一

      網卡接口

      需根據實際修改(如ens160、eth0)

      需根據實際修改(如ens160、eth0)

      使用ip a命令查看本機網卡名

      安裝Keepalived

      在兩臺服務器上執(zhí)行

      # 安裝Keepalived
      yum install -y keepalived
      #yum -y install keepalived ipvsadm mailx
      systemctl enable keepalived
      # 設置開機自啟(暫不啟動)
      #systemctl enable keepalived
      #groupadd -r keepalived_script
      #useradd -r -g keepalived_script -s /sbin/nologin keepalived_script

       配置Keepalived  

      主節(jié)點配置 (192.168.43.218)

      編輯配置文件 /etc/keepalived/keepalived.conf,內容如下:

      
      

      cat > /etc/keepalived/keepalived.conf << 'EOF'
      # ================================================================
      # db218 節(jié)點 keepalived 配置文件
      # 角色:MASTER(初始寫入節(jié)點)
      # 虛擬 IP:192.168.43.222
      # ================================================================

      
      

      global_defs {
      # 本機唯一標識,日志中便于定位
      router_id mysql_218
      # 啟用性能優(yōu)化選項
      max_auto_priority

      
      

      # 以 root 身份運行腳本,并啟用腳本安全檢查
      script_user root
      enable_script_security

      
      

      # 跳過對通告地址的校驗,加速切換
      vrrp_skip_check_adv_addr
      }

      
      

      # ------------------------------------------------------------
      # MySQL 健康檢查腳本定義
      # ------------------------------------------------------------
      vrrp_script chk_mysql {
      # 檢查腳本路徑
      script "/etc/keepalived/check_mysql.sh"
      interval 10 # 腳本執(zhí)行間隔:給足MySQL啟停時間
      timeout 7 # 腳本超時時間:小于interval,預留3秒緩沖
      weight -60 # 故障時降低60優(yōu)先級,確保node2優(yōu)先級更高
      fall 2 # 連續(xù)2次失敗判定為故障(減少誤判)
      rise 3 # 連續(xù)3次成功判定為恢復(確保穩(wěn)定)
      }

      
      

      # 實例名字(自定義),同一對主備須同名,否則互相認不到。
      vrrp_instance VI_1 {
      state MASTER # 初始狀態(tài):BACKUP
      interface ens160 # 綁定網卡,需與 ip a 看到的名稱一致
      virtual_router_id 222 # 主備必須相同,范圍 1-255
      priority 150 # 優(yōu)先級,高于 BACKUP(100)
      advert_int 2 # 心跳間隔 2 秒
      #nopreempt # 非搶占式

      # 優(yōu)化ARP發(fā)送策略
      garp_master_delay 5 # 成為主節(jié)點后延遲5秒發(fā)送ARP
      garp_master_repeat 3 # 成為主節(jié)點后發(fā)送3次ARP

      
      

      # 認證方式:簡單密碼(主備必須一致)
      authentication {
      auth_type PASS
      auth_pass 8888
      }

      
      

      # 虛擬 IP/掩碼及標簽(label 方便 ip addr 查看)
      virtual_ipaddress {
      192.168.43.222/24 dev ens160 label ens160:1
      }

      
      

      # 使用單播代替組播,防止交換機禁組播,指向對端
      unicast_src_ip 192.168.43.218 # 本地IP
      unicast_peer {
      192.168.43.219 # 對端IP
      }

      
      

      # 關聯(lián)健康檢查腳本
      track_script {
      chk_mysql weight 0 # weight 0:僅觸發(fā)狀態(tài)判定,不疊加權重
      }
      }
      EOF

       

      備節(jié)點配置 (192.168.43.219)

      配置文件路徑相同,內容如下(注意修改router_id和優(yōu)先級):

      
      

      cat > /etc/keepalived/keepalived.conf << 'EOF'
      # ================================================================
      # db219 節(jié)點 keepalived 配置文件
      # 角色:BACKUP(初始只讀節(jié)點)
      # 虛擬 IP:192.168.43.222(故障時漂移到本機)
      # ================================================================

      
      

      global_defs {
      # 本機唯一標識,日志中便于定位
      router_id mysql_219
      # 啟用性能優(yōu)化選項
      max_auto_priority

      # 以 root 身份運行腳本,并啟用腳本安全檢查
      script_user root
      enable_script_security

      
      

      # 跳過對通告地址的校驗,加速切換
      vrrp_skip_check_adv_addr
      }

      
      

      # ------------------------------------------------------------
      # MySQL 健康檢查腳本定義
      # ------------------------------------------------------------
      vrrp_script chk_mysql {
      # 檢查腳本路徑
      script "/etc/keepalived/check_mysql.sh"
      interval 10 # 腳本執(zhí)行間隔:給足MySQL啟停時間
      timeout 7 # 腳本超時時間:小于interval,預留3秒緩沖
      weight -60 # 故障時降低60優(yōu)先級,確保node2優(yōu)先級更高
      fall 2 # 連續(xù)2次失敗判定為故障(減少誤判)
      rise 3 # 連續(xù)3次成功判定為恢復(確保穩(wěn)定)
      }

      
      

      # 實例名字(自定義),同一對主備須同名,否則互相認不到。
      vrrp_instance VI_1 {
      state BACKUP # 初始狀態(tài):BACKUP
      interface ens160 # 綁定網卡,需與 ip a 看到的名稱一致
      virtual_router_id 222 # 主備必須相同,范圍 1-255
      priority 100 # 優(yōu)先級低于 MASTER (150)
      advert_int 2 # 心跳間隔 2 秒
      #nopreempt # 非搶占式

      # 優(yōu)化ARP發(fā)送策略
      garp_master_delay 5 # 成為主節(jié)點后延遲5秒發(fā)送ARP
      garp_master_repeat 3 # 成為主節(jié)點后發(fā)送3次ARP

      
      

      # 認證方式:簡單密碼(主備必須一致)
      authentication {
      auth_type PASS
      auth_pass 8888
      }

      # 虛擬 IP/掩碼及標簽(label 方便 ip addr 查看)
      virtual_ipaddress {
      192.168.43.222/24 dev ens160 label ens160:1
      }

      
      

      # 使用單播代替組播,防止交換機禁組播,指向對端
      unicast_src_ip 192.168.43.219 # 本地IP
      unicast_peer {
      192.168.43.218 # 對端IP
      }

      # 關聯(lián)健康檢查腳本
      track_script {
      chk_mysql weight 0 # weight 0:僅觸發(fā)狀態(tài)判定,不疊加權重
      }
      }
      EOF

       

      配置MySQL健康檢查腳本(關鍵步驟)

      為確保VIP僅在MySQL服務正常時切換,需創(chuàng)建健康檢查腳本。在兩臺服務器上創(chuàng)建 /etc/keepalived/check_mysql.sh

      # 創(chuàng)建專用賬號
      CREATE USER 'checkuser'@'localhost' IDENTIFIED BY 'xrvLovfnp$4%svbS';
      GRANT USAGE ON *.* TO 'checkuser'@'localhost';
      # 測試是否可以成功執(zhí)行
      mysql -hlocalhost -ucheckuser -p'xrvLovfnp$4%svbS' -e "select 1"
      cat >/etc/keepalived/check_mysql.sh << 'EOF'
      #!/bin/bash
      # MySQL健康檢查腳本:測試MySQL連接是否正常
      MYSQL_CMD=$(which mysql)
      MYSQL_HOST="localhost"
      MYSQL_PORT="3306"
      MYSQL_USER="checkuser"
      CHECK_SQL="SELECT 1;"
      if $MYSQL_CMD -h "$MYSQL_HOST" -P "$MYSQL_PORT" -u "$MYSQL_USER" -p'xrvLovfnp$4%svbS' -e "$CHECK_SQL" > /dev/null 2>&1; then
          exit 0  # MySQL正常,腳本返回0
      else
          exit 1  # MySQL異常,腳本返回非0,觸發(fā)優(yōu)先級降低
      fi
      EOF
      
      chmod 755 /etc/keepalived/check_mysql.sh

      啟動服務與驗證

      驗證keepalived服務

      # 主節(jié)點(218)啟動
      systemctl start keepalived
      
      # 在備節(jié)點(219)啟動
      systemctl start keepalived

      驗證VIP綁定  

      # 在主節(jié)點執(zhí)行,應看到VIP綁定在網卡上
      ip addr|grep 192
      # 在備節(jié)點執(zhí)行,不應看到VIP
      ip addr|grep 192

      檢查服務狀態(tài) 

      systemctl status keepalived  # 查看服務是否活躍
      tail -f /var/log/messages    # 監(jiān)控Keepalived日志,確認無錯誤

      故障轉移測試 

      模擬主節(jié)點故障-keepalived關閉

      # 在主節(jié)點停止Keepalived:
      systemctl stop keepalived
      
      #觀察備節(jié)點日志:應看到VIP漂移到備節(jié)點.
      tail -f /var/log/messages,
      
      在備節(jié)點執(zhí)行,確認VIP已綁定。
      ip addr|grep 192

      恢復測試-keepalived開啟

      # 重啟主節(jié)點的Keepalived:
      systemctl start keepalived
      
      # 由于主節(jié)點優(yōu)先級更高,VIP應自動漂回(搶占模式)。
      ip addr|grep 192

      模擬主節(jié)點故障-mysqld關閉

      # 在主節(jié)點查看
      systemctl stop mysqld
      systemctl status mysqld
      ip addr|grep 192
      tail -f /var/log/messages
      
      # 在備節(jié)點查看
      ip addr|grep 192
      tail -f /var/log/messages

      恢復測試-mysqld開啟

      # 在主節(jié)點查看
      systemctl start mysqld
      systemctl status mysqld
      ip addr|grep 192
      tail -f /var/log/messages
      
      # 在備節(jié)點查看
      ip addr|grep 192
      tail -f /var/log/messages
      # 快捷命令
      systemctl status mysqld
      systemctl status keepalived.service 
      
      systemctl start mysqld
      systemctl start keepalived.service
      
      systemctl stop mysqld
      systemctl stop keepalived.service 
      
      
      systemctl restart mysqld
      systemctl restart keepalived.service 
      
      ip addr|grep 192

       

      經多次測試,已經達到預期效果!

       

       
      posted @ 2025-10-31 10:25  davie2020  閱讀(19)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 92国产福利午夜757小视频| 精品亚洲综合一区二区三区| 久久久天堂国产精品女人| 国产欧美日韩亚洲一区二区三区| 成人免费视频一区二区三区| 日韩精品一区二区三区人| 日本va欧美va欧美va精品| 97超级碰碰碰久久久久app| 久久亚洲精品情侣| 爱性久久久久久久久| 亚洲中文字幕无码一久久区| 国产精品疯狂输出jk草莓视频| 欧美国产亚洲日韩在线二区| 国内精品免费久久久久电影院97 | 好吊视频在线一区二区三区| 高潮毛片无遮挡高清视频播放| 四虎国产精品永久入口| 日韩成人高精品一区二区| 中文国产成人精品久久一| 国产精品综合一区二区三区| 久久亚洲精品亚洲人av| 久久96热在精品国产高清| 久久国产成人午夜av影院| 亚洲国产一区二区av| 开心五月婷婷综合网站| 久久久久成人精品无码中文字幕 | 国产内射xxxxx在线| 国产精品午夜福利在线观看| 亚洲人成网网址在线看| 国产精品二区中文字幕| 自拍第一区视频在线观看| A级毛片100部免费看| 国产精品成人综合色在线| 91中文字幕一区在线| 又黄又刺激又黄又舒服| 日韩中文字幕综合第二页| 99久re热视频这里只有精品6| 欧美牲交videossexeso欧美| 国产精品久久久国产盗摄| 欧美成人精品手机在线| 香蕉亚洲欧洲在线一区|