国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Ucloud配置haproxy+keepalived(利用ucloud-API實現外網浮動IP切換)

nodejh / 2884人閱讀

摘要:背景先交代下事情發生的背景,公司在使用的負載均衡產品的過程中由于某種特殊的需求必須要自建外網負載均衡器,由于的云主機使用地址轉化技術,外網的數據包被轉發到了內網,而且外網是與云主機綁定的,所以就不能用傳統的方式實現外網服務的高可用了,但是實

背景

先交代下事情發生的背景,公司在使用ucloud的負載均衡產品的過程中由于某種特殊的需求必須要自建外網負載均衡器,由于ucloud的云主機使用nat地址轉化技術,外網IP的數據包被轉發到了內網IP,而且外網IP是與云主機綁定的,所以就不能用傳統的方式實現外網haproxy服務的高可用了,但是ucloud實現了切換公網IP的api,我們讓keepalived在另一臺機器掛掉的時候調用api來將該機器的外網浮動IP解除綁定,然后綁定到自己身上,api切換的時間極短保證了線上負載均衡器故障能夠迅速切換。

安裝keepalived
sudo apt update 
sudo apt install keepalived -y
準備腳本 下載ucloud sdk
git clone https://github.com/ucloud/ucloud-sdk-python.git /etc/keepalived/script #下載ucloud python sdk 到 /etc/keepalived/script目錄
cd /etc/keepalived/script  # 進入 script 目錄 
cp config.simple.py config.py   # 復制config.simple.py模板文件
編寫腳本

修改 config.py 文件,

#配置公私鑰"""
public_key  = "" #你的公鑰
private_key = "" #你的私鑰
project_id = "" # 項目ID 請在Dashbord 上獲取

"""
#添加以下內容
EIPID="eip-lb011e"  #你需要浮動的EIP的ID
MYUHOSTID="uhost-33eitwa"  #腳本部署在這臺機器的ID,可在控制臺上查看 注意,你腳本部署在哪臺機器這個ID就是哪臺機器的ID
PEERUHOSTID="uhost-333xvs" # 另一臺機器的ID 
REGION="hk"  #地區 Region 可在ucloud官網查閱

接下來修改 bind_eip.py 將Parameters段參照以下內容修改

Parameters={
    "Action":"BindEIP",
    "EIPId":EIPID,
    "ResourceId":MYUHOSTID,
    "ResourceType":"uhost",
    "Region":REGION
}

修改 unbind_eip.py 將Parameters段參照以下內容修改

Parameters={
    "Action":"UnBindEIP",
    "EIPId":EIPID,
    "ResourceId":PEERUHOSTID,
     "ResourceType":"uhost",
    "Region":REGION
}

新建腳本 slave2master.sh

#!/bin/bash
python  /etc/keepalived/script/unbind_eip.py  #先把IP從故障的那臺機器解綁
python /etc/keepalived/script/bind_eip.py     # 再綁定到本機上

編寫一個故障檢查腳本 check_haproxy.sh

#!/bin/bash
GREP_OPTIONS=""
Count1=`netstat -antp |grep -v grep |grep haproxy |wc -l`

if [ $Count1 -eq 0  ]; then
exit 1  #keepalived 調用這個腳本,當退出值不為0就認為本機故障
fi
exit 0


編寫 keepalived的配置文件 slave的配置文件參考
! Configuration File for keepalived

global_defs {
          router_id xxx-lb-test
}

vrrp_script chk_haproxy {
        script "/etc/keepalived/check_haproxy.sh" 
        interval 2 

}

vrrp_instance VI_1 {

    unicast_peer {
        10.8.100.13    !另一臺機器(master)的IP                  
    }
        state BACKUP   !默認進入backup模式
        interface eth0
        virtual_router_id 194
        priority 10
        weight 5
        !    nopreempt
        advert_int 1
        authentication {
            auth_type PASS
            auth_pass e8qvAwPTWgCEepUKCQ4tN
        }
        track_script {
                   chk_haproxy                   
        }
            notify_master /etc/keepalived/script/slave2master.sh   #一旦master出現故障該腳本就會被執行

}

master的配置文件 參考
! Configuration File for keepalived

global_defs {
    router_id xxx-lb-test
}

vrrp_script chk_haproxy {
    script "/etc/keepalived/check_haproxy.sh" 
    interval 2 
}



vrrp_instance VI_1 {

    unicast_peer {
        10.8.126.62  # Slave 的IP            
    }
    state MASTER #默認為 MASTER
    interface eth0
    virtual_router_id 194
    priority 100
    !    nopreempt
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass e8qvAwPTWgCEepUKCQ4tN
        }
    track_script {
           chk_haproxy
    }
    notify_master /etc/keepalived/script/slave2master.sh #一旦slave出現故障該腳本就會被執行
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/44601.html

相關文章

  • LNMP+HAProxy+Keepalived負載均衡(三)- 配置文件匯總

    摘要:的操作命令將端口由修改為,修改內容如下具體配置可參考下面的配置文件重啟,并查看其狀態的配置文件服務器需要修改的配置,僅用參考端口根據自己的情況修改站點根目錄可以加載自己的配置文件,這里我把配置文件中的內容直接替換了原本的節 Nginx的操作命令 vim /usr/local/nginx/conf/nginx.conf # 將端口由80修改為10001,修改內容如下: listen ...

    894974231 評論0 收藏0
  • Kubernetes Master High Availability 高級實踐

    摘要:才云科技云開源高級工程師唐繼元受邀社群,在線分享高級實踐,介紹如何構建環境。除命令外的停止都是異常停止。 才云科技云開源高級工程師唐繼元受邀DBAplus社群,在線分享《Kubernetes Master High Availability 高級實踐》,介紹如何構建Kubernetes Master High Availability環境。 以下是分享實錄: 大家好,我是才云科技的唐繼...

    JiaXinYi 評論0 收藏0
  • 【負載均衡 ULB】技術架構:內網ULB4,外網ULB4,內網ULB7,外網ULB7以及模式比對

    摘要:單臺服務器可以提供超過萬并發連接,萬,線速轉發能力。外網負載均衡轉發示意圖如下與內網不同的是,外網流量是從公網進來的。這樣上聯交換機會根據算法,將流量負載均衡到集群中的各臺服務器上。技術架構ULB (UCloud Load Balancer)提供流量分發的能力,保證業務可擴展和高可用。支持內網和外網兩種場景,支持請求代理和報文轉發兩種轉發模式。下文將分別介紹ULB的的請求代理(下簡稱ULB7...

    Tecode 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<