高可用指一般是指2臺機器啟動著完全相同的業務系統,當有一台機器down機了,另外一台伺服器就能快速的接管,對於訪問的使用者是無感知的。
1.硬體通常使用 f5
2.軟體通常使用 keepalived
修改keepalived的配置檔案
# 檢測指令碼
vrrp_script check_nginx
# 配置vrrp協議
vrrp_instance vi_1
#設定vip
virtual_ipaddress
# 呼叫檢查
track_script
}配置檔案
啟動keepalived
測試:
nginx宕機後,伺服器並沒有出問題,keepalived就不會自動將ip轉到另一台伺服器上,想解決這個問題,就要想辦法告訴keepalived,nginx的情況。
編寫指令碼供keepalived使用
# 解決nginx無法正常啟動
ps -ef | grep -q [n]ginx
if [ $? -ne 0 ];then
# 代表nginx未正常啟動
systemctl start nginx &>/dev/null
sleep
2ps -ef | grep -q [n]ginx
if [ $? -ne 0 ];then
systemctl stop keepalived
fifi
# $?表示上條命令的執行結果,0表示有結果
# -ne 表示不相等
# &表示上條命令的輸出
# >/dev/null 相當於放入**站
指令碼**
兩個節點都啟動時,由於節點1優先順序高於節點2,所以只有節點1上有vip。當節點1keepalived掛掉,節點2會自動接管節點1的工作。因為節點1優先順序高於節點2,所以當節點1恢復時,會將vip搶占回來。這就是搶占式。
非搶占式就是節點一重啟後,雖然他的優先順序高但卻不會搶占vip,而是當節點2宕機後才會接管節點2的工作
配置要點:
1.兩個節點的state都必須配置為backup
2.兩個節點都必須加上配置 nopreempt
3.其中乙個節點的優先順序必須要高於另外乙個節點的優先順序。
兩台伺服器都角色狀態啟用nopreempt後,必須修改角色狀態統一為backup,唯一的區分就是優先順序。
當需要對非http協議的專案進行負載均衡時需要使用四層負載均衡的模式
案例:使用四層負載均衡實現ssh的**,埠為1122
1.修改nginx配置
2.建立資料夾並新增配置檔案
3.重啟nginx
高可用 七層負載均衡與四層負載均衡
一般是指2臺機器啟動著完全相同的業務系統,當有一台機器down機了,另外一台伺服器就能快速的接管,對於訪問的使用者是無感知的。比如公司的網路是通過閘道器進行上網的,那麼如果該路由器故障了,閘道器無法 報文了,此時所有人都無法上網了,怎麼辦?通常做法是給路由器增加一台備節點,但是問題是,如果我們的主閘...
接入層的負載均衡 高可用 擴容
利用nginx的反向 來實現站點層web server的負載均衡,負載均衡演算法有 隨機,輪詢,靜態權重,一致性hash等。接入層的負載均衡實現是依賴於lvs的負載均衡 作業系統級別,比nginx應用層效能更好 使用f5 硬體級別,效能比lvs更好 不管使用lvs,還是f5,雖然效能比nginx好很...
負載均衡(SLB) 高可用
負載均衡 slb 高可用是從系統設計 產品配置等多個方面提供了可用性保障。此外,您可以根據業務需求,配合使用雲解析dns等產品實現跨地域容災。負載均衡例項採用集群部署,可實現會話同步,以消除伺服器單點故障,提公升冗餘,保證服務的穩定性。其中四層負載均衡通過lvs linux virtual serv...