1. 程式人生 > >harbor 配置 Keepalived 實現HA

harbor 配置 Keepalived 實現HA

環境說明:

$ cat /etc/redhat-release

CentOS Linux release 7.3.1611 (Core)

vip : 192 168 93 142

MASTER-harbor: 192.168.93.147

BACKUP-harbor: 192.168.93.148

 

1 . 安裝keepalied

Keepalived 可以使用 yum 直接安裝,在 master 伺服器和 backup 伺服器執行:

$ yum –y install keepalived

 

2.配置master伺服器及backup伺服器

$ ip a   確定master及backup網絡卡

master 網絡卡 ens32

backup 網絡卡 ens160

配置/etc/keepalived/keepalived.conf

 

master配置

$ vim /etc/keepalived/keepalived.conf

vrrp_instance VI_1 {
    # 指定 keepalived 的角色,MASTER 表示此主機是主伺服器,BACKUP 表示此主機是備用伺服器
    state MASTER

    # 指定網絡卡
    interface ens32

    # 虛擬路由標識,這個標識是一個數字,同一個vrrp例項使用唯一的標識。
    # 即同一vrrp_instance下,MASTER和BACKUP必須是一致的
    virtual_router_id 51

    # 定義優先順序,數字越大,優先順序越高(0-255)。
    # 在同一個vrrp_instance下,MASTER 的優先順序必須大於 BACKUP 的優先順序
    priority 100

    # 設定 MASTER 與 BACKUP 負載均衡器之間同步檢查的時間間隔,單位是秒
    advert_int 1

  
    # 設定驗證型別和密碼
    authentication {
        #設定驗證型別,主要有PASS和AH兩種
        auth_type PASS
        #設定驗證密碼,在同一個vrrp_instance下,MASTER與BACKUP必須使用相同的密碼才能正常通訊
        auth_pass 1111
    }

    #設定虛擬IP地址,可以設定多個虛擬IP地址,每行一個
    virtual_ipaddress {
        # 虛擬 IP
        192.168.93.142    }
}

# 虛擬伺服器埠配置
virtual_server 192.168.93.142 80 {
    delay_loop 6
    lb_algo rr
    lb_kind NAT
    persistence_timeout 50
    protocol TCP

    real_server 192.168.93.147 80 {
        weight 1
    }
}
 
back伺服器配置:基本與master一直,主要改動部分
$ vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
    # 指定 keepalived 的角色,BACKUP 表示此主機是備用伺服器
    state BACKUP 

    # 確認網絡卡的 ID
    interface ens160 

    # 即同一vrrp_instance下,MASTER 和 BACKUP 必須是一致的
    virtual_router_id 51 

    # 比 MASTER 小
    priority 90

    ...
    ...
    }

# 虛擬伺服器埠配置
virtual_server 192.168.93.142 80 {
    ...
    ...

    real_server 192.168.93.148 80 {
        weight 1
    }
}

 

基本配置完成,啟動服務


$ systemctl start keepalived

$ systemctl enalbe keepalived
 
檢查一下網絡卡是否上面有vip192.168.93.142,停掉master的keepalived檢視back伺服器上vip是否漂移過去。
 
接下來就是主要驗證一下harbor主從是否ok,因為harbor自身有複製功能,後面的驗證方面都是基於配置了複製,如果沒有配置可以參考加上。
image
image
image
現在vip在master上,用142代替147登入沒有問題,後面就是測試一下能將映象的tag修改成142的push和pull一下,停掉master切換到back測試一下,如果基本的訪問、push、pull、login都沒有問題基本就成功了。
後面的驗證部分就不詳細寫了,配置好之後把常用功能都檢測一遍,這塊到沒有什麼難點。ps:是在公司伺服器上很多驗證截圖就不發了,ip也是我虛構的,大致步驟的意思希望我說明白了