、HAクラスタ関連用語
1.ノード(ノード)
別のプロセスを実行しているHAホストは、ノードと呼ばれるノードが高可用性クラスタノード内の各ノード上のオペレーティング・システムと高可用性ソフトウェアサービスを実行して、HAのコアコンポーネントであり、それぞれ呼ばれる、一次および二次の点を持っています通常、1つのまたは複数のアプリケーションを実行しているプライマリノード上のディスク、ファイルシステム、ネットワークアドレスとアプリケーションサービスとして、マスタノード/バックアップノード、各ノードは、一意のホスト名を持ち、資源の独自のセットを持って、ノードのスタンバイ状態を監視するためのサービス、および一般的には
2.資源(リソース)
リソースは、エンティティノードを制御することが可能であり、ノードに障害が発生した場合、他のリソースエンティティがそうであるように、使用することができるノード、HAクラスタソフトウェアとすることができるこれらのリソースを引き継ぎます。
(1)ディスク・パーティション、ファイルシステム
(2)IPアドレスVIP
(3)アプリケーションサービス
(4)NFSファイルシステム
3.イベント(イベント)
それは、このようなノードのシステム障害、ネットワーク接続障害、ネットワークカードの障害、アプリケーションの障害、リソース節転移が起こるのだろうこれらの事のように、クラスタ内で発生する可能性が何かである、HAテストは、これらの事に基づいて行われます
4.動作(アクション)
ノードに障害が発生したときにHA応答モードは、アクションがシェルスクリプトによって制御され、例えば、バックアップノードは、イベントが発生したときに、スクリプトサービスを設定することにより、事前に行うシャットダウンまたは起動し、障害が発生したノードのリソースを引き継ぎます
二、keepalivedのプロフィール
それは、HACMPはプロフェッショナルで、フル機能を備えた高可用性ソフトウェアです:Linuxで、HACMP同様の機能を実現した軽量高可用性ソリューションである、高可用性サービスやネットワークを実現することができますが、違いがあるkeepalivedのシステムを引き継ぐために、このようなハートビートやリソースなどのHAソフトウェアに必要な基本的な機能を、提供など、クラスタサービス、クラスタノード間で転送所有者の共有IPアドレスを検出し、強力なHACMPが、比較的導入が面倒で使用するだけでなく、ビジネスソフトウェアは、HACMPと比較して、主に彼は強力なHACMPが、比較的簡単な使用して展開をkeepalivedのなかったものの、すべての設定だけで完了するために、設定ファイルを必要とする、仮想ルーティング冗長性、高可用性機能を通じて達成keepalivedの。
三、keepalivedの使用
元々 、各サービスノードのステータスを検出するlayer3,4&5の交換機構によるクラスタシステムの各サービスノードの状態を監視するように設計されたLVS用に設計keepalivedのサービスノードが異常や故障作業がある場合、keepaivedが検出され、除去さサービスノード障害クラスタシステムから現れ、故障したノードの後に正常に戻っ、keepalivedのサービスノードへと自動的にクラスタに再度追加することができるされ、作業は全て自動で行われ、マニュアル無し介入は、単に障害が発生したノードを修復するために手動で行う必要があります。
keepalivedの後、VRRPは仮想ルータ冗長プロトコル(仮想ルータ冗長プロトコル)、故障発生のスタティックルーティング単一点の問題を解決するために表示された目的の頭字語であり、ネットワークが連続的なVRRPを介して達成することができるVRRP機能に参加し、安定した動作は、従って、状態監視及び障害分離機能をkeepalivedのサーバを有する一方で、他方もHAクラスタの機能を持つ上に、以下の手順VRRPの詳細を
四、VRRPプロトコルと動作原理
実際のネットワーク環境では、ホスト間の通信は、スタティックルーティングを設定することにより行われ、障害、通信障害のホストイベントの間のルータが発生するので、この通信モードでは、ルータが単一になりますVRRPの導入でこの問題を解決するためのボトルネックポイント、
VRRPプロトコルは、スイッチング素子が2つの概念を含むVRRP、によってホストネットワーク障害との間のデータ通信に影響を与えることなく透過することができ、プロトコルスタンバイモードである:物理的ルータと仮想ルータ
VRRPは、仮想仮想ルータ、仮想ルータの仮想IP(一つ以上)のサービス、二つの内部の仮想ルータを提供へ2台のまたは複数の物理ルータをすることができ、複数の物理ルータは、同時に、一緒に仕事するだけ1つの物理的なルータがマスタルータ(マスターの役割の状態)と呼ばれる物理的なルータのサービスを、提供します。それは、ICMP、データ転送、二つの他の物理的なルータが仮想IPは、外部のネットワーク機能の外部にも提供を提供していないしてください、唯一のVRRP状態のマスター広告を受信ARPなど、外部に設けられた仮想IPを持って、ネットワークのさまざまな機能を提供します情報、これらのルータをまとめて(バックアップロールに)バックアップルータと呼ばれます。プライマリルータに障害が発生した場合は、バックアップの役割でバックアップルータは、再選挙となり、外国サービスのマスターの役割に新しいマスタルータを生成するスイッチング処理を完全にユーザーのために同じ名前である全体で続けて
仮想ルータでは、唯一のマスターの役割でルータがVRRPパケットを送信することであっただろう、ルータはバックアップの役割は、唯一のマスターは、したがって、マスターは発生しませんつかむ、マスター実行を監視するための私の情報のパケットを送信し受け入れていますそれは高い優先度で、マスターが利用できない場合、バックアップがマスターを受け取ることができる私に情報のパケットを送信しないので、彼はマスターに障害が発生した認識、バックアップが複数の選挙、最も優先度の高いバックアップが続く場合を除き非常に迅速に新しいマスター、この選挙プロセスや役割になりますと、それゆえ、サービスの継続的な可用性を確保するために
五、keepalivedのアーキテクチャ
keepaivedは高度にモジュールソフトウェア構造は、以下の、シンプルですが、非常にスケーラブルであるkeepalivedのアーキテクチャです。
見ることができる、アーキテクチャ全体としてkeepalivedの二層に分割され、ユーザ空間とカーネル空間層の層です。以下に詳細keepalivedの組成物を記載し、関数は、2層構造を実現します。
コア領域の底部の層、及びIPVS NetLinkの二つのモジュールを含みます。IPVSモジュールは、サードパーティのモジュールが導入された、IPVSを介してクラスタIPのバランスに基づく負荷を達成することができkeepalivedのです。LVSクラスタソフトウェアにデフォルトで含まIPVS。
誤解がkeepalivedのは、一緒にIPVSうまく機能することができるので、非常に多くの初心者は、負荷分散ソフトウェアであるkeepalivedのだと思い、このような理解が間違っている、があります
カーネルモジュール:
IPVS:主LVSとIPVSの統合によって使用され、LVSはLVSを使用して、コアモジュールであります
NETLINK:ネットワークのいくつかの機能を実現
ユーザモジュール:主に高可用性のために使用さ
チェッカー:サービスの状態を確認
VRRPスタック:DSのための高可用性
六、keepalivedのインストールと設定
yumをkeepalivedのインストール
yumのkeepalivedのデフォルトの設定ファイルの/etc/keepalived/keepalived.confをインストール
設定ファイルは、次の3つのカテゴリに分類されます。
(1)グローバルコンフィギュレーション
(2)VRRPの設定
(3)LVS設定
可用性に基づいてMySQLデータベースまたはmariadbを次の
!keepalivedのための設定ファイル {global_defs {notification_email } } vrrp_script chk_mysql {#check_mysqlが名前からスクリプトを実行するために計画されている スクリプトの実行にパスを指定するスクリプト「/root/sh/check_mysql.sh」# インターバル2 ##スクリプトの実行間隔を、各検出時間2S } HA_1 {vrrp_instance 状態BACKUPの ens33インターフェース 151 virtual_router_id 優先順位100 advert_int。1つの nopreemptの 認証{ PASS AUTH_TYPE AUTH_PASS 1111 } virtual_ipaddressを{ 192.168.254.250 } track_script { chk_mysql } }
高可用性負荷分散構成は、次のWebサイトに基づいています
keepalivedの: YUM keepalivedのインストール のvim /etc/keepalived/keepalived.confを !用の設定ファイルをkeepalivedの #グローバルコンフィギュレーション global_defs { notification_email { #受信者アドレス } #メールサーバ } VRRPの設定DS1 VI_1 {vrrp_instance 状態MASTER番号の役割は、MASTERを入力| BACKUP NICインターフェースens33#1名が 51#仮想ルータID(BACKUPと一致する必要がある)virtual_router_id 優先優先#100 advert_int 1#1ない第2チェック一度 #nopreempt#ノンプリエンプティブモード 認証を{ AUTH_TYPEパス#は、マスタとスレーブとの間の認証の同じ型でなければなりません #1111 auth_passは、マスタとスレーブ認証パスワードの間で同じでなければならない } virtual_ipaddress { 192.168.254.250位の仮想IP(VIP) } } 配置#LVS 192.168.254.250 80 {VIRTUAL_SERVER delay_loopヘルスチェック。3#間隔 lb_algoのRR#負荷バランスアルゴリズム lb_kind DR#転送ルールロードバランシング プロトコルTCP#プロトコル 192.168.254.18 80 {#1 real_server監視するreal_server IP及びポート 重量1つの#重み TCP_CHECK {#TCPプロトコルベースのチェック CONNECT_TIMEOUT 3 #接続タイムアウト リトライ3位回再接続 3#再接続間隔delay_before_retry } } real_server 192.168.254.19 80 { 量を1 TCP_CHECK { 3 CONNECT_TIMEOUT リトライ3 delay_before_retry。3 } } }
上記構成は、RS、DSの単一障害点を防ぐことができますが、単一障害点を排除しなかったが、DSにバックアップマシンを追加する必要があります
バックアップコピーに上記構成においてkeepalived.confの[email protected]をscpができます。/ etc / keepalivedの
私たちは場所を書き換える必要があります。
BACKUP |状態MASTER番号の役割は、MASTERを入力します
優先順位55#優先度(ここでは、マスターマシンよりも小さな値を設定する必要があります)