backup:192.168.133.130 (lamp,沒有nginx服務(wù))

兩臺機器都安裝keepalived

執(zhí)行yum install -y keepalived

為了方便做實驗

檢查兩臺機器的selinux,iptables兩個防火墻情況,selinux需要關(guān)閉,iptables需要關(guān)閉firewalld

對backup機器安裝nginx服務(wù)

yum install -y nginx master機器配置

服務(wù)工具準(zhǔn)備好以后,就配置keepalived 默認(rèn)的配置文件路徑在

/etc/keepalived/keepalived.conf

global_defs { notification_email { //郵件 aming@aminglinux.com } notification_email_from root@aminglinux.com smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id LVS_DEVEL } vrrp_script chk_nginx { script "/usr/local/sbin/check_ng.sh" //檢查服務(wù)是否正常,通過腳本實現(xiàn),檢查服務(wù)健康狀態(tài) interval 3 //檢查時間 } vrrp_instance VI_1 { state MASTER //定義master相關(guān) interface ens33 //通過那個網(wǎng)站使用vrrp協(xié)議,配置時,需注意你的網(wǎng)卡配置文件是否是哪個。因為系統(tǒng)ens并不是固定的。 virtual_router_id 51 //定義路由器ID ,配置的時候和從機器一致 priority 100 //權(quán)重, advert_int 1 authentication { //認(rèn)證相關(guān)信息 auth_type PASS auth_pass aminglinux>com } virtual_ipaddress { //定義一個公有IP(VIP) 192.168.188.100 //更改為192.168.133.100 } track_script { chk_nginx } }

virtual_ipaddress:簡稱VIP,這個vip,兩臺機器,一個主,一個從,正常的情況是主在服務(wù),主宕掉了,從起來了,從啟動服務(wù),從啟動nginx以后,,啟動以后,訪問那個IP呢?把域名解析到那個IP上呢?假如解析到主上,主宕掉了,所以這個,需要定義一個公有IP(主上用的IP,從上也用的IP);這個IP是隨時可以換掉,去配置的

定義一個check的腳本

#!/bin/bash #時間變量,用于記錄日志 d=`date –date today %Y%m%d_%H:%M:%S` #計算nginx進程數(shù)量 n=`ps -C nginx –no-heading|wc -l` #如果進程為0,則啟動nginx,并且再次檢測nginx進程數(shù)量, #如果還為0,說明nginx無法啟動,此時需要關(guān)閉keepalived if [ $n -eq "0" ]; then /etc/init.d/nginx start n2=`ps -C nginx –no-heading|wc -l` if [ $n2 -eq "0" ]; then echo "$d nginx down,keepalived will stop" >> /var/log/check_ng.log systemctl stop keepalived //停止keepalived,涉及到一個“腦裂”知識 fi fi “腦裂” 在高可用(HA)系統(tǒng)中,當(dāng)聯(lián)系2個節(jié)點的“心跳線”斷開時,本來為一整體、動作協(xié)調(diào)的HA系統(tǒng),就分裂成為2個獨立的個體。 由于相互失去了聯(lián)系,都以為是對方出了故障。兩個節(jié)點上的HA軟件像“裂腦人”一樣,爭搶“共享資源”、爭起“應(yīng)用服務(wù)”,就會發(fā)生嚴(yán)重——或者共享資源被瓜分、2邊“服務(wù)”都起不來了;或者2邊“服務(wù)”都起來了,但同時讀寫“共享存儲”,導(dǎo)致數(shù)據(jù)損壞

腳本創(chuàng)建完以后還要調(diào)整權(quán)限;如果不調(diào)整權(quán)限的話,文件就沒有辦法自動加載

啟動keepalived

systemctl start keepalived

檢查服務(wù)啟動狀態(tài)

[root@aminglinux-02 bin]# ps aux |grep keepalived root 2552 0.0 0.0 111708 1308 ? Ss 12:34 0:00 /usr/sbin/keepalived -D root 2553 0.0 0.1 111708 2560 ? S 12:34 0:00 /usr/sbin/keepalived -D root 2554 0.0 0.0 111708 1528 ? S 12:34 0:00 /usr/sbin/keepalived -D root 2564 0.0 0.0 112664 976 pts/0 S 12:34 0:00 grep –color=auto keepalived [root@aminglinux-02 bin]# ps aux |grep nginx root 1233 0.0 0.0 45484 1256 ? Ss 10:44 0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf nobody 1235 0.0 0.2 47972 4152 ? S 10:44 0:00 nginx: worker process nobody 1236 0.0 0.2 47972 3896 ? S 10:44 0:00 nginx: worker process root 2566 0.0 0.0 112664 972 pts/0 R 12:35 0:00 grep –color=auto nginx

先停止nginx 看看是否會自動啟動

[root@aminglinux-02 bin]# date 2017年 09月 04日 星期一 12:37:31 CST [root@aminglinux-02 bin]# /etc/init.d/nginx stop Stopping nginx (via systemctl): [ 確定 ] [root@aminglinux-02 bin]# !ps ps aux |grep nginx root 2627 0.0 0.0 45484 1276 ? Ss 12:38 0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf nobody 2631 0.0 0.2 47972 3912 ? S 12:38 0:00 nginx: worker process nobody 2632 0.0 0.2 47972 3912 ? S 12:38 0:00 nginx: worker process root 2640 0.0 0.0 112664 968 pts/0 R 12:38 0:00 grep –color=auto nginx

通過時間信息,可以查看到,在停止nginx之后,因為check_ng的檢測腳本又重新把nginx自動啟動起來了

查看當(dāng)前的網(wǎng)卡情況

[root@aminglinux-02 bin]# ip add 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:c4:13:b8 brd ff:ff:ff:ff:ff:ff inet 192.168.133.131/24 brd 192.168.133.255 scope global ens32 valid_lft forever preferred_lft forever inet 192.168.133.100/32 scope global ens32 valid_lft forever preferred_lft forever inet6 fe80::6e6a:61ff:f17c:5942/64 scope link valid_lft forever preferred_lft forever

發(fā)現(xiàn)網(wǎng)卡多了一個ip,這個就是vip ,高可用專用的IP,用于讓從機器解析web服務(wù)的IP

backup 機器配置

配置backup機器的keepalived配置

global_defs { notification_email { aming@aminglinux.com } notification_email_from root@aminglinux.com smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id LVS_DEVEL } vrrp_script chk_nginx { script "/usr/local/sbin/check_ng.sh" interval 3 } vrrp_instance VI_1 { state BACKUP //這個。和master不一樣的名字 interface ens32 virtual_router_id 51 //和主機器 一直 priority 90 //比主機器小的數(shù)值 advert_int 1 authentication { auth_type PASS auth_pass aminglinux>com } virtual_ipaddress { 192.168.133.100 //公用IP } track_script { chk_nginx } }

配置check 檢測腳本

#時間變量,用于記錄日志 d=`date –date today %Y%m%d_%H:%M:%S` #計算nginx進程數(shù)量 n=`ps -C nginx –no-heading|wc -l` #如果進程為0,則啟動nginx,并且再次檢測nginx進程數(shù)量, #如果還為0,說明nginx無法啟動,此時需要關(guān)閉keepalived if [ $n -eq "0" ]; then systemctl start nginx //啟動命令不一樣,因為從是yum安裝的,所以使用的systemctl命令啟動 n2=`ps -C nginx –no-heading|wc -l` if [ $n2 -eq "0" ]; then echo "$d nginx down,keepalived will stop" >> /var/log/check_ng.log systemctl stop keepalived fi fi

更改腳本權(quán)限

chmod 755 /usr/local/sbin/check_ng.sh

啟動keepalived

systemctl start keepalived

檢測 keepalived 啟動狀況

[root@localhost ~]# ps aux |grep keepalived root 3728 0.0 0.0 111708 1304 ? Ss 12:51 0:00 /usr/sbin/keepalived -D root 3729 0.0 0.1 111708 2556 ? S 12:51 0:00 /usr/sbin/keepalived -D root 3730 0.0 0.0 111708 1640 ? S 12:51 0:00 /usr/sbin/keepalived -D root 3798 0.0 0.0 112664 980 pts/0 S 12:51 0:00 grep –color=auto keepalived

現(xiàn)在主和從的keepalived都配置好了,主和從機器上都nginx,那么如何區(qū)分這個nginx

查看主機器,先的nginx配置文件,的default主機配置

[root@aminglinux-02 bin]# cat /usr/local/nginx/conf/vhost/aaa.com.conf server { listen 80 default_server; server_name aaa.com; index index.html index.htm index.php; root /data/wwwroot/default; location ~ .php$ { include fastcgi_params; fastcgi_pass unix:/tmp/aming.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /data/wwwroot/default$fastcgi_script_name; } }

這個就是默認(rèn)的虛擬主機,對默認(rèn)的索引頁做個配置

vim /data/wwwroot/default/index.html //內(nèi)容如下

Master Master This is the default site.

查看從機器,因為從機器是yum安裝的

所以默認(rèn)的索引頁在

vim /usr/share/nginx/html/index.html //修改為

Backup Backup

這是在瀏覽器訪問主機器的頁面為

在瀏覽器訪問從機器

訪問VIP 地址的時候

因為,keepalived服務(wù)器啟用,頁面優(yōu)先調(diào)用的服務(wù)是主機器上的頁面,所以這是訪問到的頁面是主機器的默認(rèn)索引頁

測試高可用

模擬,主機器宕機環(huán)境,最快,最簡單直接的方法,就是直接關(guān)閉keepalived服務(wù) 嘗試關(guān)閉主機上kepalived服務(wù)

[root@aminglinux-02 bin]# ls /etc/sh [root@aminglinux-02 bin]# ip add 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:c4:13:b8 brd ff:ff:ff:ff:ff:ff inet 192.168.133.131/24 brd 192.168.133.255 scope global ens32 valid_lft forever preferred_lft forever inet 192.168.133.100/32 scope global ens32 valid_lft forever preferred_lft forever inet6 fe80::6e6a:61ff:f17c:5942/64 scope link valid_lft forever preferred_lft forever [root@aminglinux-02 bin]# systemctl stop keepalived [root@aminglinux-02 bin]# ip add 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:c4:13:b8 brd ff:ff:ff:ff:ff:ff inet 192.168.133.131/24 brd 192.168.133.255 scope global ens32 valid_lft forever preferred_lft forever inet6 fe80::6e6a:61ff:f17c:5942/64 scope link valid_lft forever preferred_lft forever.

查看日志

[root@aminglinux-02 bin]# tail /var/log/messages Sep 4 12:38:55 aminglinux-02 Keepalived_vrrp[2606]: VRRP_Instance(VI_1) setting protocol VIPs. Sep 4 12:38:55 aminglinux-02 Keepalived_vrrp[2606]: VRRP_Instance(VI_1) Sending gratuitous ARPs on ens32 for 192.168.133.100 Sep 4 12:38:55 aminglinux-02 Keepalived_healthcheckers[2605]: Netlink reflector reports IP 192.168.133.100 added Sep 4 12:39:00 aminglinux-02 Keepalived_vrrp[2606]: VRRP_Instance(VI_1) Sending gratuitous ARPs on ens32 for 192.168.133.100 Sep 4 13:17:51 aminglinux-02 Keepalived[2604]: Stopping Keepalived v1.2.13 (05/25,2017) Sep 4 13:17:51 aminglinux-02 systemd: Stopping LVS and VRRP High Availability Monitor… Sep 4 13:17:51 aminglinux-02 Keepalived_vrrp[2606]: VRRP_Instance(VI_1) sending 0 priority Sep 4 13:17:51 aminglinux-02 Keepalived_vrrp[2606]: VRRP_Instance(VI_1) removing protocol VIPs. Sep 4 13:17:51 aminglinux-02 Keepalived_healthcheckers[2605]: Netlink reflector reports IP 192.168.133.100 removed Sep 4 13:17:51 aminglinux-02 systemd: Stopped LVS and VRRP High Availability Monitor.

關(guān)閉以后VIP地址馬上就釋放出去了

查看從機器

[root@localhost html]# ip add 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:7d:ea:88 brd ff:ff:ff:ff:ff:ff inet 192.168.133.130/24 brd 192.168.133.255 scope global ens32 valid_lft forever preferred_lft forever inet6 fe80::daff:1b44:6a0f:1211/64 scope link valid_lft forever preferred_lft forever [root@localhost html]# ip add 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:7d:ea:88 brd ff:ff:ff:ff:ff:ff inet 192.168.133.130/24 brd 192.168.133.255 scope global ens32 valid_lft forever preferred_lft forever inet 192.168.133.100/32 scope global ens32 valid_lft forever preferred_lft forever inet6 fe80::daff:1b44:6a0f:1211/64 scope link valid_lft forever preferred_lft forever

查看日志

[root@localhost html]# tail /var/log/messages Sep 4 13:01:01 localhost systemd: Started Session 15 of user root. Sep 4 13:01:01 localhost systemd: Starting Session 15 of user root. Sep 4 13:10:01 localhost systemd: Started Session 16 of user root. Sep 4 13:10:01 localhost systemd: Starting Session 16 of user root. Sep 4 13:17:52 localhost Keepalived_vrrp[3730]: VRRP_Instance(VI_1) Transition to MASTER STATE Sep 4 13:17:53 localhost Keepalived_vrrp[3730]: VRRP_Instance(VI_1) Entering MASTER STATE Sep 4 13:17:53 localhost Keepalived_vrrp[3730]: VRRP_Instance(VI_1) setting protocol VIPs. Sep 4 13:17:53 localhost Keepalived_vrrp[3730]: VRRP_Instance(VI_1) Sending gratuitous ARPs on ens32 for 192.168.133.100 Sep 4 13:17:53 localhost Keepalived_healthcheckers[3729]: Netlink reflector reports IP 192.168.133.100 added Sep 4 13:17:58 localhost Keepalived_vrrp[3730]: VRRP_Instance(VI_1) Sending gratuitous ARPs on ens32 for 192.168.133.100

因為主機器宕機,從機器很快的就加入了vip地址

這個時候訪問vip地址的時候,看到的頁面是

從機器上的默認(rèn)索引頁,證明整個實驗成功

更多關(guān)于云服務(wù)器,域名注冊,虛擬主機的問題,請訪問三五互聯(lián)官網(wǎng):m.shinetop.cn

贊(0)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享網(wǎng)絡(luò)內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。郵箱:3140448839@qq.com。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明出處:三五互聯(lián)知識庫 » 18.1 集群介紹 18.2 keepalived介紹 18.3/18.4/18.5 用keepalived配置高可用集

登錄

找回密碼

注冊

主站蜘蛛池模板: 精品国产午夜福利在线观看| 加勒比无码人妻东京热| 高h纯肉无码视频在线观看| 久久亚洲色www成人| 在线 欧美 中文 亚洲 精品| 色噜噜狠狠一区二区三区果冻| 久久亚洲精品11p| bt天堂新版中文在线| 日韩熟女乱综合一区二区| 九九热久久只有精品2| 国产一级av在线播放| 在线成人国产天堂精品av| 国产精品露脸3p普通话| 欧美白妞大战非洲大炮| 国产午精品午夜福利757视频播放| 暖暖视频日本在线观看| 日韩在线视频网| 久久久久久久久久久久中文字幕| 日本a在线播放| 噜噜噜噜私人影院| 成人av午夜在线观看| 亚洲国产精品一区二区三| 国产女人高潮视频在线观看| 爱性久久久久久久久| 道真| 亚洲国产大片永久免费看| 国产成人无码免费视频在线| 日韩丝袜欧美人妻制服| 九九热在线视频只有精品| 亚洲第一无码专区天堂| 亚洲国产成人久久一区久久| 中文字幕在线无码一区二区三区| 欧美老熟妇乱子伦牲交视频 | 国产精品久久久久久久9999 | 亚洲最大成人在线播放| 亚洲欧美色综合影院| 亚洲AV日韩精品久久久久| 玩弄放荡人妻少妇系列| 亚洲欧美高清在线精品一区二区| 亚洲精品毛片一区二区| 99久久国产成人免费网站|