精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

高可用:Nginx 配合 keepalived

開發(fā) 架構(gòu)
本文就介紹下怎樣用 Nginx 和 keepalived 來實(shí)現(xiàn)應(yīng)用的高可用。

如果在谷歌中搜索 「Nginx 高可用」,搜索出來的大多都是 Nginx + keepalived 的使用。

圖片

所以,本文就介紹下怎樣用 Nginx 和 keepalived 來實(shí)現(xiàn)應(yīng)用的高可用。

環(huán)境

  • 服務(wù)器:CentOS7
  • Server1 : 10.211.55.3
  • Server2 : 10.211.55.14
  • Docker:23.0.5
  • Nginx:1.23.4
  • keepalived:1.3.5

部署

本次測(cè)試使用兩臺(tái)測(cè)試虛擬機(jī),IP 分別為 10.211.55.3 和 10.211.55.14 ,Nginx 使用 Docker 進(jìn)行部署,keepalived 直接在服務(wù)器部署。架構(gòu)圖如下:

圖片


具體部署和配置步驟如下:

1、在兩臺(tái) CentOS 服務(wù)器上安裝 docker 和 docker-compose 。

2、在 10.211.55.3 服務(wù)器的 /root 目錄中創(chuàng)建 nginx-ha 目錄,目錄內(nèi)容如下圖:

圖片

3、docker-compose.yml 文件內(nèi)容如下:

version: '3'

networks:
 s2_net:
  driver: bridge
  ipam:
   driver: default
   config:
    - subnet: 172.55.1.0/24

services:
  nginx1:
    image: nginx:latest
    container_name: nginx1
    restart: always
    ports:
      - "9000:80"
    volumes:
      - ./config/nginx/conf.d:/etc/nginx/conf.d:ro
      - ./web:/usr/share/nginx/html
    networks:
     s2_net:
      ipv4_address: 172.55.1.2

  nginx-proxy1:
   image: nginx:latest
   container_name: nginx-proxy1
   restart: always
   ports:
     - "10000:80"
   volumes:
     - ./config/nginx-proxy/conf.d:/etc/nginx/conf.d:ro
   networks:
    s2_net:
     ipv4_address: 172.55.1.3
  • nginx1:構(gòu)建 web 服務(wù),展示一個(gè)靜態(tài)頁面,顯示服務(wù)器 IP ,能達(dá)到驗(yàn)證效果即可。
  • nginx-proxy1:反向代理負(fù)載到兩臺(tái)服務(wù)器的 web 服務(wù)。

4、web 服務(wù)的 nginx 配置文件 config/nginx/conf.d/default.conf  ,內(nèi)容如下:

