冗長性のあるネットワークを設定すると、単一のネットワーク障害が発生した場合でも、HADB を使用可能なままにできます。冗長性のあるネットワークを設定するには、次の 2 つの方法があります。
Solaris 9 では、ネットワークマルチパスを設定します。
Windows Server 2003 を除くすべてのプラットフォームでは、二重ネットワークを設定します。
ネットワークマルチパスを設定する前に、『IP Network Multipathing Administration Guide』の第 2 章「Administering Network Multipathing (Task)」を参照してください。
ネットワークインタフェース障害検出時間を設定します。
HADB でマルチパスのフェイルオーバーを適切にサポートするには、/etc/default/mpathd 内の FAILURE_DETECTION_TIME パラメータで指定されているネットワークインタフェース障害検出時間が 1 秒 (1000 ミリ秒) を超えないようにする必要があります。元の値がこの値を超えている場合は、このファイルを編集して、このパラメータの値を 1000 に変更します。
FAILURE_DETECTION_TIME=1000 |
変更を有効にするには、次のコマンドを使用します。
pkill -HUP in.mpathd |
HADB で使用する IP アドレスを設定します。
『IP Network Multipathing Administration Guide 』で説明されているように、マルチパスを使用するには、物理ネットワークインタフェースをマルチパスインタフェースグループにグループ化する必要があります。このようなグループ内の各物理インタフェースには、次の 2 つの IP アドレスが関連付けられています。
データの送信に使用される物理インタフェースアドレス。
Solaris の内部でのみ使用されるテストアドレス。
hadbm create --hosts を使用するときに、マルチパスグループの物理インタフェースアドレスを 1 つだけ指定します。
host1 および host2 という名前の 2 つのホストマシンがあるとします。それぞれに 2 つの物理ネットワークインタフェースがある場合は、この 2 つのインタフェースをマルチパスグループとして設定します。各ホストで、ifconfig -a を実行します。
host1 の出力は次のようになります。
bge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 5 inet 129.159.115.10 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge0:1: flags=9040843<UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER> mtu 1500 index 5 inet 129.159.115.11 netmask ffffff00 broadcast 129.159.115.255 bge1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 6 inet 129.159.115.12 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge1:1: flags=9040843<UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER> mtu 1500 index 6 inet 129.159.115.13 netmask ff000000 broadcast 129.159.115.255 |
host2 の出力は次のようになります。
bge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3 inet 129.159.115.20 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge0:1: flags=9040843<UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER> mtu 1500 index 3 inet 129.159.115.21 netmask ff000000 broadcast 129.159.115.255 bge1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 4 inet 129.159.115.22 netmask ffffff00 broadcast 129.159.115.255 groupname mp0 bge1:1: flags=9040843<UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER> mtu 1500 index 4 inet 129.159.115.23 netmask ff000000 broadcast 129.159.115.255 |
この例では、両方のホスト上の物理ネットワークインタフェースが bge0 および bge1 のあとに表示されています。『IP Network Multipathing Administration Guide』 で説明されているように、bge0:1 および bge1:1 のあとに表示されているのはマルチパステストインタフェースです。これは、ifconfig の出力では「非推奨」として指定されています。
この環境で HADB を設定するには、各ホストから 1 つの物理インタフェースアドレスを選択します。この例において、HADB は host1 からは 129.159.115.10、host2 からは 129.159.115.20 の IP アドレスを使用しています。ホストごとに 1 つのデータベースノードを含むデータベースを作成するには、コマンド hadbm create --hosts を使用します。次に例を示します。
hadbm create --hosts 129.159.115.10,129.159.115.20 |
ホストあたり 2 つのデータベースノードを含むデータベースを作成するには、次のコマンドを使用します。
hadbm create --hosts 129.159.115.10,129.159.115.20, 129.159.115.10,129.159.115.20 |
どちらの場合も、マシン上のどちらのインタフェースをエージェントが使用するべきかを指定するために、host1 と host2 で別のパラメータを使用してエージェントを構成する必要があります。そのため、host1 では次のパラメータを使用します。
ma.server.mainternal.interfaces=129.159.115.10 |
また、host2 では次のパラメータを使用します。
ma.server.mainternal.interfaces=129.159.115.20 |
ma.server.mainternal.interfaces 変数については、「設定ファイル」を参照してください。
HADB が単一のネットワーク障害に耐えられるようにするには、オペレーティングシステム (たとえば、Solaris) でサポートされているならば IP マルチパスを使用します。Windows Server 2003 では、二重ネットワークを使用して HADB を構成しないでください。このオペレーティングシステムは、二重ネットワークでは正常に動作しません。
オペレーティングシステムに IP マルチパスが設定されておらず、HADB ホストに 2 枚の NIC が実装されている場合は、二重ネットワークを使用するように HADB を設定できます。すべてのホストについて、各ネットワークインタフェースカード (NIC) の IP アドレスを別の IP サブネットに配置する必要があります。
データベース内では、すべてのノードを単一のネットワークに接続するか、またはすべてのノードを 2 つのネットワークに接続する必要があります。
サブネット間のルーターは、サブネット間で UDP マルチキャストメッセージを転送するように設定する必要があります。
HADB データベースを作成するときは、–hosts オプションを使用して、各ノードに対して 2 つ (各 NIC IP アドレスに対して 1 つ) の IP アドレスまたはホスト名を指定します。各ノードについて、1 つ目の IP アドレスは net-0 上に、2 つ目の IP アドレスは net-1 上にあります。構文は次のようになります。同じノードに対するホスト名は正符号 (+) で区切ります。
--hosts=node0net0name+node0net1name ,node1net0name+node1net1name ,node2net0name+node2net1name , ...
たとえば、次の引数では 2 つのノードが作成され、それぞれに 2 つのネットワークインタフェースを持ちます。これらのノードの作成に、次のホストオプションが使用されます。
--hosts 10.10.116.61+10.10.124.61,10.10.116.62+10.10.124.62
これにより、ネットワークアドレスが次のように設定されます。
node0 には、10.10.116.61 と 10.10.124.61。
node1 には、10.10.116.62 と 10.10.124.62。
10.10.116.61 と 10.10.116.62、および 10.10.124.61 と 10.10.124.62 がそれぞれ同じサブネット上にあることに注目してください。
この例の場合、管理エージェントは同じサブネットを使用する必要があります。そのため、設定変数 ma.server.mainternal.interfaces を、たとえば、10.10.116.0/24 に設定する必要があります。この設定は、この例の両方のエージェントに使用できます。