| 日本−日本語 |
|
|
|
![]() |
Serviceguard の管理 > 第3章 Serviceguard のソフトウェア構成要素ネットワークマネージャの動作 |
|
ネットワークマネージャは、クライアントに対してネットワークサービスの高可用性を維持できるように、ネットワークカード障害やケーブル障害を検出して、障害から回復することを目的としています。実際の動作としては、各パッケージの IP アドレスをパッケージが動作しているノード上の一次 LAN インタフェースカードに割り当てたり、すべてのインタフェースの状態を監視したり、必要に応じてインタフェースを切り替えます。 各ノード (ホストシステム) には、アクティブなネットワークインタフェースごとに少なくとも 1 つの IP アドレスが必要です。このアドレスは定常 IP アドレスと呼ばれ、ノードの /etc/rc.config.d/netconf ファイルまたは /etc/rc.config.d/netconf-ipv6 ファイルで構成されます。定常 IP アドレスは別のノードへ移動することはできませんが、待機 LAN インタフェースカードへ移動することはできます。定常 IP アドレスはパッケージに対して与えられるものではありません。定常 IP アドレスは、ハートビートメッセージや他のデータの送信に使用します (前述の 「クラスタマネージャの動作」の項を参照してください)。 通常は、定常 IP アドレスの他に各フェイルオーバーパッケージに対して 1 つまたは複数の固有の IP アドレスを割り当てます。パッケージの IP アドレスは、パッケージの起動時に、パッケージ制御スクリプトの cmmodnet コマンドによって、一次 LAN インタフェースカードに割り当てられます。 パッケージに対して与える IP アドレスは再配置可能 IP アドレス (またはパッケージ IP アドレス、移動性 IP アドレス) と呼ばれます。これは、アドレスが実際にあるクラスタノードから別のクラスタノードへ移動できるためです。再配置可能 IP アドレスは、150 個のパッケージを持つクラスタ内で最大 200 個使用できます。これには、IPv4 アドレスと IPv6 アドレスを混在させることができます。 システムマルチノードパッケージとマルチノードパッケージはフェイルオーバーしないため、再配置可能 IP アドレスは不要です。 再配置可能 IP アドレスは、パッケージに割り当てられる仮想ホスト IP アドレスに似ています。各パッケージの名前は DNS (ドメインネームサービス) を使って構成することをお勧めします。これにより、プログラムはパッケージの名前をホスト名のように使用できるので、gethostbyname() へのパラメータとして使用して、パッケージの再配置可能 IP アドレスを取得することもできます。 LAN カードで障害が発生すると、定常 IP アドレスとパッケージ IP アドレスは共に、待機 LAN インタフェースへ切り替えられます。また、パッケージの制御が移行された場合は、引き継ぎノードが再配置可能アドレスを引き継ぎます (定常アドレスは引き継がれません)。これにより、アプリケーションは、パッケージが現在どのノード上で稼働しているかを知らなくても、再配置可能アドレスを通じてそのパッケージへアクセスできます。 Serviceguard では IPv4 アドレスと IPv6 アドレスの両方がサポートされます。IPv4 アドレスは、n.n.n.n 形式の従来からあるアドレスで、n は、0〜255 の 10 進数です。IPv6 アドレスは、x:x:x:x:x:x:x:x 形式のアドレスで、x は 128 ビットのアドレスを 16 ビットごとに区切ってできる 8 つの部分それぞれを 16 進数で表わした値です。ハートビートアドレスとして使えるのは、IPv4 アドレスだけですが、クラスタでの定常 IP アドレスは、IPv4 アドレス、IPv6 アドレス、あるいはそれらを混在させて定義することができます。IPv4 アドレスと IPv6 アドレスはどちらも再配置可能 (パッケージ) IP アドレスとしても使えます。 パッケージが起動されると、再配置可能 IP アドレスは指定された IP サブネットに追加されます。パッケージが停止されると、再配置可能 IP アドレスは指定された IP サブネットから削除されます。再配置可能 IP アドレスの追加と削除は、パッケージ制御スクリプトの cmmodnet コマンドを使って行います。パッケージ制御スクリプトの詳細については、第6章 「パッケージとサービスの構成」 を参照してください。 IP アドレスが構成されるのは、各一次ネットワークインタフェースカード上だけです。待機カードには IP アドレスは構成されません。同じネットワークカードに複数の IPv4 アドレスを構成する場合は、同じ IP サブネットに属していなければなりません。 Serviceguard は、クラスタ構成ファイルで指定されているすべてのネットワークインタフェースカードに定期的にポーリングします。ネットワーク障害は、次の方法により個々のノード内で検出されます。ノード上の 1 つのインタフェースが、ポーラーとして割り当てられます。ポーラーは、そのノード上の同じブリッジネットに属する他の一次インタフェースと待機インタフェースをポーリングして、それらが正常な状態かどうかを調べます。通常、待機インタフェースをポーラーとして使用します。ブリッジネットに待機インタフェースがない場合は、一次インタフェースがポーリング作業に割り当てられます (ブリッジネットについては、第 2 章の「冗長ネットワーク構成要素」で説明します)。 ポーリングインタフェースは、同じブリッジネットに属する、ノード内の他のすべてのインタフェースへ LAN パケットを送信し、それらから返されるパケットを受信します。 LAN ドライバからエラーが報告されると、Serviceguard はすぐにそのカードを故障と判断し、可能ならローカル切り替えを実行します。たとえば、カードが送信障害になると、Serviceguard はすぐにエラー通知を受け取り、カードをダウンとみなします。 Serviceguard Network Manager も、インタフェース上で送受信されるパケットの数を調べ、カードに問題があるかを判断します。送受信されるパケットの数を Serviceguard が処理する方法には、2 つの方法があります。クラスタ構成ファイルで、NETWORK_FAILURE_DETECTION パラメータに対し以下の値のいずれかを指定します。
ローカルネットワークの切り替えとは、ローカルネットワークのインタフェース障害の検出と、ローカルバックアップ LAN カード (待機 LAN カードとも呼ばれます) へのフェイルオーバーを指します。バックアップ LAN カードには IP アドレスを構成してはいけません。 ローカルネットワークの切り替えが行われた場合、イーサーネット用の TCP/IP 接続は失われませんが、IEEE 802.3 接続は失われます。IPv4 の場合、イーサーネットは ARP プロトコルを使用し、HP-UX は要請されていない ARP を送信して、MAC (リンクレベル) アドレスと IP レベルのアドレス間のアドレスマッピングをリモートシステムに通知します。IEEE 802.3 には rearp 機能はありません。 IPv6 の場合は、ARP の代わりに近隣探索プロトコル (NDP) が使われます。ホストやルーターは、以下の目的で NDP プロトコルを使います。
イーサーネットファミリーでは、ローカル切り替えが、以下の構成でサポートされます。
ただし、HP-UX 11i では、1000Base-T カードまたは 1000Base-SX カードが構成されている場合にだけジャンボフレームを使うことができます。100Base-T と 10Base-T は、ジャンボフレームをサポートしていません。また、1000Base-T または 1000Base-SX で動作しているネットワークインタフェースカードは、10BaseT にはローカルフェイルオーバーできません。 転送中に IP パケットが失われても、TCP (伝送制御プロトコル) によりその IP パケットが再送されます。UDP (ユーザーデータグラムプロトコル) の場合には、パケットは、プロトコルによって自動的に再送されません。ただし、UDP は信頼性の低いサービスのため、ネットワークパケットの損失を処理して適切に回復できるように UDP アプリケーションを準備しておくことが必要です。ローカルのスイッチオーバーは、同じタイプの 2 つの LAN の間でのみサポートされていることに注意してください。たとえば、イーサーネットインタフェースと IPoIB インタフェース間のローカルスイッチオーバーはサポートされていませんが、10BaseT イーサーネットと 100BaseT イーサーネット間のローカルスイッチオーバーはサポートされています。 図 3-16 「ローカルネットワーク切り替え前のクラスタ」に、1 つのブリッジネット内で接続されている 2 つのノードを示します。LAN セグメント 1 と 2 は、ハブによって接続されています。 ノード 1 とノード 2 は、LAN セグメント 2 を通じて通信しています。LAN セグメント 1 は、待機 LAN です。 ノード 1 に対する LAN セグメント 2 のネットワークインタフェースカードに障害が発生した場合にどのような状況になるかを 図 3-17 「ローカルネットワーク切り替え後のクラスタ」に示します。 待機インタフェースが引き継ぎを行う際、IP アドレスはこの待機インタフェースに接続されているハードウェアパスに切り替えられます。この切り替えは、TCP/IP レベルで透過的に行われます。このため、すべてのアプリケーションは元のノード上で引き続き実行されます。この間に、ノード 1 の IP データ通信に転送による遅れが生じます。ただし、TCP/IP 接続は維持され、アプリケーションも引き続き実行されます。ノード 1 のパッケージの制御は影響を受けません。
ローカル切り替えの別の例を 図 3-18 「ケーブル障害発生後のローカルネットワーク切り替え」に示します。この場合、障害はセグメント 2 に影響を与えるため、ノードは 2 つともセグメント 1 に接続された LAN カードに切り替えられます。 ローカルネットワーク切り替えは、1 つまたは複数のノードを持つクラスタで行われます。1 つのノードだけが必要で、複雑なクラスタを設定したくない場合は、このローカルネットワーク切り替え機能が活用できるように単一ノードのクラスタを設計することもできます。 一次インタフェースで障害が発生すると、サブネットは待機インタフェースに切り替わります。後で一次インタフェースが回復すると、クラスタデーモンはサブネットを一次インタフェースに戻します。ノードが停止すると、クラスタデーモン (cmcld) は、待機インタフェースで実行中の Serviceguard 構成済みのサブネットを一次インタフェースに復帰させようとします。これは一次インタフェースのリンク状態に関係なく行われます。この復帰は、クラスタ起動前の元のネットワーク構成を維持するために行います。復帰は、cmhaltnode コマンドを実行した場合は特定のノードに、cmhaltcl コマンドを実行した場合はクラスタ内のすべてのノードで実行されます。 リモート切り替え (つまり、パッケージ切り替え) とは、パッケージとその関連 IP アドレスを新しいシステムに移動することを指します。新しいシステムでは、移動前と同じサブネットワークが正しく構成され動作していなければなりません。そうでない場合はパッケージは起動できません。リモート切り替えを行うと、TCP 接続は失われます。TCP アプリケーションは、再接続して接続を回復する必要があります。これは自動的には行われません。パッケージが複数のサブネットワークに依存している場合は、すべてのサブネットワークがターゲットノード上で使用可能になってから、パッケージを起動しなければなりません。 リモート切り替えは、同じタイプの LAN の間でのみサポートされていることに注意してください。たとえば、1 台のマシンのイーサーネットインタフェースとフェイルオーバーマシンの IPoIB インタフェース間では、リモートスイッチオーバーはサポートされていません。再配置可能 IP アドレスのリモート切り替えを、図 3-5 「パッケージの切り替え前」および図 3-6 「パッケージの切り替え後」に示します。 ローカル切り替えまたはリモート切り替えにより、移動性 IPv4 アドレスが新しいインタフェースへ移動される際に、ARP メッセージがブロードキャストされ、IP アドレスとリンク層アドレス間の新しいマッピングを通知します。ARP メッセージは、移動された各 IPv4 アドレスに対して送信されます。ブロードキャストされた ARP メッセージを受信するすべてのシステムは、関連する ARP キャッシュエントリーをアップデートして、変更を反映する必要があります。現在、ARP メッセージは、IP アドレスが新しいシステムに追加されるときに送信されます。ARP メッセージは、ARP 要求の形で送信されます。ARP 要求メッセージの送信者と受信者のプロトコルアドレスフィールドは、共に同じ変動 IP アドレスに設定されます。これにより、メッセージを受信するノードが応答を送信しないようにすることができます。 IPv4 とは異なり、IPv6 のアドレスでは、近隣ノードのリンク層アドレスを調べるために、NDP メッセージを使います。 Serviceguard は、オートポートアグリゲーションの使用を HP-APA (Auto-Port Aggregation、HP 製品番号 J4240AA) を通してサポートしています。HP-APA とは、複数の物理ファーストイーサーネットあるいは複数の物理ギガビットイーサーネットポートを 1 つの論理リンクアグリゲーションに集結させるネットワーク技術です。HP-APA により、複数の 100 Mbps ファーストイーサーネットリンクあるいは複数の 1 Gbps のイーサーネットリンク (または、全二重でそれぞれ 200 Mbps と 2 Gbps) をグループ化して、帯域幅を柔軟かつスケーラブルに設定できます。また、物理リンク間の負荷バランス調整、高可用性が要求される環境での自動障害検出/復旧などのメリットがあります。ポートアグリゲーションは、リンクアグリゲーションまたはトランキングとも呼ばれます。APA はデュアルスタックカーネルでもサポートされます。 設定後は、複数の物理リンクをまとめたリンクアグリゲーションを、同じ IP アドレスと MAC アドレスを持つ 1 つの論理リンクと見なすことができます。HP-APA では、最大 4 つの物理リンクを 1 つの論理リンクとしてグループ化し、1 システムで最大 50 のリンクアグリゲーションを構成できます。空のリンクアグリゲーションの MAC アドレスは 0 (ゼロ) になります。 オートポートアグリゲーションでは、複数のポートのあるネットワークカード (現在、ポート数が 4 つまでのものが入手可能) 中のポートをまとめることができます。また、異なるカードのポートを集結させることもできます。2 つの例を図 3-19 「ネットワークポートの集結」に示します。 集結されずに構成された LAN では、シングルポートとデュアルポートのどちらもそれぞれ 4 枚の LAN カードが付いています。4 枚の LAN カードには、それぞれ独立した集結されていない IP アドレスと MAC アドレス、および LAN 名 (lan0、lan1、lan2、lan3) が付いています。一方ポートが集結されている場合は、4 つのポートには 1 つの IP アドレスと MAC アドレスが関連付けられています。この例では、集結されたポートは、一まとまりで lan900 と呼ばれます。HP-UX 11i では、集結されたポートはこの名前で認識されます。 イーサーネットカードの種類 (シングルポートまたはデュアルポート) および集結させるグループの組み合せは複数考えられます。どのようなオートポートアグリゲーションの組み合せにおいても、ハートビートの接続に関する単一点障害を防ぐために、最低限 2 枚の物理カードを使用しなければなりません。HP-APA は、現在リンクアグリゲーションの自動構成および手動構成の両方をサポートしています。 Serviceguard での APA の使い方については、http://docs.hp.com/ja の [I/O カードとネットワークソフトウェア] のセクションに掲載されている『 HP Auto Port Aggregation (APA) サポートガイド』の最新版と、APA 関連のその他のドキュメントを参照してください。 Serviceguard クラスタでは、HP-UX VLAN ソフトウェアを使った仮想 LAN 構成がサポートされています。 仮想 LAN (または VLAN) は、ネットワークノードを、物理的な場所とは無関係に、論理的にグループ化するための技術です。 VLAN は 1 つの物理 LAN を、複数の論理 LAN セグメントまたはブロードキャストドメインに分割するために使うことができます。これによりブロードキャストのトラフィックが減少すると共に、ネットワークの性能とセキュリティが向上し、管理が容易になります。 1 つの物理 LAN インタフェースから、個別の IP アドレスを持つ複数の VLAN インタフェースを構成できます。アプリケーションにとっては、これらの VLAN インタフェースは、通常のネットワークインタフェース (NIC) のように見えます。VLAN インタフェースの構成についての詳細は、『Using HP-UX VLAN』(5991-0617) を参照してください。 VLAN インタフェースは、クラスタ内のデータネットワークとしてだけでなく、ハートビートとしても使うことができます。ネットワークマネージャはクラスタ内に構成されている VLAN インタフェースの状態を監視し、障害を検出した場合には、VLAN インタフェースのローカルフェイルオーバーおよびリモートフェイルオーバーを実行します。VLAN インタフェースの障害は、通常、基になっている物理 NIC ポートまたは集約された (APA) ポートの故障によって発生します。 HP-UX では、1 つの物理 NIC ポートに対して最大 1024 個の VLAN が構成できます。このような構成に対応するためには、大量のシステムリソースが必要になります。クラスタの各ノードで多数のネットワークインタフェースが構成されていると、Serviceguard の性能が低下します。このような問題を避けるために、Serviceguard には以下の制限があります。
VLAN 技術では、ネットワークを非常に柔軟に構成することができます。このような環境で Serviceguard の信頼性と可用性を維持するために、クラスタで VLAN を使う場合には、ハートビートのルールが以下のように厳しくなっています。
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||