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

關(guān)于使用Keepalived實現(xiàn)Nginx的自動重啟及雙主熱備高可用問題

 更新時間:2021年09月08日 17:07:37   作者:追風(fēng)人聊Java  
這篇文章主要介紹了使用Keepalived實現(xiàn)Nginx的自動重啟及雙主熱備高可用,本文通過幾個問題解析幫助大家學(xué)習(xí)Keepalived實現(xiàn)Nginx的自動重啟的相關(guān)知識,需要的朋友可以參考下

1、概述

之前我們使用Keepalived實現(xiàn)了Nginx服務(wù)的雙機主備高可用,但是有幾個問題沒有解決,今天一起探討一下。

1)在雙機主備機制中,Keepalived服務(wù)如果宕了,會自動啟用備機進行服務(wù),但Nginx服務(wù)如果負載過大宕了,虛擬ip是不會指向備機的。

2)雙機主備的特點是,只有1臺機器在提供服務(wù),備機在主機的Keepalived服務(wù)宕掉后才會提供服務(wù),大大的造成了資源的浪費。

3)目前比較流行租用云服務(wù)器去運營公司的產(chǎn)品,那云服務(wù)器支不支持虛擬IP呢?

今天我們就上述的三個問題來講解一下。

2、使用Keepalived實現(xiàn)Nginx的自動重啟

2.1 借助Shell腳本,完成Nginx的重啟

Keepalived不能直接啟動Nginx,但可以執(zhí)行shell腳本,因此這里我們需要借助Shell腳本啟動Nginx。

在 /etc/keepalived 目錄下,新建一個腳本 check_nginx.sh,以下是腳本的具體內(nèi)容:

#!/bin/bash

# 執(zhí)行查看Nginx進程的命令,并放在變量A中
A=`ps -C nginx --no-header | wc -l`

# 判斷是否宕機,如果宕機嘗試重啟,如果重啟不成功,則停止Keepalived
if [ $A -eq 0 ];then
    /usr/local/nginx/sbin/nginx
    sleep 3
    if [ `ps -C nginx --no-header | wc -l` -eq 0 ];then
        killall keepalived

    fi
fi

腳本來源于網(wǎng)絡(luò)

2.2 為腳本賦予運行權(quán)限

# chmod +x /etc/keepalived/check_nginx.sh

2.3 在Keepalived配置文件中增加配置

打開Keepalived配置文件,# vi /etc/keepalived/keepalived.conf

修改配置文件,增加vrrp_script 和track_script的配置,配置如下:

global_defs {
   
   # 全局唯一的主機標識
   router_id server_a
   
}

vrrp_script check_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 3 # 每隔3秒運行一次Shell腳本
    weight 10 # 腳本運行成功,權(quán)重加10
}

vrrp_instance VI_1 {

    # 標識是主節(jié)點還是備用節(jié)點,值為 MASTER 或 BACKUP
    state MASTER
    # 綁定的網(wǎng)卡
    interface ens33
    # 虛擬路由id,保證主備節(jié)點是一致的
    virtual_router_id 51
    # 權(quán)重
    priority 100
    # 同步檢查時間,間隔默認1秒
    advert_int 1
    # 認證授權(quán)的密碼,所有主備需要一樣
    authentication {
        auth_type PASS
        auth_pass 1111
    }

    track_script {
        check_nginx
    }

    # 虛擬IP
    virtual_ipaddress {
        192.168.1.88
    }
}

2.4 重啟Keepalived服務(wù)

重啟后,發(fā)現(xiàn),Nginx停掉后,很快會自動啟動。

3、雙主熱備的搭建

3.1 雙主熱備概述

由于雙機主備機制,每次只會由一臺服務(wù)器對外提供服務(wù),且主備機的配置是相同的,因此極大地造成了資源的浪費。

雙主熱備則解決了這個問題,雙主熱備的原理是兩臺服務(wù)器利用Keepalived互為主備,因此需要兩個虛擬IP,再利用DNS輪詢的配置,讓一個域名按輪詢的方式分別路由到兩個虛擬IP上,最終達到高可用的目的。

3.2 場景說明

虛擬IP1:192.168.1.88

虛擬IP2:192.168.1.66

A服務(wù)器IP(主):192.168.1.144

B服務(wù)器IP(備):192.168.1.22

3.3 修改A服務(wù)器配置

配置如下:

! Configuration File for keepalived

global_defs {
   
   # 全局唯一的主機標識
   router_id server_a
   
}

vrrp_instance VI_1 {

    # 標識是主節(jié)點還是備用節(jié)點,值為 MASTER 或 BACKUP
    state MASTER
    # 綁定的網(wǎng)卡
    interface ens33
    # 虛擬路由id,保證主備節(jié)點是一致的
    virtual_router_id 51
    # 權(quán)重
    priority 100
    # 同步檢查時間,間隔默認1秒
    advert_int 1
    # 認證授權(quán)的密碼,所有主備需要一樣
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    # 虛擬IP
    virtual_ipaddress {
        192.168.1.88
    }
}

vrrp_instance VI_2 {

    # 標識是主節(jié)點還是備用節(jié)點,值為 MASTER 或 BACKUP
    state BACKUP
    # 綁定的網(wǎng)卡
    interface ens33
    # 虛擬路由id,保證主備節(jié)點是一致的
    virtual_router_id 52
    # 權(quán)重
    priority 80
    # 同步檢查時間,間隔默認1秒
    advert_int 1
    # 認證授權(quán)的密碼,所有主備需要一樣
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    # 虛擬IP
    virtual_ipaddress {
        192.168.1.66
    }
}

