欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx結(jié)合keepalived實(shí)現(xiàn)雙機(jī)熱備方案

 更新時(shí)間:2024年05月12日 09:55:30   作者:鍵盤敲爛~~~  
Nginx難免遇見故障,可以使用使用keepalived來實(shí)現(xiàn)Nginx的高可用,本文主要介紹了Nginx結(jié)合keepalived實(shí)現(xiàn)雙機(jī)熱備方案,具有一定的參考價(jià)值,感興趣的可以了解一下

前言

在生產(chǎn)環(huán)境上很多時(shí)候是以 Nginx 做反向代理對(duì)外提供服務(wù),但是一天Nginx難免遇見故障,如:服務(wù)器宕機(jī)。當(dāng) Nginx 宕機(jī)那么 所有對(duì)外提供的接口都將導(dǎo)致無法訪問。雖然我們無法保證服務(wù)器百分之百可用,但是也得想辦法避免這種悲劇,今天我們使用 keepalived 來實(shí)現(xiàn) Nginx 的高可用。

一、雙機(jī)熱備方案是什么?

這種方案是國內(nèi)企業(yè)中最為普遍的一種高可用方案,雙機(jī)熱備其實(shí) 就是指一臺(tái)服務(wù)器在提供服務(wù),另一臺(tái)為某服務(wù)的備用狀態(tài),當(dāng)一 臺(tái)服務(wù)器不可用另外一臺(tái)就會(huì)頂替上去。 本文我們通過keepalived來實(shí)現(xiàn)雙機(jī)熱備。keepalived是基于VRRP協(xié)議實(shí)現(xiàn)的保證集群高可用的一個(gè)服務(wù)軟 件,主要功能是實(shí)現(xiàn)真機(jī)的故障隔離和負(fù)載均衡器間的失敗切換, 防止單點(diǎn)故障。

二、使用步驟

1.環(huán)境準(zhǔn)備

準(zhǔn)備兩臺(tái)Nginx主機(jī),主Nginx的ip為192.168.66.100,備Nginx的服務(wù)器ip為192.168.66.101.還有一個(gè)Lvs虛擬VIP(這個(gè)不需要特別準(zhǔn)備,在配置文件寫上就可,但主備Nginx服務(wù)器需要特別準(zhǔn)備),Lvs虛擬Vip為192.168.66.99.

2.具體操作

在兩臺(tái)虛擬機(jī)上分別執(zhí)行以下命令,安裝keepalived

yum install -y keepalived

現(xiàn)在對(duì)主Nginx進(jìn)行操作,修改keepalived.conf文件,直接把文件中原有的內(nèi)容刪除,粘貼并修改以下內(nèi)容。其中主備Nginx的virtual_router_id必須一樣,可以直接用代碼里的,不用修改,mcast_src_ip必須為Nginx宿主機(jī)的ip地址(如主Nginx的為192.168.66.100),virtual_ipaddress為Lvs虛擬Vip192.168.66.99

! Configuration File for keepalived


vrrp_script chk_nginx {
   script "/etc/keepalived/nginx_check.sh" #運(yùn)行腳本,腳本內(nèi)容下面有,就是起到一個(gè)nginx宕機(jī)以后,自動(dòng)開啟服務(wù)
   interval 2 #檢測(cè)時(shí)間間隔
   weight -20 #如果條件成立的話,則權(quán)重 -20
}
# 定義虛擬路由,VI_1 為虛擬路由的標(biāo)示符,自己定義名稱
vrrp_instance VI_1 {
   state MASTER #來決定主從
   interface ens33 # 綁定虛擬 IP 的網(wǎng)絡(luò)接口,根據(jù)自己的機(jī)器填寫
   virtual_router_id 121 # 虛擬路由的 ID 號(hào), 兩個(gè)節(jié)點(diǎn)設(shè)置必須一樣
   mcast_src_ip 192.168.66.100 #填寫本機(jī)ip
   priority 100 # 節(jié)點(diǎn)優(yōu)先級(jí),主要比從節(jié)點(diǎn)優(yōu)先級(jí)高
   nopreempt # 優(yōu)先級(jí)高的設(shè)置 nopreempt 解決異?;謴?fù)后再次搶占的問題
   advert_int 1 # 組播信息發(fā)送間隔,兩個(gè)節(jié)點(diǎn)設(shè)置必須一樣,默認(rèn) 1s
   authentication {
     auth_type PASS
     auth_pass 1111
   }
   # 將 track_script 塊加入 instance 配置塊
   track_script {
     chk_nginx #執(zhí)行 Nginx 監(jiān)控的服務(wù)
   }


   virtual_ipaddress {
     192.168.212.110 # 虛擬ip,也就是解決寫死程序的ip怎么能切換的ip,也可擴(kuò)展,用途廣泛??膳渲枚鄠€(gè)。
   }
}

