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
時、Azure DNS は、対象ゾーンのネームサーバー (NS) レコードと SOA (Start of Authority) レコードを自動的に作成します。
AzureDNSZone エージェントは、DNS ベースのトラフィックルーティングとフェールオー バーを提供します。フェールオーバー中に、リソースレコードを動的にドメインに追加した り、ドメインから削除したりする必要がある場合は、AzureDNSZone エージェントを使用 します。エージェントは、フェールオーバー中に新しいリソースレコードのマッピングを更 新し、クライアントがアプリケーションのフェールオーバーインスタンスに接続できるように します。
前提条件
■ AzureAuth エージェントを設定します。p.276 の 「AzureAuth エージェント」 を参照し
てください。
■ ドメイン名を所有します。
■ ルートドメイン名を使用して、DNS ゾーンを作成します。
■ Azure DNS にドメイン名を委任します。p.170 の 「Azure DNS へのドメインの委任」
を参照してください。
依存関係
AzureDNSZone リソースは AzureAuth リソースに依存します。
第 3 章 Network エージェント 165 AzureDNSZone エージェント
図 3-9 サービスグループ依存関係の例
Application
IP
AzureIP
NIC
Mount
Volume
DiskGroup
AzureDisk Phantom
AzureAuth
AzureAuth へのプロキシ
パラレルサービスグループ
VxVM 環境
AzureDNSZone
エージェント関数
Azure DNS ゾーンのリソースレコードセットを作成または更新します。
Online
OffDelRR が 1 に設定されている場合、ホストされている Azure DNS ゾー ンからリソースレコードセットを削除します。OffDelRR が 1 に設定されて いない場合、レコードは削除されません。OffDelRR のデフォルト値は 0 です。
Offline
リソースレコードセットがあるかどうかと、ホストされている Azure DNS ゾー ンにすべてのマッピングがあるかどうかを監視します。
メモ: リソースレコードセットが手動で追加または削除された場合、エー ジェントはこれらのレコードセットの状態変更を監視しません。
Monitor
第 3 章 Network エージェント 166 AzureDNSZone エージェント
OffDelRR が 1 に設定されている場合、ホストされている Azure DNS ゾー ンからリソースレコードセットを削除します。OffDelRR が 1 に設定されて いない場合、レコードは削除されません。
Clean
状態の定義
Azure DNS ゾーンにすべてのリソースレコードセットがあることを示しま す。
ONLINE
Azure DNS ゾーンに、リソースレコードセットのすべてまたはいずれかが 存在しないことを示します。
OFFLINE
次のいずれかの理由で問題が発生していることを示します。
■ Azure Python SDK がインストールされていない。
■ Azure DNS ゾーンがない。
■ 役割が正しく設定されていない。
■ AzureDnsZoneResourceId が無効。
■ リソースレコードタイプ (RSType) が A、AAAA、CNAME、または PTR のいずれでもない。
■ ResRecord の値が適切な RSType 値ではない。
UNKNOWN
属性
表 3-18 必須属性 説明 属性
Azure DNS ゾーンのリソース ID です。
データ形式と値のタイプ: 文字列 - スカラー AzureDnsZoneResourceId
第 3 章 Network エージェント 167 AzureDNSZone エージェント
説明 属性
ResRecord は DNS リソースレコード値の関連です。各 ResRecord 属性は、次の 2 つの値で構成されます: DNS レコードキーと DNS レコードデータ。
レコードキーは重複のない値でなければならないことに注意します。
リソースレコードリストに、ResRecord 属性のレコードキーまたはレ コードデータの一部として無効な値が含まれている場合、リソースは UNKNOWN 状態を報告します。
リソースレコードは、次のいずれかのタイプになります。
■ A
■ AAAA
■ CNAME
■ PTR
データ形式と値の種類: 文字列 - 関連 ResRecord
Azure DNS ゾーンでサポートされるレコードタイプです。
データ形式と値のタイプ: 文字列 - スカラー RSType
Azure 関連の認証を処理する認証エージェントリソースの名前です。
データ形式と値のタイプ: 文字列 - スカラー AzureAuthResName
表 3-19 オプションの属性 説明 属性
すべてのリソースレコードに対して存続する最小時間を秒単位で指 定します。デフォルト値は 3600 秒です。
データ形式と値のタイプ: 整数 - スカラー TTL
リソースレコードが、リソースオフラインエントリポイントの一部として削 除されるかどうかを決定します。デフォルトは false です。
データ形式と値の種類: ブール - スカラー OffDelRR
リソースの種類の定義
type AzureDNSZone (
static str ArgList[] = { AzureDnsZoneResourceId, RSType, ResRecords, TTL, OffDelRR,
"AzureAuthResName:SubscriptionId", "AzureAuthResName:ClientId",
"AzureAuthResName:SecretKey", "AzureAuthResName:TenantId" } str AzureDnsZoneResourceId
第 3 章 Network エージェント 168 AzureDNSZone エージェント
str RSType str ResRecords{}
int TTL = 3600 boolean OffDelRR = 0 str AzureAuthResName )
設定例
A
AzureDNSZone a_record ( AzureDnsZoneResourceId =
"/subscriptions/6940a326-fgh6-40dd-b616-c1e9bbdf1d63/resourceGroups/
azureRG/providers/Microsoft.Network/dnszones/example.com ResRecords = { "www" = "10.44.50.1,10.45.1.1", "vm1" = "10.44.50.2", "vm2" =
"10.44.51.10",
"@" = "10.45.55.66" } RSType = "A"
TTL = 300
AzureAuthRes = "azure-auth-res"
)