日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

keepalived实现nginx的高可用(双主模型)

發布時間:2023/12/9 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 keepalived实现nginx的高可用(双主模型) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實驗環境:

? ? RS1:rip(172.16.125.7),安裝httpd軟件包;

? ? RS2:rip(172.16.125.8),安裝httpd軟件包;

? ? director1(7-1.lcs.com):vip(172.16.125.100),dip(172.16.125.5),安裝nginx、keepalived軟件包。

? ? director2(7-2.lcs.com):vip(172.16.125.110),dip(172.16.125.6),安裝nginx、keepalived軟件包。

? ? 首先關閉所有節點上iptables和selinux,同時進行時間同步。

使用雙主模型實現nginx的高可用:

(1)在兩臺keepalived高可用主機上安裝keepalived和nginx軟件包,并提供配置文件。

? ? a.首先使用時間同步,保證節點上的時間是同步的。

? ? b.首先使用nginx反向代理實現后臺RS上的web服務的負載均衡,在nginx的主配置文件(/etc/nginx/nginx.conf)中,進行修改。

? ??? ? 在http段中添加upstream,將后端兩臺RS加入到該upstream中。

upstream?myblancer?{server?172.16.125.7:80;server?172.16.125.8:80;}

????????在server段中location /{}中加入代理,實現負載均衡調度。

location?/?{proxy_pass?http://myblancer;}

????c.進行檢測,是否實現了后端RS的輪詢調度。

????????

????????

(2)上述說明已經通過nginx的反向代理實現了http服務的負載均衡。在此處就可以開始配置keepalived的主配置文件,實現對nginx的高可用。詳細配置文件如下:

? ? keepalived的配置文件1:

global_defs?{notification_email?{root@localhostfailover@firewall.locsysadmin@firewall.loc}notification_email_from?Alexandre.Cassen@firewall.locsmtp_server?127.0.0.1smtp_connect_timeout?30router_id?LVS_DEVEL } vrrp_script?chk_nginx?{?script?"killall?-0?nginx?&>?/dev/null"interval?1weight?-20 }vrrp_instance?VI_1?{state?MASTERinterface?eno16777736virtual_router_id?100priority?100advert_int?1authentication?{auth_type?PASSauth_pass?100}virtual_ipaddress?{172.16.125.100/16?dev?eno16777736?label?eno16777736:0}track_script?{chk_nginx??} }vrrp_instance?VI_2?{state?BACKUPinterface?eno16777736virtual_router_id?110priority?90advert_int?1authentication?{auth_type?PASSauth_pass?110}virtual_ipaddress?{172.16.125.110/16?dev?eno16777736?label?eno16777736:1}track_script?{chk_nginx} }

????keepalived配置文件2:

global_defs?{notification_email?{root@localhostfailover@firewall.locsysadmin@firewall.loc}notification_email_from?Alexandre.Cassen@firewall.locsmtp_server?127.0.0.1smtp_connect_timeout?30router_id?LVS_DEVEL } vrrp_script?chk_nginx?{script?"killall?-0?nginx?&>?/dev/null"interval?1weight?-20 }? vrrp_instance?VI_1?{state?BACKUPinterface?eno16777736virtual_router_id?100priority?90advert_int?1authentication?{auth_type?PASSauth_pass?100}virtual_ipaddress?{172.16.125.100/16?dev?eno16777736?label?eno16777736:0}track_script?{chk_nginx} }vrrp_instance?VI_2?{state?MASTERinterface?eno16777736virtual_router_id?110priority?100advert_int?1authentication?{auth_type?PASSauth_pass?110}virtual_ipaddress?{172.16.125.110/16?dev?eno16777736?label?eno16777736:1}track_script?{chk_nginx} }

????使用如下這個腳本檢測nginx服務的狀態,如果nginx服務發生了問題,那么在該服務器上的vip會自動流動到另一臺高可用服務器上。使用下邊這個腳本要保證高可用服務器上有killall命令,該命令是由psmisc軟件包提供

vrrp_script?chk_nginx?{script?"killall?-0?nginx?&>?/dev/null"interval?1weight?-20 }

????????通過這一步的keepalived的配置,keepalived服務已經配置完成,那么在這兩臺director上啟動keepalived和nginx服務。

? ??? ? a.查看兩臺director上vip是否已經添加成功。

????????

????????

????????b.分別訪問vip(172.16.125.100)和vip(172.16.125.110)

????????

????c.在director1上關閉nginx服務,檢測到vip已經消失,轉移到director2上。

????????

????????



????????


轉載于:https://blog.51cto.com/angrybird/1706598

總結

以上是生活随笔為你收集整理的keepalived实现nginx的高可用(双主模型)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。