AWSBinDir = "/usr/local/bin"
)
エージェントは Azure Python API を使用して、Azure VM 内の IP リソースを関連付け ます。エージェントは次を実行します。
■ NIC の詳細の取得、IP 設定の作成、プライベート IP アドレスの関連付けおよび関連 付け解除
■ パブリック IP アドレスとプライベート IP アドレスの関連付けおよび関連付け解除
■ サブネット間でのフェールオーバーのためのオーバーレイ IP のルートテーブルエン トリの管理
前提条件
■ AzureAuth エージェントを設定します。p.276 の 「AzureAuth エージェント」 を参照し
てください。
■ PublicIP を設定するには、Azure ポータルで静的パブリック IP リソースを作成しま
す。
■ オーバーレイ IP の場合は、ルートテーブルを作成し、オーバーレイ IP をフェール オーバーするサブネットとルートテーブルを関連付けます。
メモ: サブネットは単一のルートテーブルと関連付けることができます。
依存関係
AzureIP リソースは、AzureAuth リソースに依存しています。
第 3 章 Network エージェント 159 AzureIP エージェント
図 3-8 サービスグループ依存関係の例
Application
IP
AzureIP
NIC
Mount
Volume
DiskGroup
AzureDisk Phantom
AzureAuth
AzureAuth へのプロキシ パラレルサービスグループ
VxVM 環境
エージェント関数
■ プライベート IP: プライベート IP を使用して IP 設定を作成し、
ネットワークインターフェースに関連付けます。
■ パブリック IP: プライベート IP とパブリック IP を使用して IP 設定 を作成します。IP 設定をネットワークインターフェースに関連付 けます。
■ オーバーレイ IP: RouteTableResourceIds 属性で指定された Azure ルートテーブルに、アドレスプレフィックスを OverlayIP、
次のホップをプライマリ NIC のプライベート IP として使用し、ルー トを作成します。
Online
■ プライベート IP: IP 設定を削除して、ネットワークインターフェー スからプライベート IP の関連付けを解除します。
■ パブリック IP: IP 設定を削除して、ネットワークインターフェース からプライベート IP とともにパブリック IP の関連付けを解除しま す。
■ Overlay IP: ルートをルートテーブルから削除します。
Offline/Clean
第 3 章 Network エージェント 160 AzureIP エージェント
■ プライベート IP: IP 設定とネットワークインターフェースの間の関 連付けを監視します。
■ パブリック IP: IP 設定とネットワークインターフェースの間の関連 付けを監視します。
■ Overlay IP: ルーティング情報を監視し、オーバーレイ IP のルー トテーブルエントリが存在するかどうかを確認します。
Monitor
状態の定義
■ プライベート IP: プライベート IP が NIC に割り当てられているこ とを示します。
■ パブリック IP: プライベート IP が割り当てられ、パブリック IP が プライベート IP に関連付けられていることを示します。
■ オーバーレイ IP: オーバーレイ IP のルートテーブルエントリが 存在することを示します。
ONLINE
■ プライベート IP: プライベート IP が NIC に割り当てられていな いことを示します。
■ パブリック IP: プライベート IP が割り当てられていないか、パブ リック IP がプライベート IP に関連付けられていないことを示しま す。
■ オーバーレイ IP: オーバーレイ IP のルートテーブルエントリが 存在しないことを示します。
OFFLINE
次のいずれかが当てはまる可能性があります。
■ Azure Python SDK がインストールされていない。
■ Azure NIC と仮想マシンで操作を実行するために必要な権限が
ない。
■ プライベート IP、パブリック IP、またはオーバーレイ IP が正しく ない形式で指定されている。
■ プライベート IP、パブリック IP、またはオーバーレイ IP がすでに 使用中である。
■ NICDevice 属性値が無効である。
■ オーバーレイ IP の場合、ルートテーブル ID が無効である。
■ NIC の IP 設定に無効な詳細がある。
■ オーバーレイ IP とプライベート IP の両方が設定されているか、
どちらも設定されていない。片方のみを設定する必要がありま す。
UNKNOWN
IP リソースをオンラインに移行できない、または VCS の制御外で突 然停止したことを示します。
FAULTED
第 3 章 Network エージェント 161 AzureIP エージェント
属性
表 3-16 必須属性 説明 属性
Azure VM のセカンダリプライベート IP アドレス。
OverlayIP が指定されていない場合、この値は必須です。
データ形式と値のタイプ: 文字列 - スカラー PrivateIP
ネットワークデバイスの名前です。
すべてのネットワークアダプタの一覧を表示するには、ip addr と 入力します。
例: eth0
上の例では、プライベート IP アドレスを次に利用可能な eth0 のエ イリアスに割り当てるために、eth0 を指定しています。
データ形式と値のタイプ: 文字列 - スカラー NICDevice
オーバーレイ IP は、サブネットにまたがるノードのために IP フェー ルオーバー機能を提供します。
オーバーレイ IP は、ノードが存在する VNet CIDR ブロックの外に ある必要があります。
PrivateIP が指定されていない場合、この値は必須です。
データ形式と値のタイプ: 文字列 - スカラー OverlayIP
すべてのルートテーブルを記述します。
スペースで区切られた 1 つ以上のルートテーブル ID を追加できま す。
データ形式と値の種類: 文字列 - ベクトル RouteTableResourceIds
Azure 関連の認証を処理する認証エージェントリソースの名前です。
データ形式と値のタイプ: 文字列 - スカラー AzureAuthResName
表 3-17 オプションの属性 説明 属性
Azure ポータルから作成された静的パブリック IP。
この IP は、パブリック IP アドレスをセカンダリプライベート IP アドレ スにマップするために IP 設定で使用されます。
データ形式と値のタイプ: 文字列 - スカラー PublicIP
第 3 章 Network エージェント 162 AzureIP エージェント
説明 属性
エージェントが実行されている Azure の VM の名前。
データ形式と値のタイプ: 文字列 - スカラー AzureVMName
Azure VM が存在する Azure リソースグループ。
データ形式と値のタイプ: 文字列 - スカラー VMResourceGroup
リソースの種類の定義
type AzureIP (
static str ArgList[] = { tempVMName, PrivateIP, NICDevice, PublicIP, tempPublicIPResourceId, AzureVMName, VMResourceGroup,
OverlayIP, RouteTableResourceIds,
"AzureAuthResName:SubscriptionId",
"AzureAuthResName:ClientId",
"AzureAuthResName:SecretKey",
"AzureAuthResName:TenantId", tempVMResourceGroupName }
str PrivateIP str NICDevice str PublicIP
temp str tempPublicIPResourceId str AzureVMName
str VMResourceGroup str OverlayIP
str RouteTableResourceIds[]
str AzureAuthResName temp str tempVMName
temp str tempVMResourceGroupName )
設定例
Private IP
AzureIP azure-ip-res ( PrivateIP = "10.1.5.42"
NICDevice @ CLOUDVM1 = "eth0"
第 3 章 Network エージェント 163 AzureIP エージェント
NICDevice @ CLOUDVM2 = "eth0"
AzureAuthResName = Auth_Res )
パブリック IP
AzureIP azure-ip-res ( PrivateIP = "10.1.5.52"
NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
PublicIP = "52.173.243.126"
AzureAuthResName = Auth_Res )
オーバーレイ IP
AzureIP overlay-ip-res ( NICDevice @ CLOUDVM1 = "eth0"
NICDevice @ CLOUDVM2 = "eth0"
OverlayIP = "192.168.3.88"
RouteTableResourceIds = {
"/subscriptions/6940a326-abc6-40dd-b616-d3f9bbdf1d63/resourceGroups/azureRG/
providers/Microsoft.Network/routeTables/azureroute1","/subscriptions /6940a326-abc6-40dd-b616-d3f9bbdf1d63/resourceGroups/azureRG/providers/
Microsoft.Network/routeTables/azureroute2"}
AzureAuthResName = Auth_Res )
デバッグログレベル
AzureIP エージェントは、次のデバッグログレベルを使用します。
DBG_1、DBG_2