3.4 修改B服務(wù)器配置

配置如下:

! Configuration File for keepalived

global_defs {
   
   router_id server_b
   
}

vrrp_instance VI_1 {
    
    # 設(shè)置為備機
    state BACKUP
    interface ens33
    virtual_router_id 51
    # 權(quán)重設(shè)置的要比主機低
    priority 90
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    # 虛擬IP需要主備設(shè)置成一樣
    virtual_ipaddress {
        192.168.1.88
    }
}

vrrp_instance VI_2 {
    
    # 設(shè)置為主機
    state MASTER
    interface ens33
    virtual_router_id 52
    # 權(quán)重設(shè)置的要比主機低
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    # 虛擬IP需要主備設(shè)置成一樣
    virtual_ipaddress {
        192.168.1.66
    }
}

3.5 重啟兩臺服務(wù)器的Keepalived

重啟Keepalived即可。

3.6 設(shè)置DNS輪詢

聯(lián)系網(wǎng)絡(luò)運營商解決。

4、云服務(wù)器的負載均衡

現(xiàn)在,很多公司都會選擇租用云服務(wù)器運行自己的產(chǎn)品,因為更劃算、更穩(wěn)定,有專業(yè)人員負責(zé)運維。

但使用了云服務(wù)器,就要受云服務(wù)運營商的限制。

就拿虛擬IP這個事兒來說,一些云服務(wù)運營商就是不支持的。

如果不支持虛擬IP,則Keepalived這個方案就只能放棄了。

但即使Keepalived用不了,Nginx的高可用還是有解決方案的,很多云服務(wù)商都已經(jīng)推出了自己的負載均衡服務(wù)(例如:阿里云的負載均衡 SLB 和 騰訊云的負載均衡 CLB)。我們直接租用就好了,不需要我們自己去配置。

5、綜述

今天大概聊了一下KeepAlived自動重啟Nginx,Keepalived的雙主熱備高可用的搭建,以及云服務(wù)器負載均衡的解決方案,希望能對大家有所幫助。

到此這篇關(guān)于使用Keepalived實現(xiàn)Nginx的自動重啟及雙主熱備高可用的文章就介紹到這了,更多相關(guān)Keepalived實現(xiàn)Nginx的自動重啟內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nginx服務(wù)器基本的模塊配置和使用全攻略

    Nginx服務(wù)器基本的模塊配置和使用全攻略

    這篇文章主要介紹了Nginx服務(wù)器基本的模塊配置和使用全攻略,從Nginx的安裝開始細致入微地講解各個常用模塊的部署和參數(shù)使用,需要的朋友可以參考下
    2016-04-04
  • Nginx反向代理轉(zhuǎn)發(fā)tomcat的實現(xiàn)

    Nginx反向代理轉(zhuǎn)發(fā)tomcat的實現(xiàn)

    本文主要介紹了Nginx反向代理轉(zhuǎn)發(fā)tomcat的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • angular6+springboot實現(xiàn)前后分離nginx配置

    angular6+springboot實現(xiàn)前后分離nginx配置

    這篇文章主要介紹了angular6+springboot實現(xiàn)前后分離nginx配置詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • nginx輸出日志配置與查看的實現(xiàn)

    nginx輸出日志配置與查看的實現(xiàn)

    日志記錄是非常重要的一部分,本文主要介紹了nginx輸出日志配置與查看的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Nginx出現(xiàn)403錯誤,應(yīng)該如何解決

    Nginx出現(xiàn)403錯誤,應(yīng)該如何解決

    這篇文章主要介紹了Nginx出現(xiàn)403錯誤,應(yīng)該如何解決?具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • 完全卸載nginx以及安裝的超詳細步驟

    完全卸載nginx以及安裝的超詳細步驟

    由于之前下載太亂,找相關(guān)目錄半天找不對位置,所以決定卸載nginx并重新安裝,下面這篇文章主要給大家介紹了關(guān)于完全卸載nginx以及安裝的超詳細步驟,需要的朋友可以參考下
    2022-12-12
  • 基于Xen的VPS ubuntu+nginx+php安裝教程

    基于Xen的VPS ubuntu+nginx+php安裝教程

    跟蹤vps已經(jīng)很久了,但是因為需要特殊端口開服務(wù),所以符合條件的多為Xen平臺的vps。眾多比較之后選擇了vpslink在西雅圖機房,速度還不錯。
    2010-07-07
  • nginx cache不緩存問題的原因與解決方案

    nginx cache不緩存問題的原因與解決方案

    最近在工作中遇到了一個問題,發(fā)現(xiàn)nginx cache居然不緩存,后來通過查找網(wǎng)上的資料找到了原因和解決方案,下面整理好分享給大家,同樣遇到這個問題的朋友們可以參考借鑒,下面和小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2016-10-10
  • nginx配置完rewrite瀏覽器提示將您重定向的次數(shù)過多的解決方法

    nginx配置完rewrite瀏覽器提示將您重定向的次數(shù)過多的解決方法

    本文主要介紹了nginx配置完rewrite瀏覽器提示將您重定向的次數(shù)過多的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 負載均衡的基本知識以及使用nginx進行負載均衡的簡單例子

    負載均衡的基本知識以及使用nginx進行負載均衡的簡單例子

    今天小編就為大家分享一篇關(guān)于負載均衡的基本知識以及使用nginx進行負載均衡的簡單例子,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12

最新評論