設定例:https://blog.51cto.com/14227204/2438902
、動作原理や機能をkeepalivedの:
LVSロードバランサを可用性サーバノード、タイムリーな分離を決定し、新しいサーバ、故障したホストに置き換え - keepalivedの最初のLVSのために特別に設計された強力な補助具であり、主にフェイルオーバーおよびヘルスチェックを提供するために使用再加入クラスタへの復帰後。、別のデプロイメント環境をLVSスケジューラのダウンタイムが発生し、クラスタ全体では、特定のウェブ・ノードがダウンした後、訪問時には、クライアントは、常にそこにページを訪問していないような状況に遭遇し、そのkeepalivedのとLVSます無効となります満足かどうかを持っているそのうちの3つは、もちろん、高可用性を構築するためのストレージバックエンド・ストレージ・サーバーを共有する必要があり、真の高可用性クラスタの前に形成して、高可用性クラスタ環境を呼び出すことはできません。
keepalivedの公式ウェブサイト:http://www.linuxvirtualserver.org/、非LVS環境でも使用することがkeepalivedのホットバックアップソフトウェア
使用してください。
VRRP(仮想ルーティング冗長プロトコル)プロトコルホットバックアップ、Linuxサーバを実現するソフトウェアの方法を使用してkeepalivedの
マルチホットスタンバイ。VRRPバックアップソリューションは、ルータに向けられている - 複数のルータを介して、ホットスタンバイグループを形成します
各グループのホットバックアップ言及唯一のマスタルータで同じ時間を、外部サービスに対応する仮想IP(VIP)を共有していました
ルータの現在の行が失敗した場合、サービス、冗長状態にある他のルータについては、別のルータが自動的に引き継ぎます
サービスを提供し続けるためには、仮想IPアドレスを(優先順位が引き継ぐことにしました)。
ホットスタンバイグループ内の各ルータは、メインルータである可能性が高い、仮想ルータ(VIP)のIPアドレスがホットスタンバイグループにすることができ
ルータの転送は、それはまたドリフトIPアドレスを知られています。keepalivedの使用している場合、ドリフトは手動で実装する必要性に対処します
仮想インタフェース・プロファイルを確立する(例えばens33:0)、それは自動的にkeepalivedの構成によれば、ファイルにより管理されます。
VRRPに基づいてホットスタンバイモード、keepalivedのフェールオーバ・サーバを使用することができる、各グループは、複数のホットスタンバイサーバーを持っていること
サービスがある - 最も一般的に使用されるマルチホットスタンバイです。本実施形態の複数のホットスタンバイ、メインの仮想IPアドレスのフェイルオーバーで
達成するためにドリフト。そのためには、さまざまなアプリケーションサーバ(ウェブ、FTP、メール、またはSSH、DNS ....どちらか)にも適用することができます。
二つは、詳細にホット・スタンバイ構成をkeepalivedの:
。
以下、簡単な図の環境では、完全に機能し、ステートフルフェールオーバーを理解するように構成することができます:
1、マスターサーバーを設定します。
[root@lVS1 ~]# systemctl stop firewalld #关闭防火墙
[root@lVS1 ~]# yum -y install keepalived ipvsadm 安装所需工具
[root@lVS1 ~]# systemctl enable keepalived #设置开机自启动
[root@lVS1 ~]# cd /etc/keepalived/
[root@lVS1 keepalived]# cp keepalived.conf keepalived.conf.bak #备份配置文件
[root@lVS1 keepalived]# vim keepalived.conf #编辑配置文件
global_defs {
notification_email {
[email protected] #启用邮件通知功能,这里设置收件人地址,可以配置多个
[email protected]
[email protected]
}
notification_email_from [email protected] #发件人姓名、地址
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LVS_DEVEL1 #本服务器的名称(在群集中必须唯一)。
.............. #省略部分内容
}
vrrp_instance VI_1 { #定义VRRP热备实例
state MASTER #热备状态,MASTER表示主服务器(注意大小写)
interface ens33 #承载VIP地址的物理接口
virtual_router_id 51 #虚拟路由器的ID号,每个热备组保持一致。
priority 100 #优先级0-100,数值越大越优先。
advert_int 1 #通告间隔秒数(心跳频率)。
authentication { #认证信息,每个热备组保持一致
auth_type PASS #认证类型
auth_pass 1111 #密码字串
}
virtual_ipaddress { #指定漂移地址,可以有多个
192.168.1.100
}
}
......................... #省略部分内容
上記の構成を確認することは正しいことをして、keepalivedのサービスを開始した後、MASTERのプライマリサーバーの実際の状態は自動的にビューにens33インターフェースのVIPアドレス、ipコマンドを追加します(注:ifconfigコマンドコマンドが見ることができません)。
[root@lVS1 keepalived]# systemctl start keepalived #启动该服务
[root@lVS1 keepalived]# ip a show dev ens33 #查看ens33接口
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UPUt qlen 1000
link/ether 00:0c:29:77:2c:03 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.1/24 brd 192.168.1.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet 192.168.1.100/32 scope global ens33 #可以看到VIP已经配置在ens33上。
valid_lft forever preferred_lft forever
inet6 fe80::95f8:eeb7:2ed2:d13c/64 scope link noprefixroute
valid_lft forever preferred_lft forever
2、バックアップサーバの設定(LVS2):
ホットスタンバイで同じグループをkeepalivedの、すべてのサーバーkeepalivedのプロファイルと実質的に同じ、いくつかの構成は、条
それには、同じでなければなりませんID番号、認証情報、ドリフトアドレス、仮想ルータ心拍数など、途中で主に異なります
名前、ホットスタンバイ状態、優先順位。具体的な構成を、次の点に注意してください。
-
サーバー名(route_id):勧告は、ホットスタンバイに関係する各サーバーに別の名前を指定します。
-
ホットスタンバイ状態(状態)は、少なくとも1台のプライマリサーバは、マスタに状態を設定されている、複数のバックアップ・サーバを持つことができ、バックアップするステータスを設定します。
- プライオリティ(優先):優先順位が高いので、優先度がプライマリ最大とサービスに設定する必要があり、制御VIPの高い値を得るために、競合を回避するために、他のバックアップサーバを降順に、しかし同一ではないが、場合制御VIP発生します競合。
。
(複数の場合もある)スタンバイサーバを設定するときは、keepa.confは単にメインサーバのファイルをコピーすることができ、サーバ名の変更、ホットスタンバイ状態、優先順位、その上に3、それはいくつかのウェブであっても、含まれてい構成ノードは、また、変更することなく、変更することができません。
[root@LVS2 ~]# systemctl stop firewalld #关闭防火墙
[root@LVS2 ~]# yum -y install keepalived ipvsadm #安装相关工具
[root@LVS2 ~]# scp [email protected]:/etc/keepalived/keepalived.conf /etc/keepalived/
#使用主服务器root用户将主服务器的keepalived配置文件复制过来。
[email protected] s password: #输入主服务器root用户的密码
keepalived.conf 100% 3549 3.5MB/s 00:00
[root@LVS2 ~]# vim /etc/keepalived/keepalived.conf
global_defs {
...............
router_id LVS_DEVEL2 #修改这里的服务器名称
.....................
}
..............
vrrp_instance VI_1 {
state BACKUP #修改这里的状态,改为BACKUP
interface ens33 #若该服务器承载VIP的物理接口有变,则这里也要修改
virtual_router_id 51
priority 90 #修改优先级,要比主服务器低。
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.100
}
}
.................
#改动上述几行后,保存退出即可。
[root@LVS2 ~]# systemctl start keepalived #启动服务
[root@LVS2 ~]# systemctl enable keepalived #设置开机自启动
このとき、プライマリサーバは、VIPアドレスは実際にはまだ、バックアップの状態で、別のサーバは、スタンバイサーバは、VIPアドレスens33インターフェイスを追加しませんマスターサーバーによって制御され、オンラインのままです。
[root@LVS2 ~]# ip a show dev ens33 #查看ens33接口,不会看到VIP
2: ens33: <BROADCAST,MULTICAST,Udel state UP group default qlen 1000
link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.2/24 brd 192.168.1.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3、デュアルファンクションテストホットスタンバイ:
メインサーバがダウンしている、またはkeepalivedのサービスを停止し、バックアップサーバens33カードを表示するのに約15秒を待って、あなたはアドレスがホットスタンバイ機能に二重の効果を示し、ドリフトから転送されてきたでしょう。プライマリサーバの電源がオンにされた後、ドリフトアドレスは自動的にプライマリサーバに戻って転送されます。
[root@localhost ~]# ip a show dev ens33 #主服务器关机后查看备份服务器的网卡信息
2: ens33: <BROADCAST,MULTICAST,UP state UP group default qlen 1000
link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.2/24 brd 192.168.1.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet 192.168.1.100/32 scope global ens33 #漂移地址已经转移过来了
valid_lft forever preferred_lft forever
inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute
valid_lft forever preferred_lft forever
:プライマリサーバの電源が入っているし、あなたはVIPがプライマリサーバとバックアップサーバに転送され、VIPを見つけるされていますでしょう
[root@LVS1 ~]# ip a show dev ens33 #在主服务器上进行查看
2: ens33: <BROADCAST,MULTICAST,UP,Lefault qlen 1000
link/ether 00:0c:29:77:2c:03 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.1/24 brd 192.168.1.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet 192.168.1.100/32 scope global ens33 #VIP地址在这里了
valid_lft forever preferred_lft forever
inet6 fe80::95f8:eeb7:2ed2:d13c/64 scope link noprefixroute
valid_lft forever preferred_lft forever
[root@LVS2 ~]# ip a show dev ens33 #在备份服务器上进行查看
2: ens33: <BROADCAST,MULTICAST,UP,P grou00
link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.2/24 brd 192.168.1.255 scope goute ens33
valid_lft forever preferred_lft forever
inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute
valid_lft forever preferred_lft forever