現(xiàn)在對(duì)從Nginx進(jìn)行操作,修改keepalived.conf文件,直接把文件中原有的內(nèi)容刪除,粘貼并修改以下內(nèi)容。其中主備Nginx的virtual_router_id必須一樣,可以直接用代碼里的,不用修改,mcast_src_ip必須為Nginx宿主機(jī)的ip地址(如主Nginx的為192.168.66.101),virtual_ipaddress為Lvs虛擬Vip192.168.66.99

! Configuration File for keepalived


vrrp_script chk_nginx {
   script "/etc/keepalived/nginx_check.sh" #運(yùn)行腳本,腳本內(nèi)容下面有,就是起到一個(gè)nginx宕機(jī)以后,自動(dòng)開啟服務(wù)
   interval 2 #檢測(cè)時(shí)間間隔
   weight -20 #如果條件成立的話,則權(quán)重 -20
}
# 定義虛擬路由,VI_1 為虛擬路由的標(biāo)示符,自己定義名稱
vrrp_instance VI_1 {
   state BACKUP #來決定主從
   interface ens33 # 綁定虛擬 IP 的網(wǎng)絡(luò)接口,根據(jù)自己的機(jī)器填寫
   virtual_router_id 121 # 虛擬路由的 ID 號(hào), 兩個(gè)節(jié)點(diǎn)設(shè)置必須一樣
   mcast_src_ip 192.168.66.100 #填寫本機(jī)ip
   priority 100 # 節(jié)點(diǎn)優(yōu)先級(jí),主要比從節(jié)點(diǎn)優(yōu)先級(jí)高
   nopreempt # 優(yōu)先級(jí)高的設(shè)置 nopreempt 解決異?;謴?fù)后再次搶占的問題
   advert_int 1 # 組播信息發(fā)送間隔,兩個(gè)節(jié)點(diǎn)設(shè)置必須一樣,默認(rèn) 1s
   authentication {
     auth_type PASS
     auth_pass 1111
   }
   # 將 track_script 塊加入 instance 配置塊
   track_script {
     chk_nginx #執(zhí)行 Nginx 監(jiān)控的服務(wù)
   }


   virtual_ipaddress {
     192.168.66.99 # 虛擬ip,也就是解決寫死程序的ip怎么能切換的ip,也可擴(kuò)展,用途廣泛??膳渲枚鄠€(gè)。
   }
}

Nginx+keepalived實(shí)現(xiàn)高可用
寫入nginx_check.sh腳本 /etc/keepalived/nginx_check.sh.輸入命令

vim /etc/keepalived/nginx_check.sh
#!/bin/bash
A=`ps -C nginx –no-header |wc -l`
if [ $A -eq 0 ];then
   /usr/local/nginx/sbin/nginx
   sleep 2
   if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
     killall keepalived
   fi
fi

cd /etc/keepalived
chmod 777 nginx_check.sh
  • 運(yùn)行keepalived和Nginx
    這里給出運(yùn)行和停止keepalived的命令,Nginx大家自行運(yùn)行
service keepalived start #啟動(dòng)keepalived
service keepalived stop #停止keepalived

如果在啟動(dòng)keepalived的時(shí)候報(bào)錯(cuò):

