nginx中如何配置keepalived,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
成都創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),先為興賓等服務(wù)建站,興賓等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為興賓企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
1.安裝nginx
2.安裝keepalived
3.nginx監(jiān)控腳本
#!/bin/sh A=`ps -C nginx --no-header |wc -l` if [ $A -eq 0 ];then /usr/local/nginx/sbin/nginx sleep 2 B=`ps -C nginx --no-header |wc -l` if [ $B -eq 0 ]; then systemctl stop keepalived fi fi
4.keepalived.conf ( MASTER )
! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_script chk_nginx { script "/etc/keepalived/check_nginx.sh" interval 2 weight -5 fall 3 rise 2 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.2.213 } track_script { chk_nginx } } virtual_server 192.168.2.213 443 { delay_loop 6 lb_algo rr lb_kind NAT persistence_timeout 50 protocol TCP real_server 192.168.2.211 80 { weight 1 TCP_CHECK{ connect_port 80 retry 3 } } }
5.keepalived.conf ( BACKUP )
! Configuration File for keepalived global_defs { router_id LVS_DEVEL } vrrp_script chk_nginx { script "/etc/keepalived/check_nginx.sh" interval 2 weight -5 fall 3 rise 2 } vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.2.213 } track_script { chk_nginx } } virtual_server 192.168.2.213 443 { delay_loop 6 lb_algo rr lb_kind NAT persistence_timeout 50 protocol TCP real_server 192.168.2.212 80 { weight 1 TCP_CHECK{ connect_port 80 retry 3 } } }
6.配置選項(xiàng)說(shuō)明
global_defs
notification_email
: keepalived在發(fā)生諸如切換操作時(shí)需要發(fā)送email通知地址,后面的 smtp_server 相比也都知道是郵件服務(wù)器地址。也可以通過(guò)其它方式報(bào)警,畢竟郵件不是實(shí)時(shí)通知的。
router_id
: 機(jī)器標(biāo)識(shí),通常可設(shè)為hostname。故障發(fā)生時(shí),郵件通知會(huì)用到
vrrp_instance
state
: 指定instance(Initial)的初始狀態(tài),就是說(shuō)在配置好后,這臺(tái)服務(wù)器的初始狀態(tài)就是這里指定的,但這里指定的不算,還是得要通過(guò)競(jìng)選通過(guò)優(yōu)先級(jí)來(lái)確定。如果這里設(shè)置為MASTER,但如若他的優(yōu)先級(jí)不及另外一臺(tái),那么這臺(tái)在發(fā)送通告時(shí),會(huì)發(fā)送自己的優(yōu)先級(jí),另外一臺(tái)發(fā)現(xiàn)優(yōu)先級(jí)不如自己的高,那么他會(huì)就回?fù)屨紴镸ASTER
interface
: 實(shí)例綁定的網(wǎng)卡,因?yàn)樵谂渲锰摂MIP的時(shí)候必須是在已有的網(wǎng)卡上添加的
mcast_src_ip
: 發(fā)送多播數(shù)據(jù)包時(shí)的源IP地址,這里注意了,這里實(shí)際上就是在那個(gè)地址上發(fā)送VRRP通告,這個(gè)非常重要,一定要選擇穩(wěn)定的網(wǎng)卡端口來(lái)發(fā)送,這里相當(dāng)于heartbeat的心跳端口,如果沒(méi)有設(shè)置那么就用默認(rèn)的綁定的網(wǎng)卡的IP,也就是interface指定的IP地址
virtual_router_id
: 這里設(shè)置VRID,這里非常重要,相同的VRID為一個(gè)組,他將決定多播的MAC地址
priority
: 設(shè)置本節(jié)點(diǎn)的優(yōu)先級(jí),優(yōu)先級(jí)高的為master
advert_int
: 檢查間隔,默認(rèn)為1秒。這就是VRRP的定時(shí)器,MASTER每隔這樣一個(gè)時(shí)間間隔,就會(huì)發(fā)送一個(gè)advertisement報(bào)文以通知組內(nèi)其他路由器自己工作正常
authentication
: 定義認(rèn)證方式和密碼,主從必須一樣
virtual_ipaddress
: 這里設(shè)置的就是VIP,也就是虛擬IP地址,他隨著state的變化而增加刪除,當(dāng)state為master的時(shí)候就添加,當(dāng)state為backup的時(shí)候刪除,這里主要是有優(yōu)先級(jí)來(lái)決定的,和state設(shè)置的值沒(méi)有多大關(guān)系,這里可以設(shè)置多個(gè)IP地址
track_script
: 引用VRRP腳本,即在 vrrp_script 部分指定的名字。定期運(yùn)行它們來(lái)改變優(yōu)先級(jí),并最終引發(fā)主備切換。
vrrp_script
告訴 keepalived 在什么情況下切換,所以尤為重要。可以有多個(gè) vrrp_script
script
: 自己寫(xiě)的檢測(cè)腳本。也可以是一行命令如killall -0 nginx
interval 2
: 每2s檢測(cè)一次
weight -5
: 檢測(cè)失敗(腳本返回非0)則優(yōu)先級(jí) -5
fall 2
: 檢測(cè)連續(xù) 2 次失敗才算確定是真失敗。會(huì)用weight減少優(yōu)先級(jí)(1-255之間)
rise 1
: 檢測(cè) 1 次成功就算成功。但不修改優(yōu)先級(jí)
關(guān)于nginx中如何配置keepalived問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
網(wǎng)站題目:nginx中如何配置keepalived
當(dāng)前鏈接:http://chinadenli.net/article46/ihdieg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、微信小程序、小程序開(kāi)發(fā)、網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷(xiāo)推廣、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)