server {
    listen       80;
    server_name  10.211.55.3;
    client_max_body_size 100M;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html;

    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

5、nginx 負(fù)載的配置文件 config/nginx-proxy/conf.d/default.conf  ,內(nèi)容如下:

upstream my_web {
   server   172.55.1.2 weight=7 max_fails=1 fail_timeout=10s;
   server   10.211.55.14:9000 weight=7 max_fails=1 fail_timeout=10s;
}

server {
    listen       80;
    server_name  10.211.55.3;
    client_max_body_size 100M;

    location / {
        proxy_pass http://my_web;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

6、web/index.html 的內(nèi)容就很簡(jiǎn)單了,只寫了當(dāng)前服務(wù)器的 IP。

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx 1</title>
</head>
<body>
    <h1>Welcome to nginx IP:11.211.55.3</h1>
</body>
</html>

7、在 nginx -ha 目錄中,執(zhí)行 docker-compose up -d 命令進(jìn)行容器的構(gòu)建,構(gòu)建成功后,使用 docker ps 查看如下圖:

圖片

這時(shí)使用 http://10.211.55.3:10000 或者 http://10.211.55.3:9000 應(yīng)該都能訪問:

圖片

8、在 10.211.55.14 服務(wù)器上重復(fù)第二步到第七步的步驟,部署 web 服務(wù)和 nginx 負(fù)載,需要注意的是 nginx 負(fù)載的配置文件 config/nginx-proxy/conf.d/default.conf 的內(nèi)容有所不同,upstream 中的 IP 地址需要修改,如下所示:

upstream my_web {
   server   172.55.1.2 weight=7 max_fails=1 fail_timeout=10s;
   server   10.211.55.3:9000 weight=7 max_fails=1 fail_timeout=10s;
}

server {
    listen       80;
    server_name  10.211.55.14;
    client_max_body_size 100M;

    location / {
        proxy_pass http://my_web;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

除此之外,web 的 html 頁面中的 IP 地址修改為:10.211.55.14 。

9、在兩臺(tái)服務(wù)器上安裝 keepalived ,執(zhí)行下面命令進(jìn)行安裝:

yum install -y keepalived

10、使用 yum 安裝的 keepalived,配置文件在 /etc/keepalived/ 目錄下,將 10.211.55.3 服務(wù)器的 keepalived.conf 文件內(nèi)容替換為下面內(nèi)容:

global_defs {
   script_user root
   enable_script_security
}

vrrp_script check_nginx {
    script /etc/keepalived/check-nginx.sh
    interval 2
}

vrrp_instance Vs_1 {
    state BACKUP # 定義節(jié)點(diǎn)主/備,主MASTER,備BACKUP,這里2個(gè)節(jié)點(diǎn)均為BACKUP
    interface eth0 # 虛擬IP綁定的網(wǎng)卡
    virtual_router_id 32 # 集群號(hào),所有節(jié)點(diǎn)需要相同
    priority 100 # 權(quán)重,2個(gè)節(jié)點(diǎn)權(quán)重一致,降低權(quán)重后會(huì)發(fā)生切換
    advert_int 1 # 檢測(cè)間隔

    # 搶占模式,(nopreempt非搶占模式),配置為搶占模式時(shí),當(dāng)節(jié)點(diǎn)權(quán)重降低時(shí),另外一個(gè)高權(quán)重節(jié)點(diǎn)會(huì)搶占服務(wù),發(fā)生切換;
    # 如果為非搶占模式,上面配置的檢查腳本在檢查到服務(wù)失敗后,降低權(quán)重,但是不會(huì)發(fā)生切換。
    !nopreempt

    authentication {
        auth_type PASS
        auth_pass 1111 # 各節(jié)點(diǎn)密碼一致
    }

    unicast_src_ip 10.211.55.3 # 本端,源地址
    unicast_peer {
      10.211.55.14 # 對(duì)端,目標(biāo)地址
    }
    virtual_ipaddress {
        10.211.55.4  # 虛擬IP
    }
    track_interface {
        eth0 # 檢查網(wǎng)卡健康
    }
    track_script {
        check_nginx
    }
}
  • virtual_ipaddress :定義了虛擬 IP 10.211.55.4 ,后續(xù)訪問將會(huì)使用虛擬 IP 進(jìn)行訪問。
  • unicast_peer:設(shè)置另一臺(tái)服務(wù)器的 IP :10.211.55.14。
  • unicast_src_ip:設(shè)置當(dāng)前服務(wù)器的 IP:10.211.55.3。
  • check_nginx:設(shè)置心跳檢測(cè)的腳本。

11、10.211.55.14 服務(wù)器的配置文件和上面一樣,將 unicast_peer 和 unicast_src_ip 設(shè)置的 IP 互換即可。

12、check_nginx 設(shè)置的心跳檢測(cè)腳本路徑為:/etc/keepalived/check-nginx.sh ,在 /etc/keepalived 目錄下創(chuàng)建 check-nginx.sh 文件,內(nèi)容如下:

#!/bin/bash
count=`netstat -ntpl | grep 10000 | wc -l`
if [ $count -gt 0 ]; then
    exit 0
else
    exit 1
fi
  • 要執(zhí)行 netstat 命令,需要使用 yum -y isntall net-tools 命令安裝相關(guān)依賴。
  • 這段腳本的意思就是使用 netstat 命令查看當(dāng)前系統(tǒng)中所有 TCP 連接的狀態(tài),然后使用 grep 命令篩選出其中監(jiān)聽端口為 10000 的連接,最后使用 wc -l 命令統(tǒng)計(jì)篩選出的行數(shù)。
  • 使用 if 語句對(duì)命令輸出結(jié)果進(jìn)行判斷。如果監(jiān)聽在 TCP 端口 10000 上的進(jìn)程數(shù)量大于 0,則表示有進(jìn)程正在監(jiān)聽該端口,那么腳本就會(huì)執(zhí)行 exit 0 命令來退出,并返回一個(gè)成功的退出碼(0)。反之,如果監(jiān)聽在 TCP 端口 10000 上的進(jìn)程數(shù)量等于 0,則表示沒有進(jìn)程在監(jiān)聽該端口,那么腳本就會(huì)執(zhí)行 exit 1 命令來退出,并返回一個(gè)失敗的退出碼(1)。

13、使用下面命令給 check-nginx.sh  文件設(shè)置權(quán)限:

chmod +x check-nginx.sh

14、配置文件修改好后,執(zhí)行 systemctl start keepalived 啟動(dòng) keepalived 服務(wù),使用命令 systemctl status keepalived 可以查看狀態(tài),如下圖為正常:

圖片

驗(yàn)證

1、兩臺(tái)服務(wù)器都正常運(yùn)行時(shí),使用虛擬 IP + 負(fù)載 Nginx 端口(http://10.211.55.4:10000)進(jìn)行訪問,正常情況下頁面中的 IP 應(yīng)該在 10.211.55.3 和 10.211.55.14 之間來回切換。

2、關(guān)閉 10.211.55.14  服務(wù)器的 9000 端口的 docker 容器,訪問站點(diǎn)頁面應(yīng)該只會(huì)出現(xiàn) IP 10.211.55.3。

3、繼續(xù)關(guān)閉 10.211.55.14  服務(wù)器的 10000 端口的 docker 容器,站點(diǎn)應(yīng)該可以繼續(xù)訪問。

4、關(guān)閉 10.211.55.14 服務(wù)器,站點(diǎn)應(yīng)該可以繼續(xù)訪問。

5、啟動(dòng) 10.211.55.14  服務(wù)器和 9000、10000 端口的容器,訪問頁面,檢查是否恢復(fù)了負(fù)載切換。

6、同樣的操作可以將  10.211.55.3 再來一遍,檢查網(wǎng)頁訪問是否正常。

責(zé)任編輯:姜華 來源: 不止dotNET
相關(guān)推薦

2019-10-09 16:02:16

NginxKeepalivedLvs

2011-11-28 21:01:03

NginxKeepalived高可用

2019-12-24 14:28:00

KeepalivedNginxTomcat

2019-07-30 10:18:06

NginxKeepalived

2015-07-08 10:24:15

NginxKeepalived

2019-09-26 09:04:22

NginxKeepalived服務(wù)器

2015-04-13 09:44:14

Nginxkeepalived負(fù)載均衡

2015-10-21 12:58:58

keepalived集群Linux

2012-02-15 00:01:34

2010-12-08 08:57:11

keepalivedMySQL-HA

2025-09-24 07:23:01

2019-07-02 08:38:45

NginxTomcatKeepalived

2022-07-22 20:00:01

高可用路由

2011-10-10 09:47:32

HAProxy負(fù)載均衡Keepalived

2021-09-17 07:51:24

Keepalived服務(wù)高可用

2018-08-24 08:51:10

haproxykeepalived均衡器

2017-11-13 11:07:32

Nginx搭建高可用

2020-10-28 07:10:07

Nginx高可用高并發(fā)

2011-09-30 13:02:10

51CTO博客一周熱門Web架構(gòu)

2025-03-31 10:40:52

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

欧美激情一区在线观看| 在线欧美亚洲| 91精品久久久久久久久99蜜臂| 亚洲一区二区不卡视频| 国产欧美第一页| 欧美日韩视频| 亚洲国产精品久久久久| 国产亚洲综合视频| 在线观看a视频| 国产精品一二一区| 2018日韩中文字幕| 超薄肉色丝袜一二三| 曰本一区二区| 亚洲成人av一区| 日韩精品久久一区二区三区| 在线免费观看高清视频| 亚洲午夜极品| 亚洲免费人成在线视频观看| 激情黄色小视频| 精品日韩av| 久久精品一区蜜桃臀影院| 国产精品久久婷婷六月丁香| 国产精品精品软件男同| 精品网站aaa| 一本久道中文字幕精品亚洲嫩 | 日本午夜视频在线观看| 最新亚洲精品| 91精品国产丝袜白色高跟鞋| 极品粉嫩国产18尤物| 国产视频网址在线| 日韩精品久久久久久| 久久综合免费视频| a级大片在线观看| 日韩欧美专区| 欧美日韩亚洲系列| 日韩精品免费一区| 成人性爱视频在线观看| 高清在线不卡av| 国产精品一区二区女厕厕| 欧美亚洲天堂网| 亚洲欧洲日韩| 夜夜嗨av一区二区三区免费区| 亚洲av无码专区在线播放中文| 欧美va在线观看| 亚洲国产精品嫩草影院| 亚洲精品美女久久7777777| 肥臀熟女一区二区三区| 狠狠色丁香婷综合久久| 91产国在线观看动作片喷水| 毛片aaaaa| 婷婷综合亚洲| 国产一区二区三区在线播放免费观看| 日本网站在线看| 另类一区二区| 色综合久久综合| 99色这里只有精品| 四虎影院观看视频在线观看| 国产精品久久精品日日| 欧美日韩一区在线观看视频| 香蕉视频国产在线| 成人动漫av在线| 国产精品伊人日日| 国产欧美一级片| 日本va欧美va精品发布| 日韩av免费网站| 国产在线观看黄色| 国产农村妇女精品一区二区| 久久国产精品影视| 四虎884aa成人精品| 波多野结衣在线观看一区二区三区| 日韩午夜小视频| 四虎1515hh.com| 精品国产一区二区三区性色av| 欧美精三区欧美精三区| 天天操夜夜操很很操| 波多野结衣欧美| 日韩精品在线观看一区| 国产18无套直看片| 欧美精品一区二区三区久久久竹菊| 久久久久久国产精品美女| 国产成人无码一区二区三区在线| 久热综合在线亚洲精品| 国产日韩精品电影| 日本黄色大片视频| 欧美高清在线一区二区| 91传媒免费视频| 一级毛片久久久| 9191国产精品| 中文字幕 亚洲一区| 欧美mv日韩| 久久久久久久影院| 波多野结衣mp4| 国产老肥熟一区二区三区| 蜜桃麻豆www久久国产精品| 91在线免费看| 亚洲国产精品一区二区久久恐怖片| av免费网站观看| 中文在线综合| 在线精品国产欧美| 福利一区二区三区四区| 久久99热狠狠色一区二区| 国外成人免费视频| 毛片网站在线免费观看| 欧美日韩在线视频一区| 亚洲va在线va天堂va偷拍| 欧美一级二级三级视频| 久久在线免费观看视频| 国产又黄又猛又粗又爽| 国产一区二区三区精品欧美日韩一区二区三区 | 一本久久a久久精品vr综合 | 99成人精品| 国产有码在线一区二区视频| 艳母动漫在线看| 伊人性伊人情综合网| 国产免费视频传媒| 国内露脸中年夫妇交换精品| 精品国产自在精品国产浪潮 | 欧美一区二区三区四区久久| 性高潮久久久久久久| 亚洲二区精品| 亚洲影院污污.| 日本成人在线播放| 在线观看亚洲a| 亚洲av无码国产精品久久| 欧美涩涩网站| 亚洲一区亚洲二区| 在线免费看黄网站| 91福利社在线观看| 亚洲色图14p| 亚洲福利久久| www.久久艹| www红色一片_亚洲成a人片在线观看_| 91久久人澡人人添人人爽欧美| 给我看免费高清在线观看| 在线不卡视频| 国产亚洲一区在线播放 | 欧洲中文字幕国产精品| 男人天堂一区二区| 一二三区精品福利视频| 在线观看av免费观看| 国产高清一区| 91精品久久久久久久久| 亚洲精品传媒| 欧美日韩精品电影| 手机免费观看av| 蜜臀a∨国产成人精品| 亚洲韩国在线| 婷婷久久免费视频| 久久久精品一区二区三区| 国产伦理吴梦梦伦理| 亚洲三级在线免费| 亚洲成人激情小说| 欧美日韩国产亚洲一区| 都市激情久久久久久久久久久| 青草在线视频在线观看| 精品久久久久久久久久久久久久久久久 | 国产一级二级在线观看| 国产亚洲精品久久久久婷婷瑜伽| 国内成+人亚洲| 老司机2019福利精品视频导航| 亚洲精品在线91| 国产精品久久久久久人| 国产欧美日韩三区| 羞羞的视频在线| 亚洲欧美日韩高清在线| 国产精品.com| 自拍一区在线观看| 一区二区三区在线播放欧美| 91福利免费视频| 1000部国产精品成人观看| 少妇熟女视频一区二区三区| 一本一本久久| 亚洲午夜精品久久| 538任你躁精品视频网免费| 国产91成人video| 一级毛片视频在线| 精品国产91九色蝌蚪| 欧美日韩a v| 综合久久给合久久狠狠狠97色| 亚洲男人天堂2021| 亚洲伦理精品| 中文字幕一区二区三区四区五区六区| 欧美一区一区| 日韩av第一页| 日本高清成人vr专区| 亚洲欧美精品suv| 夜夜爽8888| 精品福利一区二区| 青青草华人在线视频| gogogo免费视频观看亚洲一| 91av俱乐部| 亚洲黄色毛片| 亚洲综合欧美日韩| 香蕉久久精品| 91手机视频在线观看| 三级在线观看视频| 久久的精品视频| 国产女人在线视频| 亚洲第一精品电影| 97超碰人人草| 日本精品视频一区二区| 久久国产一级片| 国产精品亲子伦对白| 精品国产一区在线| 国产美女精品在线| 欧美 日韩 国产 激情| 影音先锋中文字幕一区| 在线一区亚洲| 国产一区二区三区四区五区传媒| yellow视频在线观看一区二区| 日韩另类视频| 51视频国产精品一区二区| 牛牛精品在线| 久久亚洲电影天堂| av资源网在线观看| 国产视频精品va久久久久久| www.五月天激情| 91精品国产乱| 真实新婚偷拍xxxxx| 欧美日韩中文字幕在线视频| 国产精品suv一区二区69| 1000精品久久久久久久久| 国产成人免费观看网站| 久久综合九色综合欧美98| 亚洲精品成人无码毛片| 国产专区欧美精品| a在线观看免费视频| 三级一区在线视频先锋| 国产91在线视频观看| 亚洲区国产区| 成人午夜精品久久久久久久蜜臀| 在线中文字幕亚洲| 中国老女人av| 午夜久久久久| 成人免费在线视频播放| 午夜精品国产| 国产精品久久久影院| 欧美国产专区| 久久久无码中文字幕久...| 国产精品99一区二区三| 中文字幕av导航| 欧美好骚综合网| 天堂v在线视频| 午夜欧美在线| 国产专区在线视频| 国产在线日韩| 日本少妇高潮喷水视频| 国产精品毛片一区二区三区| 无码精品a∨在线观看中文| 在线综合亚洲| 国产又黄又猛视频| 日本不卡的三区四区五区| 中文字幕成人在线视频| 捆绑紧缚一区二区三区视频| 五月六月丁香婷婷| 国产69精品久久久久777| 国产精品久久AV无码| 91蜜桃网址入口| 国产一区二区三区精品在线| 国产精品久久久久久福利一牛影视| 99久久久无码国产精品不卡| 亚洲人成网站影音先锋播放| 久久久久久国产精品免费播放| 亚洲1区2区3区视频| 中文字幕亚洲高清| 在线视频国产一区| 国产又粗又黄又爽视频| 日韩一级片网站| 污视频软件在线观看| 一本久久综合亚洲鲁鲁| 麻豆传媒在线免费看| 欧美人与物videos| 伊人久久综合一区二区| 成人国产在线视频| 风间由美性色一区二区三区四区| 美乳视频一区二区| 国产精品久久久久蜜臀| 日韩中文字幕在线免费| 日韩精品欧美成人高清一区二区| 在线视频观看一区二区| 99久久免费国产| 亚洲天堂av中文字幕| 亚洲精品免费一二三区| 黄色片中文字幕| 91麻豆精品国产91久久久使用方法| 性欧美8khd高清极品| 亚洲桃花岛网站| 51xtv成人影院| 国产精品成人国产乱一区| 欧州一区二区三区| 欧洲精品码一区二区三区免费看| 五月精品视频| 欧在线一二三四区| 国产成人精品在线看| 91精品国自产在线| 亚洲高清久久久| 91tv国产成人福利| 亚洲欧美日韩网| 牛牛电影国产一区二区| 国产日本欧美一区二区三区| 欧美深夜视频| 成年丰满熟妇午夜免费视频 | 97电影在线看视频| 97视频在线免费观看| 2019中文亚洲字幕| 日本在线视频一区| 一本色道精品久久一区二区三区| 亚洲午夜激情影院| 国产日产欧美一区| 日本中文字幕网| 欧美一区二区私人影院日本| 九色视频成人自拍| 久久久欧美一区二区| 99精品美女视频在线观看热舞| 日韩精品久久一区二区三区| 99国产精品久久久久久久| 91人妻一区二区三区| 中文字幕欧美激情| 9i精品福利一区二区三区| 亚洲国产成人久久| 亚洲妇熟xxxx妇色黄| 国产日韩精品视频| 成人系列视频| 热久久精品国产| 久久久精品一品道一区| 日韩欧美三级在线观看| 精品国内二区三区| 尤物视频在线看| 亚洲精品免费在线视频| 99久久亚洲精品蜜臀| 欧美精品久久久久久久久25p| 国产午夜亚洲精品理论片色戒| 国产精品100| 亚洲精品资源美女情侣酒店| 麻豆理论在线观看| 久久综合伊人77777麻豆| 亚洲人成久久| 添女人荫蒂视频| 精品久久久久久亚洲精品| 香蕉视频黄在线观看| 555www成人网| 久久av免费| 91人人澡人人爽人人精品| 欧美国产乱子伦 | 亚洲成人av在线播放| 天堂8中文在线| 国产欧美一区二区三区另类精品| 亚洲免费精品| 亚洲永久精品ww.7491进入| 欧美视频一二三| 国产精品秘入口| 国产原创欧美精品| 综合在线一区| 扒开伸进免费视频| 欧美日韩国产精品| 国产小视频在线观看| 国产精品日日摸夜夜添夜夜av| 日本一区二区高清不卡| 亚洲综合av在线播放| 一区二区三区久久| 日本精品久久久久| 热99精品只有里视频精品| 日本大胆欧美| 日本亚洲一区二区三区| 亚洲一区免费在线观看| 日本一区二区三区在线观看视频| 国产精品成人一区| 亚洲第一天堂| 日本性生活一级片| 色婷婷综合在线| 国产原厂视频在线观看| 精品无人区一区二区三区| 日本aⅴ精品一区二区三区 | 日本黄色网址大全| 欧美日韩色一区| 欧美aaaaaaa| 欧美最大成人综合网| 激情小说亚洲一区| 国产一级特黄aaa大片| 亚洲人成电影网站色| 麻豆国产精品| 黑人糟蹋人妻hd中文字幕| 中文字幕一区二| 色呦呦中文字幕| 国产人妖伪娘一区91| 亚洲片区在线| 午夜成人亚洲理伦片在线观看| 亚洲国产成人av在线| 久久人体av| 91九色在线观看视频| 中文字幕中文字幕中文字幕亚洲无线| 亚洲精品一区二区三区蜜桃 | 国产l精品国产亚洲区久久| 一色屋精品亚洲香蕉网站| 亚洲人视频在线观看| 亚洲xxxxx| 日本va欧美va精品发布| 日本一本高清视频| 久久av.com| 久久高清免费|