gpt4 book ai didi

Azure Powershell(Az模块)获取公共(public)IP地址

转载 作者:行者123 更新时间:2023-12-02 20:05:57 24 4
gpt4 key购买 nike

使用 Azure 的新 Az 模块,有人知道使用名称获取 Azure VM 的公共(public) IP 地址的语法吗?Commandlet Get-AzPublicIpAddress 没有 VM 名称参数,只有 IP 对象名称

这可行,但我在这里没有使用机器名称,它是 IP 对象本身的名称:

$CurrentIp = (Get-AzPublicIpAddress -ResourceGroupName 'RG1' -Name 'MyVMname-ip').IpAddress

我不知道如何从 VM 对象获取它,即这不起作用:

Get-AzVM -ResourceGroupName 'RG1' -Name 'MyVMname' | Get-AzPublicIpAddress

最佳答案

据我所知,仅通过一个 PowerShell 获取虚拟机公共(public) IP 是不可能的 Get-AzPublicIpAddress与虚拟机名称。 Azure 中的公共(public) IP 是与网络接口(interface)关联的单独资源,而不是 VM。

如您所见,该文档中没有用于获取公共(public) IP 的 VM 名称参数。但是您可以通过 PowerShell 脚本仅使用虚拟机名称和资源组名称来获取公共(public) IP。脚本如下所示:

$vm = Get-AzureRmVM -ResourceGroupName yourRG -Name vmNamme
$nic = $vm.NetworkProfile.NetworkInterfaces[0].Id.Split('/') | select -Last 1
$publicIpName = (Get-AzureRmNetworkInterface -ResourceGroupName yourRG -Name $nic).IpConfigurations.PublicIpAddress.Id.Split('/') | select -Last 1
$publicIpAddress = (Get-AzureRmPublicIpAddress -ResourceGroupName yourRG -Name $publicIpName).IpAddress
Write-Output $vmName $publicIpAddress

或者只需一个 CLI 命令即可获取公共(public) IP,如下所示:

az vm show -d -g yourRG -n vmName --query publicIps

关于Azure Powershell(Az模块)获取公共(public)IP地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54669457/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com