keepalivedはLVS負荷等化高可用性クラスタを実現する(一)

4245 ワード

1、Keepalivedソフトウェアは前期にLVSクラスタシステム中の各サービスノードの状態を管理し監視するために使用される.
2、後期に高可用性を実現するVRRP機能を追加した.従って、lvs負荷等化に高可用性機能を提供したり、他のサービスに高可用性を提供したりすることができる.
実験ミラー:Centos 8.1.1911
スケッチ:(補完対象)
1、2つのreal serverインストール構成
keepalived Masterでテストしても問題ありません.
[root@HA1 ~]# curl http://192.168.94.140
this is real 1 server
[root@HA1 ~]# curl http://192.168.94.141
this is real 2 server
[root@HA1 ~]#

2、keepalived、ipvsadmのインストール
yum install ipvsadm keepalived -y
keepalivedを使用してreal serverの追加を完了します.
プロファイルは/etc/keepalivedで
[root@HA1 keepalived]# pwd
/etc/keepalived
[root@HA1 keepalived]# ls
keepalived.conf
[root@HA1 keepalived]# cp keepalived.conf keepalived.conf.bak
[root@HA1 keepalived]# echo "" > keepalived.conf
[root@HA1 keepalived]#

3、keepalivedファイル構成
MASTER
! Configuration File for keepalived
  #  
global_defs {
   notification_email {
         root@localhost
   }
   notification_email_from [email protected]
   smtp_connect_timeout 3
   smtp_server 127.0.0.1
   router_id LVS_DEVEL
}


#  keepalived ,MASTER 
vrrp_instance VI_1 {
    interface ens33
    state MASTER
    priority 101
    virtual_router_id 51
    garp_master_delay 1

    authentication {
        auth_type PASS
        auth_pass password
    }
	# VIP  
    virtual_ipaddress {
        192.168.94.200 dev ens33 label ens33:0
    }
}

# VIP  real server
virtual_server 192.168.94.200 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
#	 real server  , 
    sorry_server 192.168.94.138 80

#  real server 1
    real_server 192.168.94.140 80 {
        weight 1
	# real server  , url code
        HTTP_GET {
            url {
              path /
              status_code 200
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
#  real server 2
    real_server 192.168.94.141 80 {
        weight 1
        HTTP_GET {
            url {
              path /
              status_code 200
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

プロファイルをHA 2にコピー
BACKUP
! Configuration File for keepalived
  #  
global_defs {
   notification_email {
         root@localhost
   }
   notification_email_from [email protected]
   smtp_connect_timeout 3
   smtp_server 127.0.0.1
   router_id LVS_DEVEL
}


#  keepalived ,MASTER 
vrrp_instance VI_1 {
    interface ens33
    state BACKUP
    priority 100
    virtual_router_id 51
    garp_master_delay 1

    authentication {
        auth_type PASS
        auth_pass password
    }
	# VIP  
    virtual_ipaddress {
        192.168.94.200 dev ens33 label ens33:0
    }
}

# VIP  real server
virtual_server 192.168.94.200 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
#	 real server  , 
    sorry_server 192.168.94.139 80

#  real server 1
    real_server 192.168.94.140 80 {
        weight 1
	# real server  , url code
        HTTP_GET {
            url {
              path /
              status_code 200
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
#  real server 2
    real_server 192.168.94.141 80 {
        weight 1
        HTTP_GET {
            url {
              path /
              status_code 200
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

1、高可用性
両方のノード(MASTER、BACKUP)がサービスを開始する.
アドレスifconfig–aの表示
VIPはMASTERのみで起動し、MASTERサービスが故障するとBACKUPはサービスを提供する.
2、real server資源管理
real serverノードが故障するとkeepalivedはipvsで自動的に削除されます.またオンラインになると再び追加されます.
私のプロファイルは少し問題があるかもしれませんが、テストの時は少しおかしいので、チェックする時間があるでしょう.
読書とフィットネスにはいつも道がある.