nginx搭建高可用集群的實現(xiàn)方法
Keepalived+Nginx 高可用集群(主從模式)
集群架構(gòu)圖

1、準備兩臺裝有Nginx虛擬機
2、都需安裝Keepalived
yum install keepalived -y
查看是否安裝成功
rpm -q -a keepalived
安裝之后,在 etc 里面生成目錄 keepalived,有文件 keepalived.conf
3、完成高可用配置(主從配置)
修改/etc/keepalived/keepalivec.conf 配置文件
主服務配置:keepalivec.conf
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.19.129
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_script chk_http_port {
script "/usr/local/src/nginx_check.sh"
interval 2 #(檢測腳本執(zhí)行的間隔)
weight 2
}
vrrp_instance VI_1 {
state MASTER # 備份服務器上將 MASTER 改為 BACKUP
interface ens33 //網(wǎng)卡
virtual_router_id 51 # 主、備機的 virtual_router_id 必須相同
priority 100 # 主、備機取不同的優(yōu)先級,主機值較大,備份機值較小
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.19.50 # VRRP H 虛擬地址(非真實物理地址)
}
}從服務配置:keepalivec.conf
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.19.129
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_script chk_http_port {
script "/usr/local/src/nginx_check.sh"
interval 2 #(檢測腳本執(zhí)行的間隔)
weight 2
}
vrrp_instance VI_1 {
state BACKUP # 備份服務器上將 MASTER 改為 BACKUP
interface ens33 //網(wǎng)卡
virtual_router_id 51 # 主、備機的 virtual_router_id 必須相同
priority 90 # 主、備機取不同的優(yōu)先級,主機值較大,備份機值較小
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.19.50 # VRRP H 虛擬地址(非真實物理地址)
}
}在/usr/local/src 添加檢測腳本,兩臺虛擬機都要添加
添加文件: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把兩臺服務器上 nginx 和 keepalived 啟動 重新啟動 nginx 啟動 keepalived:
systemctl start keepalived.service
檢驗keepalived是否啟動成功
ps -ef | grep keepalived
最終測試 在瀏覽器地址欄輸入 虛擬 ip 地址 192.168.17.50訪問

在master 輸入 ip a 可以查看到

停止主服務器仍可以訪問從服務器
systemctl stop keepalived.service docker stop mynginx
至此實現(xiàn)nginx高可用集群。更多相關(guān)nginx 高可用集群內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Nginx實戰(zhàn)之反向代理WebSocket的配置實例
最近在工作中遇到一個需求,需要使用 nginx 反向代理websocket,經(jīng)過查找一番資料,目前已經(jīng)測試通過,所以這篇文章主要給大家介紹了Nginx反向代理WebSocket配置的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-04-04
Nginx 請求壓縮的實現(xiàn)(動態(tài)壓縮,靜態(tài)壓縮)
本文主要介紹了Nginx 請求壓縮的實現(xiàn)(動態(tài)壓縮,靜態(tài)壓縮),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-03-03
nginx反向代理失效前端無法獲取后端的數(shù)據(jù)解決辦法
Nginx服務器的反向代理服務是其最常用的重要功能,由反向代理服務也可以衍生出很多與此相關(guān)的Nginx服務器重要功能,下面這篇文章主要給大家介紹了關(guān)于nginx反向代理失效前端無法獲取后端的數(shù)據(jù)解決的相關(guān)資料,需要的朋友可以參考下2023-12-12

