【发布时间】:2015-09-24 23:00:08
【问题描述】:
我正在使用这个答案来查找我们的云服务的公共 ip。
Azure Powershell: Get public virtual IP of service
这仅返回生产云服务的端点。我们还需要轻松查找暂存云服务端点。
有人知道如何使用 Azure Powershell 查找这些吗?
谢谢!
【问题讨论】:
标签: powershell azure
我正在使用这个答案来查找我们的云服务的公共 ip。
Azure Powershell: Get public virtual IP of service
这仅返回生产云服务的端点。我们还需要轻松查找暂存云服务端点。
有人知道如何使用 Azure Powershell 查找这些吗?
谢谢!
【问题讨论】:
标签: powershell azure
Get-AzureDeployment 和 System.Net.Dns 课程会有所帮助。
Get-AzureDeployment -ServiceName your_service_name -Slot Staging
你会得到很多属性,包括 URL
然后您可以运行以下 PS 命令,该命令将为您提供给定域名的 IP 地址(其中your_url 通常为XX.cloudapp.net):
[System.Net.Dns]::GetHostAddresses("your_url") | foreach {echo $_.IPAddressToString }
我希望这会有所帮助。
【讨论】:
这是单行的,除了 Get-AzureDeployment 之外什么都不使用 - 并直接返回 VIP,只要您定义了至少一个 InputEndpoint - 否则无论如何您都无法连接到服务;)不需要繁重的解除或使用 DNS 客户端...
PS C:\> Get-AzureRole -ServiceName "your_service_name" -Slot "staging" -InstanceDetails -RoleName "your_desired_role_name_when_you_have_more_than_one_role" | select {$_.InstanceEndpoints[0].VIP }
您将获得 VIP。这里的重要选项是 -InstanceDetails,它将获取 Endpoints。
【讨论】:
这是我能想到的最简单的答案。它返回一个字符串,其中包含您指定的插槽中服务的 VIP。
PS C:\> (Get-AzureDeployment -ServiceName 'ServiceName' -Slot Staging).VirtualIPs.Address
【讨论】: