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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

用Keepalived搭建高可用集群

發布時間:2024/4/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用Keepalived搭建高可用集群 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、集群介紹

1、根據功能劃分為兩大類:高可用和負載均衡

2、高可用:一臺工作,另一臺冗余,當一臺服務器故障宕機時,另一臺服務器提供服務。開源軟件有heartbeat,keepalived.

3、負載均衡:有一臺服務器做分發器,負責把用戶的請求發送給后端處理,其他的服務器給用戶提供服務。開源軟件有LVS,keepalived,haproxy,nginx.商業的有F5,Netscaler.

二、keepalived介紹

1、keepalived 是采用VRRP協議實現高可用。keepalived 有三個模塊,core ,check,vrrp。core模塊是keepalived的核心,負責主進程啟動,維護和全局模塊的加載和解析,check模塊負責健康檢查,vrrp模塊用來實現VRRP協議。

三、用keepalived搭建高可用集群。

1、為兩臺機器安裝keepalived

yum install -y keepalived

2、為兩臺機器安裝nginx,其中IP為130的主機已經在之前安裝過,只需為另一臺安裝

yum install -y nginx

3、編輯130主機的keepalived的配置文件?vim /etc/keepalived/keepalived.conf?

1)首先清空keepalived.conf

> ?keepalived.conf

2)加入以下內容:

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 MASTER interface ens33 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass aminglinux>com } virtual_ipaddress { 192.168.134.100 } track_script { chk_nginx } } 4、定義130主機上的監控腳本?vim /usr/local/sbin/check_ng.sh #!/bin/bash d=`date --date today +%Y%m%d_%H:%M:%S` n=`ps -C nginx --no-heading|wc -l` 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 fi fi 5、給 check_ng.sh 權限,啟動keepalived服務 chmod 755 /usr/local/sbin/check_ng.sh systemctl start keepalived 6、停止nginx服務,查看nginx是否啟動,查看日志 ?/var/log/message 和 IP ?ip add 。 7、關閉主從機器的防火墻和 SELinux

systemctl stop firewalld

setenforce 0

8、配置IP 為150的從服務器, 1)先清空keepalived.conf文件 > ?/etc/keepalived/keepalived.conf 2)添加以下內容: 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 interface ens33 virtual_router_id 51 priority 90 advert_int 1 authentication { auth_type PASS auth_pass aminglinux>com } virtual_ipaddress { 192.168.134.100 } track_script { chk_nginx } } 9、編輯定義150的監控腳本 #!/bin/bash d=`date --date today +%Y%m%d_%H:%M:%S` n=`ps -C nginx --no-heading|wc -l if [ $n -eq "0" ]; then systemctl start nginx 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 10、 區分nginx a)web訪問主的IP b)web訪問從的IP c)web訪問vip 這就說明nginx服務在master 主服務器上,192.168.134.100在master上,和從服務器沒有關系。 11、測試高可用 a)在主服務上增加防火墻規則

iptables -I OUTPUT -p vrrp -j DROP

此時發現封掉vrrp協議不能實現切換資源的目的。

b)恢復防火墻,停掉keepalived。查看從服務器的ip add 和日志。

iptables -F

systemctl stop keepalived

可以發現此時已經切換到從服務器了。 c)在開啟主服務器的keepalived,在查看ip add 和web. 可以發現 ip add 馬上就切到主機服務器上了,資源立刻就切換了。

轉載于:https://www.cnblogs.com/wbjy123linux/p/8763096.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的用Keepalived搭建高可用集群的全部內容,希望文章能夠幫你解決所遇到的問題。

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