keepalived單主模型和nginx雙主模型

主程序:keepalived

主配置文件:/etc/keepalived/keepalived.conf

單主模型ipvs:

global_defs {
notification_email {
root@localhost
}
notification_email_from keepalived@localhost
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id node1
vrrp_mcast_group4 224.0.100.19
}
vrrp_instance VI_1 {
state MASTER
interface eno16777736
virtual_router_id 14
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 571f97b2
}
virtual_ipaddress {
10.1.0.93/16 dev eno16777736
}
notify_master “/etc/keepalived/notify.sh master”
notify_backup “/etc/keepalived/notify.sh backup”
notify_fault “/etc/keepalived/notify.sh fault”
}
virtual_server 10.1.0.93 80 {
delay_loop 3
lb_algo rr
lb_kind DR
protocol TCP
sorry_server 127.0.0.1 80
real_server 10.1.0.69 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 1
nb_get_retry 3
delay_before_retry 1
}
}
real_server 10.1.0.71 80 {
weight 1
HTTP_GET {
url {
path /
status_code 200
}
connect_timeout 1
nb_get_retry 3
delay_before_retry 1
}
}
}

雙主模型nginx:

global_defs {
notification_email {
root@localhost
}
notification_email_from keepalived@localhost
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id node1
vrrp_mcast_group4 224.0.100.19
}
vrrp_script chk_down {
script “[[ -f /etc/keepalived/down ]] && exit 1 || exit 0”
interval 1
weight -5
}
vrrp_script chk_nginx {
script “killall -0 nginx && exit 0 || exit 1”
interval 1
weight -5
fall 2
rise 1
}
vrrp_instance VI_1 {
state MASTER
interface ens33
virtual_router_id 14
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 571f97b2
}
virtual_ipaddress {
172.16.0.99/16 dev ens33
}
track_script {
chk_down
chk_nginx
}
notify_master “/etc/keepalived/notify.sh master”
notify_backup “/etc/keepalived/notify.sh backup”
notify_fault “/etc/keepalived/notify.sh fault”
}
vrrp_instance VI_2 {
state MASTER
interface ens33
virtual_router_id 24
priority 96
advert_int 1
authentication {
auth_type PASS
auth_pass 571errrb2
}
virtual_ipaddress {
172.16.0.98/16 dev ens33
}
track_script {
chk_down
chk_nginx
}
notify_master “/etc/keepalived/notify.sh master”
notify_backup “/etc/keepalived/notify.sh backup”
notify_fault “/etc/keepalived/notify.sh fault”
}

示例通知腳本:

#!/bin/bash
#
contact=’root@localhost’
notify() {
mailsubject=”$(hostname) to be $1, vip floating”
mailbody=”$(date +’%F %T’): vrrp transition, $(hostname) changed to be $1″
echo “$mailbody” | mail -s “$mailsubject” $contact
}
case $1 in
master)
notify master
;;
backup)
notify backup
;;
fault)
notify fault
;;
*)
echo “Usage: $(basename $0) {master|backup|fault}”
exit 1
;;
esac

原創文章,作者:z long,如若轉載,請注明出處:http://www.www58058.com/84220

(1)
z longz long
上一篇 2017-08-08 13:48
下一篇 2017-08-08 14:07

相關推薦

  • Linux不同發行版之間的聯系與區別

    Linux發行版有商業版、社區版兩類。兩者的共同點都是GNU/Linux發行版,區別在于商業版是由商業公司維護,社區版是社區組織維護。由于linux發行版都要遵循GPL協定,任何人都有使用、共享、修改軟件源代碼的自由,所以商業版的收入主要來自向企業提供支持服務,它的軟件基本都是免費的。

    Linux干貨 2018-03-04
  • 計算機基礎及Linux基礎入門

    一.計算機的組成及其功能一.計算機的組成及其功能? 1.組成部分: 計算器是由運算器,控制器,存儲器,輸入設備以及輸出設備五大部件組成。 2.功能: 運算器: ? ?對數據進行各種運算 存儲器: ? ?存儲程序和各種數據信息,并能在計算機運行過程中高速、自動地完成程序或數據的存取 控制器: ? ?控制器是整個計算機系統的控制中心,指揮計算機各部分協調地工作,…

    2017-09-16
  • 計算機基礎知識及基本命令(20170214)

    計算機基礎知識 操作系統相關 linux分區介紹 安裝linux linux基本命令    一、計算機基礎知識       計算機(computer):計算機(Computer):俗稱電腦,是一種能接收和存儲信息,并按照存儲在其內部的程序對海量數據進行自動、高速地處理,然后把處理結果輸出的現代化智能電子設備 …

    Linux干貨 2017-02-14
  • 文本處理章練習題

    2017.7.27練習 1、找出ifconfig “網卡名” 命令結果中本機的IPv4地址 ifconfig |head -n 2 |tail -n 1|tr -s ” ” : |cut -d: -f4   2、查出分區空間使用率的最大百分比值 df|tr -s ‘ ‘ %|sort -t% -k5 …

    2017-07-29
  • 0808文本處理作業

                           1 、刪除/etc/grub2.conf 文件中所有以空白開頭的行行首的空白字符。 答:sed  ‘@^[[:space]]\+@@’  /etc/grub2/cf…

    Linux干貨 2016-08-11
  • 第一周總結(linux系統初識和簡單命令)

    一、linux操作系統初識         了解操作系統之前我們需要先了解一下計算機的硬件組成,因為操作系統都是運行在硬件之上。遵循馮諾依曼體系,計算機是由控制器、運算器、存儲器、輸入設備、輸出設備五部分組成。對應到我們現在使用計算機上硬件分別為:        &nb…

    Linux干貨 2016-12-26
欧美性久久久久