Keeplived配置Nginx雙機高可用

2021-09-21 10:26:03 字數 2170 閱讀 1956

一、簡介

不管是keepalived還是heartbeat做高可用,其高可用,都是站在伺服器指令碼去說的高可用,而不是服務的角度。

也就是說,如果伺服器down機或者網路出現故障,高可用是可以實現自動切換的。如果執行的服務,比如nginx掛掉

這些高可用軟體是意識不到的,需要自己寫指令碼去實現服務的切換。

二、安裝配置keepalived

複製內容到剪貼簿

**:# ./configure

# make

# make install

# cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/

# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/

# cp /usr/local/sbin/keepalived /usr/bin/

# chkconfig --add keepalived 

# mkdir /etc/keepalived/

# cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/

編輯master的主配置檔案(master: 1.1.1.1)

複製內容到剪貼簿

**:# vim /etc/keepalived/keepalived.conf

! configuration file for keepalived

global_defs

vrrp_script chk_nginx

vrrp_instance vi_1

virtual_ipaddress

track_script

}

編輯backup的主配置檔案(backup:1.1.1.2)

複製內容到剪貼簿

**:# vim /etc/keepalived/keepalived.conf

! configuration file for keepalived

global_defs

vrrp_script chk_nginx

vrrp_instance vi_1

virtual_ipaddress

track_script

}

三、啟動服務與指令碼編寫(主機和備機都要執行)

複製內容到剪貼簿

**:# service nginx start

# service keepalived start

編寫監控nginx的指令碼

複製內容到剪貼簿

**:# vim /opt/monnginx.sh

#!/bin/bash

# author: honway.liu

# date: 2013-03-15

if [ $(ps -c nginx --no-header | wc -l) -eq 0 ]; then

service nginx start

fisleep 3

if [ $(ps -c nginx --no-header | wc -l) -eq 0 ]; then

service keepalived stop

fi

改進指令碼,加上報警功能。

複製內容到剪貼簿

**:# vim /opt/monnginx.sh

#!/bin/bash

# author: honway.liu

# date: 2013-03-15

ipaddr=$(ip addr show eth0|awk '' | sed -n 3p)

contact=(137******[email protected])

num=$

function email() {

for ((i=0;i這裡的報警使用的是139郵箱,在139郵箱裡面設定有郵件的時候,通知到手機,並且以長簡訊的方式。

需要開戶本機的sendmail服務。'

Keeplived配置Nginx雙機高可用

一 簡介 不管是keepalived還是heartbeat做高可用,其高可用,都是站在伺服器指令碼去說的高可用,而不是服務的角度。也就是說,如果伺服器down機或者網路出現故障,高可用是可以實現自動切換的。如果執行的服務,比如nginx掛掉 這些高可用軟體是意識不到的,需要自己寫指令碼去實現服務的切...

Linux配置LNMP環境 一 配置Nginx

1.先cd到 usr local src 3.解壓到當前目錄 4.cd到解壓的nginx 1.12.0目錄,ls看到裡面有乙個configure檔案 5.然後按照.configure prefix usr local nginx 7.然後再安裝nginx帶上pcre的路徑.configure pre...

linux centOS 下安裝配置nginx

解壓好後移至目錄 root vm 0 15 centos nginx cd nginx 1.5.9 設定nginx安裝目錄,如果沒有指定,預設為 usr local nginx root vm 0 15 centos nginx 1.5.9 configure prefix usr local ng...