當(dāng)你在瀏覽器輸入192.168.66.99的時(shí)候,打開的是nginx的頁面或者服務(wù),就說明雙機(jī)熱備就成功了

總結(jié)

到此這篇關(guān)于Nginx結(jié)合keepalived實(shí)現(xiàn)雙機(jī)熱備方案的文章就介紹到這了,更多相關(guān)Nginx keepalived雙機(jī)熱備內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nginx Mirror模塊的具體使用

    Nginx Mirror模塊的具體使用

    本文主要介紹了Nginx Mirror模塊的具體使用,Nginx mirror 模塊主要用于鏡像客戶請(qǐng)求到一組后端服務(wù)器,下面就來具體介紹一下,感興趣的可以了解一下
    2024-05-05
  • Nginx+Tomcat高性能負(fù)載均衡集群搭建教程

    Nginx+Tomcat高性能負(fù)載均衡集群搭建教程

    這篇文章主要為大家詳細(xì)介紹了Nginx+Tomcat高性能負(fù)載均衡集群搭建教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Nginx在Linux中的配置及維護(hù)全教程

    Nginx在Linux中的配置及維護(hù)全教程

    Nginx是一款高性能的開源HTTP和反向代理服務(wù)器,以其高并發(fā)處理能力和低資源消耗而聞名,它支持多種功能,Nginx的配置文件基于文本,易于理解和修改,使其成為 Web 開發(fā)和運(yùn)維人員的首選工具之一,本文給大家介紹了Nginx在Linux中的配置及維護(hù)全教程
    2025-02-02
  • Nginx請(qǐng)求訪問控制實(shí)現(xiàn)方案

    Nginx請(qǐng)求訪問控制實(shí)現(xiàn)方案

    Nginx并不直接實(shí)現(xiàn)漏桶算法或令牌桶算法,但這些算法在控制網(wǎng)絡(luò)流量和請(qǐng)求速率方面非常有用,這些算法通常在網(wǎng)絡(luò)編程、API服務(wù)、負(fù)載均衡等領(lǐng)域中使用,以確保系統(tǒng)的穩(wěn)定性和性能,這篇文章給大家介紹Nginx請(qǐng)求訪問控制實(shí)現(xiàn)方案,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • Nginx配置詳解(推薦)

    Nginx配置詳解(推薦)

    Nginx功能豐富,可作為HTTP服務(wù)器,也可作為反向代理服務(wù)器,郵件服務(wù)器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能
    2017-05-05
  • Nginx可視化配置工具NginxWebUI的使用

    Nginx可視化配置工具NginxWebUI的使用

    本文主要介紹了Nginx可視化配置工具NginxWebUI的使用,可以使用?WebUI?配置?Nginx?的各項(xiàng)功能,包括端口轉(zhuǎn)發(fā),反向代理,ssl?證書配置,負(fù)載均衡等,感興趣的可以了解一下
    2022-01-01
  • Nginx基于漏桶算法配置限流詳解

    Nginx基于漏桶算法配置限流詳解

    這篇文章主要為大家介紹了Nginx基于漏桶算法配置限流詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • Nginx配置文件nginx.conf詳細(xì)說明

    Nginx配置文件nginx.conf詳細(xì)說明

    本篇文章主要介紹了Nginx配置文件nginx.conf詳細(xì)說明,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-01-01
  • nginx獲取客戶端真實(shí)ip的常用方法

    nginx獲取客戶端真實(shí)ip的常用方法

    這篇文章給大家介紹了在nginx中獲取客戶端真實(shí)IP的兩種常用方法,文中有詳細(xì)的代碼供大家參考,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-09-09
  • Nginx中的root和alias指令示例詳解

    Nginx中的root和alias指令示例詳解

    Nginx是一種高性能的Web服務(wù)器軟件,其中root和alias是用于配置資源位置的兩個(gè)指令,root指令用于設(shè)置資源的根目錄,而alias指令則為特定location設(shè)置路徑別名,root適用于整體目錄結(jié)構(gòu),alias適合細(xì)粒度路徑控制,本文詳解這兩個(gè)指令的用途及區(qū)別
    2024-10-10

最新評(píng)論