Keepalived的詳細配置與使用

2021-10-16 19:35:14 字數 2980 閱讀 2314

開啟keepalived.conf 檔案,這個檔案是keepalived的配置檔案

global_defs 

# 計算機節點

vrrp_instance vi_1

# 虛擬ip

virtual_ipaddress

}

配置完成後在keepalived安裝目錄中sbin目錄下執行

./keepalived
啟動keepalived,然後使用ip addr命令檢視ip會發現在我們本機的ip下面會出現我們剛剛配置的虛擬ip

然後就可以嘗試使用虛擬ip訪問伺服器,如果成功說明已經配置好了

安裝完成後想要關掉keepalived -9 這樣不太好,所有我們將keepalived註冊為系統服務

首先進入keepalived解壓的目錄然後在進入目錄下的keepalived/etc/下將init.d和 sysconfig下的keepalived檔案複製到linux系統的/etc/下的init.d和 sysconfig下

複製完成後使用以下命令重新整理keepalived

[root@localhost etc]

# systemctl daemon-reload

配置完成後以後可以使用以下命令進行啟動

[root@localhost etc]

# systemctl start keepalived.service

停止服務使用

[root@localhost etc]

# systemctl stop keepalived.service

重啟服務使用

[root@localhost etc]

# systemctl restart keepalived.service

首先在備用機裡安裝好keepalivd,安裝流程和主機一直,安裝好後來配置下配置檔案

global_defs 

# 計算機節點

vrrp_instance vi_1

# 虛擬ip

virtual_ipaddress

}

首先修改下router_id這個的值,這個是全域性變數要唯一

然後檢查下自己計算機的網絡卡名字將inte***ce的值配置好,(檢視網絡卡使用ip addr)

然後將權重適當的調低,將state 改為backup(表示備用機器)

virtual_router_id和下面的秘鑰和虛擬ip要保持和主機一直,配置好後啟動keepalived。啟動後使用ip addr檢查虛擬ip並沒有出現是正常的,因為此時主機正在執行,虛擬ip自動繫結的是主機,這時候我們關掉主機在次使用ip addr發現虛擬ip出現,說明繫結到了備用機上,網頁請求虛擬ip就會請求到備用機,如果此時主機再次啟動,虛擬ip會自動與備用機解綁與主機再次繫結。

由於keepalived檢查的是linux,如果nginx掛掉後,keepalived依然還是會繫結在主節點上,就會使得使用者無法請求。

這時候我們需要寫一些指令碼檢查nginx是否還在正常執行,如果掛掉就重啟它,實在啟動不了再讓keepalived繫結備用機器

為了方便尋找,我們將指令碼放在keepalived的配置檔案的目錄下

首先進入/etc/keepalived

使用vim 編寫指令碼 指令碼內容如下

#!/bin/bash a=`

ps -c nginx --no-header |

wc -l`

# 判斷nginx是否宕機,如果宕機了,嘗試重啟 if[

$a -eq 0 ]

;then

/usr/local/nginx/sbin/nginx

# 等待一小會再次檢查nginx,如果沒有啟動成功,則停止keepalived,使其啟動備用機

sleep 3

if[`

ps -c nginx --no-header |

wc -l`

-eq 0 ]

;then

killall keepalived

fifi

嘗試執行下指令碼可以啟動ng後要在keepalived的核心配置檔案裡做乙個定時的監聽

首先在keepalived的核心配置檔案裡新增乙個指令碼方法 ,

vrrp_script check_nginx_alive
然後在計算機節點vrrp_instance vi_1 裡面呼叫一下這個指令碼方法

track_script
配置好後重啟keepalived。

這是我們到ng的目錄下使用./nginx -s stop 停止ng後重新整理頁面發現還是可以方法,說明keepalived自動重啟了ng

雙主熱備的思想是在建乙個虛擬ip將以前的主機作為備用機,將以前的備用機作為主機,然後使用dns解析網域名稱實現兩個虛擬ip實現負載均衡

首先開啟主機的keepalived的核心配置檔案keepalived.conf 複製乙份 vrrp_instance vi_1然後將名字vi_1修改下,將狀態state改為備用機backup,然後將組virtual_router_id修改下,虛擬ip在定義乙個後儲存

vrrp_instance vi_2 

track_script

virtual_ipaddress

}

備用機也要修改,修改的狀態為主機master,組要保持和剛才配置的一樣,虛擬ip也是,配置後重啟keepalived。進行測試。兩個ip都能訪問表示配置成功

注:該教材為慕課網學習的總結記錄

Keepalived 配置說明

1 環境準備 系統需要的 linux 版本為 2.6.9 5.elsmp 需要的keepalived 版本為 1.1.20 檢查 linux版本 root test01 etc uname r 2.6.9 5.elsmp 檢查 keepalived 版本 root test01 keepalived...

Keepalived全域性配置

包括兩個子配置 全域性定義,global definition 靜態位址路由,static ipaddress routes 主要設定keepalived的通知機制和標識 global defs notification email from admin example.com smtp serve...

Keepalived配置安裝

ubuntu 16.04.3系統兩台機器 vipip hostname port 192.168.0.200 192.168.0.129 master wjt ceshiji 80192.168.0.200 192.168.0.129 backup wjt ceshiji22 80wgettar z...