Azure VM:将保留 IP 地址添加到现有 VM
Azure VM: Adding a Reserved IP address to an existing VM
到目前为止,我在网上了解到,无法将保留 IP 添加到现有 VM(除非我重新创建我试图避免的 VM)。但是,我注意到我的 VM 和云服务的外部 IP 是相同的。
Reserved IP Addresses 页面解释了如何 "To use a Reserved IP with Cloud Services"。我在 Azure 管理门户中到处查看,但找不到服务配置架构的配置设置。
我使用 Azure 调度程序在晚上和周末关闭 VM。从下面我了解到,我需要在调度程序脚本中编写一些内容,以便在早上 VM 启动时重新分配保留 IP。我做对了吗?
Shutdown VM - Previously, when all the Virtual Machine instances in a
cloud service were moved to the Shutdown state (stop/deallocated), the
public IP would be released and a new public IP would be assigned when
one of the Virtual Machines instances was started. However, with this
release, if the VM uses a Reserved IP, then the Reserved IP can be
used when re-deploying the VMs.
P.S。 Stack Overflow 是提出此类与 Azure 相关问题的最佳场所,还是我将来应该使用 Server Fault?我在两个网站上都看到了 Azure 问题。
目前,我们不支持将保留 IP 关联到现有 VM 的功能。
我们目前正在研究保留现有 VM 的 IP 的功能。
参考:http://azure.microsoft.com/blog/2014/05/14/reserved-ip-addresses/
http://www.petri.com/how-to-reserve-public-virtual-ip-addresses-in-microsoft-azure.htm
吉里什帕吉瓦尔
逐步创建保留 IP 并在 Azure VM 上使用它。你可以去
我在AWS.Here上做了弹性IP自动调度,参考linkElastic IP Automation on AWS script。
Between 需要检查如何编写一个脚本来自动为 Azure.If 保留 IP,您之前已经完成了,请分享该脚本,这将非常有用。谢谢
在 Build 2015 上,他们宣布这现在是可能的,而且非常容易。
只需打开 Azure powershell 和 运行 这个:
New-AzureReservedIP -ReservedIPName "ipname" -Location "West US" -ServiceName "somevm"
如果您 运行 这将保留一个名为 "ipname" 的 IP 并将其与已部署的实例相关联 "somevm.cloudapp.net"
New-AzureReservedIP -ReservedIPName "nameIP" -Location "East US" -ServiceName "azureA2vm"
得到这个:
New-AzureReservedIP : A parameter cannot be found that matches parameter name 'ServiceName'.
At line:1 char:70
+ New-AzureReservedIP -ReservedIPName "nameIP" -Location "East US" -ServiceNam ...
+ ~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [New-AzureReservedIP], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.WindowsAzure.Commands.ServiceManagement.IaaS.NewAzureReservedIPCmdlet
检查 PowerShell 版本。更新到最新版本。
要将现有保留 IP 分配给现有 VM,您可以使用以下命令:
Set-AzureReservedIPAssociation -ReservedIPName MyReservedIP -ServiceName TestService
对于新的 VM(带有资源管理器),您应该执行以下操作:
创建新的静态 IP 地址:
$ip = New-AzureRmPublicIpAddress -Name "<ip-name>" -ResourceGroupName <group-name> -Location eastus -AllocationMethod Static
获取有关 VM 网络接口的信息:
Get-AzureRmVM -ResourceGroupName <group-name> -Name <vm-name> | Select -ExpandProperty NetworkProfile
获取对应的网络接口并设置新的ip和更新网卡:
$netInt = Get-AzureRmNetworkInterface -ResourceGroupName "group-name" -Name <nic-name>
$netInt.IpConfigurations[0].PublicIpAddress = $ip
Set-AzureRmNetworkInterface -NetworkInterface $netInt
我阅读了之前的所有条目,但并没有清楚地了解如何继续为我现有的 Azure 经典 VM 分配保留 IP 地址,因此我开了一张支持票。我从 Azure Networking 的支持工程师 "Sruthi Saranya K" 那里得到了非常明确的指导。 Sruthi 说 "in classic deployment model it is not possible to have a static public IP assigned to a VM",我在别处读过,但她澄清说你只需将 IP 地址分配给云服务而不是直接分配给 VM,然后 VM 会自动接收更改。为了您的方便,我在此处概述了所有命令,从 Azure PowerShell 提示符开始。此处的顶部响应中指定了关键命令,但不是所有步骤。此外,该示例还包括指定服务,但它似乎不是该命令支持的参数,而是有第二个命令将 IP 与服务相关联。
add-azureaccount(从 PowerShell 登录到 Azure)
New-AzureReservedIP -ReservedIPName "ipname" -Location "East US"
get-azurereservedip(只是为了查看保留的 IP 地址是什么)
设置 AzureReservedIPAssociation -ReservedIPName "ipname" -ServiceName "your cloud service name"
此外,根据用途,您可能需要在 mxtoolbox.com 上查找 IP 地址以确保它未被列入黑名单。我保留的 IP 是用于网站的,但是该域的默认 @ DNS 条目意味着我们的域通常会与该 IP 地址相关联,并且之前我们的邮件已被列入黑名单,因为我们的 Web 服务器 IP 地址被其他人玷污了Azure 租户。如果你得到一个列入黑名单的地址,你可以将其删除并获得一个新地址,这也是 Sruthi 的建议。以下是删除保留 IP 和删除云服务关联(如果需要)的命令:
删除 azurereservedip
删除 AzureReservedIPAssociation
我衷心感谢 Sruthi 使它变得如此简单并防止不必要地重新部署我们公司的 public 网络服务器。
将 Public IP 添加到现有 VM
- 登录门户
- 找到您的 VM 所在的资源组 (RG)
- 确认您的 VM 有网络接口 - 如果没有,请创建一个(它应该有一个)
- 创建一个 Public IP 地址(静态或动态,无关紧要),方法是从市场上向您的 RG 添加一个(首先执行此操作,以便在您创建 NSG 时创建它)。
- 通过将一个网络服务组从市场添加到您的 RG 并将其与您的 VM 关联来创建网络服务组。
- 部署 NSG 后,返回 PIP 概览并单击 blade 的信息部分中的 "Associate" 按钮。
- Select 您在步骤 3 中验证的 VM 的网络接口。
喝杯咖啡什么的,一分钟就好了,否则你就完了。
到目前为止,我在网上了解到,无法将保留 IP 添加到现有 VM(除非我重新创建我试图避免的 VM)。但是,我注意到我的 VM 和云服务的外部 IP 是相同的。
Reserved IP Addresses 页面解释了如何 "To use a Reserved IP with Cloud Services"。我在 Azure 管理门户中到处查看,但找不到服务配置架构的配置设置。
我使用 Azure 调度程序在晚上和周末关闭 VM。从下面我了解到,我需要在调度程序脚本中编写一些内容,以便在早上 VM 启动时重新分配保留 IP。我做对了吗?
Shutdown VM - Previously, when all the Virtual Machine instances in a cloud service were moved to the Shutdown state (stop/deallocated), the public IP would be released and a new public IP would be assigned when one of the Virtual Machines instances was started. However, with this release, if the VM uses a Reserved IP, then the Reserved IP can be used when re-deploying the VMs.
P.S。 Stack Overflow 是提出此类与 Azure 相关问题的最佳场所,还是我将来应该使用 Server Fault?我在两个网站上都看到了 Azure 问题。
目前,我们不支持将保留 IP 关联到现有 VM 的功能。 我们目前正在研究保留现有 VM 的 IP 的功能。
参考:http://azure.microsoft.com/blog/2014/05/14/reserved-ip-addresses/ http://www.petri.com/how-to-reserve-public-virtual-ip-addresses-in-microsoft-azure.htm
吉里什帕吉瓦尔
逐步创建保留 IP 并在 Azure VM 上使用它。你可以去
我在AWS.Here上做了弹性IP自动调度,参考linkElastic IP Automation on AWS script。
Between 需要检查如何编写一个脚本来自动为 Azure.If 保留 IP,您之前已经完成了,请分享该脚本,这将非常有用。谢谢
在 Build 2015 上,他们宣布这现在是可能的,而且非常容易。 只需打开 Azure powershell 和 运行 这个:
New-AzureReservedIP -ReservedIPName "ipname" -Location "West US" -ServiceName "somevm"
如果您 运行 这将保留一个名为 "ipname" 的 IP 并将其与已部署的实例相关联 "somevm.cloudapp.net"
New-AzureReservedIP -ReservedIPName "nameIP" -Location "East US" -ServiceName "azureA2vm"
得到这个:
New-AzureReservedIP : A parameter cannot be found that matches parameter name 'ServiceName'.
At line:1 char:70
+ New-AzureReservedIP -ReservedIPName "nameIP" -Location "East US" -ServiceNam ...
+ ~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [New-AzureReservedIP], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.WindowsAzure.Commands.ServiceManagement.IaaS.NewAzureReservedIPCmdlet
检查 PowerShell 版本。更新到最新版本。
要将现有保留 IP 分配给现有 VM,您可以使用以下命令:
Set-AzureReservedIPAssociation -ReservedIPName MyReservedIP -ServiceName TestService
对于新的 VM(带有资源管理器),您应该执行以下操作:
创建新的静态 IP 地址:
$ip = New-AzureRmPublicIpAddress -Name "<ip-name>" -ResourceGroupName <group-name> -Location eastus -AllocationMethod Static
获取有关 VM 网络接口的信息:
Get-AzureRmVM -ResourceGroupName <group-name> -Name <vm-name> | Select -ExpandProperty NetworkProfile
获取对应的网络接口并设置新的ip和更新网卡:
$netInt = Get-AzureRmNetworkInterface -ResourceGroupName "group-name" -Name <nic-name>
$netInt.IpConfigurations[0].PublicIpAddress = $ip
Set-AzureRmNetworkInterface -NetworkInterface $netInt
我阅读了之前的所有条目,但并没有清楚地了解如何继续为我现有的 Azure 经典 VM 分配保留 IP 地址,因此我开了一张支持票。我从 Azure Networking 的支持工程师 "Sruthi Saranya K" 那里得到了非常明确的指导。 Sruthi 说 "in classic deployment model it is not possible to have a static public IP assigned to a VM",我在别处读过,但她澄清说你只需将 IP 地址分配给云服务而不是直接分配给 VM,然后 VM 会自动接收更改。为了您的方便,我在此处概述了所有命令,从 Azure PowerShell 提示符开始。此处的顶部响应中指定了关键命令,但不是所有步骤。此外,该示例还包括指定服务,但它似乎不是该命令支持的参数,而是有第二个命令将 IP 与服务相关联。
add-azureaccount(从 PowerShell 登录到 Azure)
New-AzureReservedIP -ReservedIPName "ipname" -Location "East US"
get-azurereservedip(只是为了查看保留的 IP 地址是什么)
设置 AzureReservedIPAssociation -ReservedIPName "ipname" -ServiceName "your cloud service name"
此外,根据用途,您可能需要在 mxtoolbox.com 上查找 IP 地址以确保它未被列入黑名单。我保留的 IP 是用于网站的,但是该域的默认 @ DNS 条目意味着我们的域通常会与该 IP 地址相关联,并且之前我们的邮件已被列入黑名单,因为我们的 Web 服务器 IP 地址被其他人玷污了Azure 租户。如果你得到一个列入黑名单的地址,你可以将其删除并获得一个新地址,这也是 Sruthi 的建议。以下是删除保留 IP 和删除云服务关联(如果需要)的命令:
删除 azurereservedip
删除 AzureReservedIPAssociation
我衷心感谢 Sruthi 使它变得如此简单并防止不必要地重新部署我们公司的 public 网络服务器。
将 Public IP 添加到现有 VM
- 登录门户
- 找到您的 VM 所在的资源组 (RG)
- 确认您的 VM 有网络接口 - 如果没有,请创建一个(它应该有一个)
- 创建一个 Public IP 地址(静态或动态,无关紧要),方法是从市场上向您的 RG 添加一个(首先执行此操作,以便在您创建 NSG 时创建它)。
- 通过将一个网络服务组从市场添加到您的 RG 并将其与您的 VM 关联来创建网络服务组。
- 部署 NSG 后,返回 PIP 概览并单击 blade 的信息部分中的 "Associate" 按钮。
- Select 您在步骤 3 中验证的 VM 的网络接口。 喝杯咖啡什么的,一分钟就好了,否则你就完了。