アプリケーションのクライアントがネットワークを介してアプリケーションにアクセスし、アプリケーションの配置ポリシーによって別のノードへのフェイルオーバーが可能である場合は、アプリケーションが依存する仮想インターネット・プロトコル・アドレス(VIP)を登録する必要があります。アプリケーションVIPは、Oracle Clusterwareによって管理されるクラスタ・リソースです(Oracle ClusterwareではアプリケーションVIP用の標準VIPエージェントが提供されます)。システムで、クラスタにデプロイされたすべてのVIPの動作の一貫性が保持されるように、新しいアプリケーションVIPはこのVIPタイプに基づく必要があります。
Oracle Clusterwareが管理するその他のリソースを追加するときと同じ方法でVIPを追加することができますが、Oracleでは、Grid_home
/bin/appvipcfg
コマンドライン・ユーティリティを使用して、ora.net1.network
がデフォルトで作成されるデフォルトのネットワークにアプリケーションVIPを作成または削除することをお薦めします。
アプリケーションVIPを作成するには、次の構文を使用します。
appvipcfg create -network=network_nummber -ip=ip_address -vipname=vip_name -user=user_name [-group=group_name] [-failback=0 | 1]
注意:
VIP名は、リソースをオンラインにしたまま、リソースを再起動せずに変更できます。
デフォルトのネットワークにVIPを作成する場合、-network=1
を設定します。
デフォルト以外のネットワークにアプリケーションVIPを作成するには、場合によって、最初にsrvctl add network
コマンドを使用してネットワークを作成する必要があります。その後、-network=
non-default_network_number
を設定してアプリケーションVIPを作成できます。
Oracle Flex Clusterでは、srvctl add network
コマンドを次の構文で使用して、アプリケーションをリーフ・ノード上で実行できるように、アプリケーションVIPのリーフ・ノード・ネットワーク・リソースを追加することもできます。
srvctl add network -netnum=network_number -subnet subnet/netmask[/if1[|if2|...]] -leaf
関連項目:
srvctl add networkコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。
リーフ・ノードの詳細は、「Oracle Flex Cluster」を参照してください。
アプリケーションVIPを削除するには、次の構文を使用します。
appvipcfg delete -vipname=vip_name
前述の構文の例で、network_number
はネットワークの番号、ip_address
はIPアドレス、vip_name
はVIPの名前、user_name
はOracle Databaseをインストールしたユーザーの名前、group_name
はグループの名前です。-failback
オプションのデフォルト値は0です。オプションを1に設定すると、VIP(および、VIPに依存するすべてのリソース)は、元のノードが再び使用可能になると、元のノードにフェイルバックします。
注意:
-ip=
ip_address
パラメータは必須ですが、グリッド・プラグ・アンド・プレイおよびDHCPとGNSが構成されている場合、このパラメータでは常にDHCPサーバーからのIPアドレスが取得され、コマンドで指定されたIPアドレスは無視されます。DHCPを使用する場合、-vipname=
vip_name
パラメータの値も無視されます。
たとえば、root
として次のコマンドを実行します。
# Grid_home/bin/appvipcfg create -network=1 -ip=148.87.58.196 -vipname=appsVIP -user=root
スクリプトには、アプリケーションVIPリソースを所有するユーザーのほか、ネットワーク番号、IPアドレス、VIPリソースの名前のみが必要です。VIP関連の操作にはroot権限が必要であるため、通常、VIPリソースはroot
が所有します。
アプリケーションVIPを削除するには、delete
オプションで同じスクリプトを使用します。このオプションはVIPの名前をパラメータとして受け入れます。次に例を示します。
# Grid_home/bin/appvipcfg delete -vipname=appsVIP
この構成スクリプトを使用してアプリケーションVIPを作成したら、次のコマンドを使用してVIPプロファイルを表示できます。
Grid_home/bin/crsctl status res appsVIP -p
Grid_home
/bin/crsctl modify res
コマンドを使用して次のパラメータの検証と、必要に応じて変更を行います。
関連項目:
CRSCTLコマンドの使用の詳細は、「Oracle Clusterwareのリソース・リファレンス」を参照してください。
appvipcfg
スクリプトは、-network=1
に設定されていても-network
オプションを指定する必要があります。
Oracle Databaseインストール所有者として、VIPリソースを起動します。
$ crsctl start resource appsVIP