2016-09-14 19 views
0

クラスタのインストールにazure ARMテンプレートを使用しようとしています。このテンプレートにはマスタノードとスレーブノードがあります。したがって、ARMのテンプレートでVMのFQDNを使用してVMのIPアドレスを取得する方法があるかどうかは疑問です。azureのARMテンプレートのVMのIPアドレスを取得

[System.Net.Dns]::GetHostByName("mytestpc1") 

このコマンドが機能するためにVMが到達可能でなければなりません:VMマシンのFQDNを取得するには

おかげ

+0

https://resources.azure.com - このサイトを見ると、紺色のapiがどのように整形されているかがわかります。 /subscriptions/xxxxxxxx/resourceGroups/AzureRM/providers/Microsoft.Network/networkInterfaces/ – 4c74356b41

+3

動的IPアドレスは、テンプレートのみでプロビジョニングできます。あなたは出力としてそのアドレスを得ることができるかもしれませんが、将来変化する可能性があります。あなたはFQDNを使ったほうがいいです(インターフェイスに名前を付けて使ってください) –

+0

質問は「方法」のように聞こえていて、直面している問題を強調していませんでした。あなたは問題の声明とあなたが試みた解決策を与えるべきです。 –

答えて

-4

VMのプライベートIPアドレスを取得するには、このコードが有効である必要があります。

$vms = get-azurermvm 
$nics = get-azurermnetworkinterface | where VirtualMachine -NE 

foreach($nic in $nics) 
{ 
    $vm = $vms | where-object -Property Id -EQ $nic.VirtualMachine.id 
    $prv = $nic.IpConfigurations | select-object -ExpandProperty PrivateIpAddress 

    $myobj = "" | Select "VMname", "PrivateIp" 
    $myobj.VMname = $($vm.Name) 
    $myobj.PrivateIp = $prv 

    $csvArray += $myobj 
} 

必要に応じてコードを変更してください。

+2

いい方法をトロール;)人はARMテンプレートについて質問しています – 4c74356b41

+0

@ 4c74356b41これはARMコードです。彼がしなければならないことは、それをコピーしてテンプレートに貼り付けることだけです。 –

+1

私は、ARMテンプレートの内容について同じページにいるとは思わない。 – 4c74356b41

関連する問題