Cluster Server 8.0.2 付属エージェントリファレンスガイド - Linux
- 付属エージェントの概要
- ストレージエージェント
- DiskGroup エージェント
- DiskGroupSnap エージェント
- Volume エージェント
- VolumeSet エージェント
- LVMLogicalVolume エージェント
- LVMVolumeGroup エージェント
- Mount エージェント
- Mount エージェントの設定例
- VMwareDisksエージェント
- SFCache エージェント
- Network エージェント
- ネットワークエージェントについて
- IP エージェント
- NIC エージェント
- IPMultiNIC エージェント
- MultiNICA エージェント
- DNS エージェント
- AWSIP エージェント
- AWSRoute53 エージェント
- AzureDNSZone エージェント
- ファイル共有エージェント
- サービスエージェントとアプリケーションエージェント
- Apache HTTP サーバーエージェント
- Application エージェント
- AzureAuth エージェント
- CoordPoint エージェント
- KVMGuest エージェント
- KVMGuest エージェントに関する注意
- KVMGuest 環境の設定例
- RHEV 環境の設定例
- Process エージェント
- ProcessOnOnly エージェント
- RestServer エージェント
- インフラエージェントとサポートエージェント
- エージェントのテスト
- レプリケーションエージェント
- RVG エージェント
- RVGPrimary エージェント
- RVGSnapshot
- RVGShared エージェント
- RVGLogowner エージェント
- RVGSharedPri エージェント
- VFRJob エージェント
OCIIP エージェント
OCIIP エージェントは、OCI 環境内の IP (PrivateIP、OverlayIP、または ReservedPublicIP) をフェールオーバーするのに役立ちます。
OCIIP エージェントは、次の操作を実行します。
NIC の詳細をフェッチし、プライベート IP を NIC に関連付けたり、NIC からプライベート IP の関連付けを解除したりします。
パブリック IP アドレスをプライベート IP アドレスと関連付けたり、関連付けを解除したりします。
サブネットへのフェールオーバーのためのオーバーレイ IP のルートテーブルエントリを管理します。
OCIIP エージェントは、OCI Python API を使用して、IP リソースを OCI VM インスタンスと関連付けます。
Oracle Python モジュールが、各クラスタノードに存在する必要があります。
次のコマンドを実行して、各クラスタノードに Python SDK 2.102.0 for OCI をインストールしてください。
/opt/VRTSpython/bin/pip install --upgrade pip
/opt/VRTSpython/bin/pip install oci==2.102.0
次の手順では、インスタンスをプリンシパルとして設定および使用するためのプロセスフローの概略を示します。動的グループを作成します。
動的グループ定義では、一致するルールを指定して、サービスに対する API 呼び出しを許可するインスタンスを指定します。
テナント (またはコンパートメント) 内のサービスにアクセスする権限を動的グループに付与するポリシーを作成します。
開発者は、Oracle Cloud Infrastructure SDK を使用して構築されたアプリケーションを、インスタンスプリンシパルプロバイダを使用して認証するように設定します。
動的グループに属するすべてのインスタンスにアプリケーションと SDK を配備します。
配備された SDK は、ポリシーで許可されている範囲で (API クレデンシャルの設定なしで) Oracle Cloud Infrastructure API を呼び出します。
インスタンスが行う API 呼び出しごとに、監査サービスはイベントをログに記録し、インスタンスの OCID を principalId の値としてイベントログに記録します。
ポリシーに必要な最小限の権限:
PRIVATE_IP_READ
PRIVATE_IP_UPDATE
PRIVATE_IP_ASSIGN
PRIVATE_IP_UNASSIGN
PRIVATE_IP_ASSIGN_PUBLIC_IP
PRIVATE_IP_UNASSIGN_PUBLIC_IP
SUBNET_ATTACH
SUBNET_DETACH
VNIC_UPDATE
PUBLIC_IP_READ
PUBLIC_IP_UPDATE
ROUTE_TABLE_READ
ROUTE_TABLE_UPDATE
ポリシーステートメントの例
Allow dynamic-group OCIIP-MIN-PERMISSIONS-DG to manage private-ips in compartment Test
Allow dynamic-group OCIIP-MIN-PERMISSIONS-DG to use subnets in compartment Test
Allow dynamic-group OCIIP-MIN-PERMISSIONS-DG to inspect vnic-attachments in compartment Test
Allow dynamic-group OCIIP-MIN-PERMISSIONS-DG to manage vcns in compartment Test
Allow dynamic-group OCIIP-MIN-PERMISSIONS-DG to inspect vnics in compartment Test
Allow dynamic-group OCIIP-MIN-PERMISSIONS-DG to read instances in compartment Test
Allow dynamic-group OCIIP-MIN-PERMISSIONS-DG to manage route-tables in compartment Test
このセクションでは、OCIIP エージェントの必須属性を示します。
表: 必須属性
属性 |
説明 |
---|---|
PrivateIP |
OCI インスタンスのセカンダリプライベート IP アドレスです。 OverlayIP の値が指定されていない場合、この値は必須です。 |
NICDevice |
ネットワークデバイスの名前です。 |
OverlayIP |
オーバーレイ IP は、サブネットにまたがるノードのために IP フェールオーバー機能を提供します。オーバーレイ IP は、ノードが存在する VCN CIDR ブロックの外にある必要があります。PrivateIP が指定されていない場合、この値は必須です。 |
RouteTableId |
OverlayIP のルートエントリを追加する必要があるルートテーブルの OCI ID です。OverlayIP が設定されている場合は、この属性の値を指定する必要があります。 |
ReservedPublicIP |
この IP は、パブリック IP アドレスをセカンダリプライベート IP アドレスにマップするために IP 設定で使用されます。ReservedPublicIP 属性を設定する場合は、PrivateIP 値を指定する必要があります。 |
OCIIP types.cf
type OCIIP ( static str ArgList[] = { PrivateIP, OverlayIP, ReservedPublicIP, NICDevice, RouteTableId, tempCompartmentID, tempInstanceID, tempPrivateIPID } str PrivateIP str OverlayIP str ReservedPublicIP str NICDevice str RouteTableId[] temp str tempCompartmentID temp str tempInstanceID temp str tempPrivateIPID )
設定例
PrivateIP を使用する設定例
OCIIP ip-res-OCI ( PrivateIP = "11.1.1.1" NICDevice = "eth0" ) IP ip-res ( Address = "11.1.1.1" Device = "eth0" NetMask = "111.111.111.0" ) ip-res-OCI requires ip-res
オーバーレイ IP を使用する設定例
OCIIP ip-res-OCI ( OverlayIP = "111.111.1.1" RouteTableId = "ocid1.routetable.oc1.phx. aaaaaaaaxxu32fw6gilbyxlly2kqjq37p7xzl6a" NICDevice = "eth0" ) IP ip-res ( Address = "111.111.1.1" Device = "eth0" NetMask = "255.255.255.0" ) ip-res-OCI requires ip-res
予約済みパブリック IP を使用する設定例
OCIIP ip-res-OCI ( PrivateIP = "11.1.11.1" ReservedPublicIP = "111.111.111.111" NICDevice = eth0 ) IP ip-res ( Device = eth0 Address = "11.1.11.1" NetMask = "255.255.255.0" ) ip-res-OCI requires ip-res
Open |
PrivateIP: メタデータ情報を使用して、compartmentId、OCI インスタンスの vmId、および IP の OCIID を自動的に取得します。 OverlayIP: メタデータ情報を使用して、compartmentId、OCI インスタンスの vmId を自動的に取得します。 予約済みパブリック IP: メタデータ情報を使用して、compartmentId、OCI インスタンスの vmId を自動的に取得します。 |
Online |
PrivateIP: 同じ IP が他のクラスタノードに割り当てられているかどうかを確認し、割り当てられている場合、割り当てを解除します。 提供されたネットワークインターフェースに IP を割り当てます。 OverlayIP: RouteTableID 属性をフェッチします。RouteTableID が空白の場合はエラーを返し、それ以外の場合は、指定されたオーバーレイ IP を持つルートエントリが指定されたルートテーブルに存在し、次のホップ ID が他のクラスタノードであるインスタンス ID であるかどうかを確認します。その場合、ルートエントリを削除します。 指定されたオーバーレイ IP として「宛先 CIDR ブロック」を持ち、次のホップが現在のインスタンス ID であるように、指定されたルートテーブルにルートエントリを作成します。 予約済みパブリック IP: 同じ予約済みパブリック IP が他のクラスタノードに割り当てられているかどうかを確認し、割り当てられている場合、割り当てを解除します。 提供されたイーサネットに PrivateIP と予約済みパブリック IP を割り当てます。 |
Offline/Clean |
PrivateIP: NIC デバイスから IP を切り離します。 OverlayIP: 指定されたオーバーレイ IP と、現在のインスタンス ID として次のホップを含むルートエントリを削除します。 予約済みパブリック IP: NIC デバイスから PrivateIP と関連する予約済みパブリック IP を切り離します。 |
Monitor |
PrivateIP:
OverlayIP:
予約済みパブリック IP:
|
ONLINE |
|
OFFLINE |
|
UNKNOWN |
次のいずれかがあてはまる可能性があります。
|
FAULTED |
|
OCIIP エージェントは、DBG_1 と DBG_2 のデバッグログレベルを使用します。
OCIIP エージェントは、次のモジュールでテスト済みおよび承認済みです。
表:
OCIIP Python モジュール |
バージョン |
---|---|
OCI |
2.102.0 |