2015-02-11 119 views
10

我到目前为止在网络上读到的是,没有办法添加一个保留的IP到现有的虚拟机(除非我重新创建我想要的虚拟机避免)。但是,我注意到我的VM和云服务的外部IP是相同的。Azure虚拟机:添加一个保留的IP地址到现有的虚拟机

  1. Reserved IP Addresses页面说明如何“使用保留的IP与云服务”。我在Azure管理门户中查找了各处,但找不到服务配置架构的配置设置。

  2. 我正在使用Azure调度程序在夜间和周末关闭虚拟机。从以下内容我了解到,我需要在计划程序脚本中编写一些内容,以便在虚拟机在早上启动时重新分配保留的IP。我是否正确?

    关闭VM - 以前,当所有的 云服务的虚拟机实例被转移到关闭状态(停止/解除分配),该 公共IP将被释放和新的公共IP将被分配当 其中一个虚拟机实例已启动。但是,在此发行版中,如果VM使用保留IP,则在重新部署VM时使用的保留IP可以为 。

P.S. Stack Overflow是提出与Azure有关的问题的最佳位置,还是将来会使用Server Fault?我在这两个网站都看到过Azure问题。

回答

17

在Build 2015他们宣布现在可以并且非常简单。 只需打开Azure的PowerShell和运行这个:

New-AzureReservedIP -ReservedIPName "ipname" -Location "West US" -ServiceName "somevm" 

如果你运行这个它会保留一个IP名为“ipname”,并将其与已部署的实例“somevm.cloudapp关联。净”

+0

谢谢。不过,我相信这个保留的IP仅用于内部目的。它不在服务级别。因此,如果我想从外部引用虚拟机,我不能使用相同的IP。 – 2015-09-20 07:42:18

+0

@java_enthu不知道你在说什么,但是这绝对设置了世界上任何人都可以访问的VIP – artfulhacker 2015-09-20 20:28:42

+0

我试过了。我的情况有点不同。我已经在这里发布/ http://stackoverflow.com/questions/32678558/reservedips-for-azure-vms-in-a-single-vnet-subnet/32678799?noredirect=1#comment53211642_32678799 – 2015-09-20 21:33:52

3

一步一步创建保留的IP,并用它在Azure VM。在这里,你可以去

Reserved IP Creation

我已经做AWS.Here弹性IP自动调度为参考链接Elastic IP Automation on AWS script

需要检查的问题我该如何编写一个脚本来自动保留Azure的IP。如果您之前已经完成了它,请分享该脚本,这将非常有用。谢谢。

-1
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的版本更新到最新版本

+0

请务必更新Powershell。如果PowerShell已过时,则这些命令将不起作用。更新PowerShell之后,可以将保留的IP分配给现有的虚拟机。 – Phillip 2015-10-02 07:00:32

8

为了分配现有的保留IP到现有的虚拟机,可以使用下面的命令:

Set-AzureReservedIPAssociation -ReservedIPName MyReservedIP -ServiceName TestService 
0

对于新的虚拟机(带资源管理器),您应该执行以下操作:

创建新的静态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和更新NIC:

$netInt = Get-AzureRmNetworkInterface -ResourceGroupName "group-name" -Name <nic-name> 
$netInt.IpConfigurations[0].PublicIpAddress = $ip 
Set-AzureRmNetworkInterface -NetworkInterface $netInt 
0

我阅读了以前的所有参赛作品,并没有清楚地了解如何继续参赛将保留的IP地址添加到我现有的Azure经典虚拟机中,因此我打开了一张支持凭单。我从Azure Networking的支持工程师“Sruthi Saranya K”得到了很好的明确指导。 Sruthi表示“在经典的部署模式中,不可能有一个静态公共IP分配给虚拟机”,我已经在其他地方读过,但她澄清说,你只需将IP地址分配给云服务而不是直接分配给虚拟机,然后虚拟机将自动接受更改。为了您的方便,我从这里列出了所有命令,从Azure PowerShell提示开始。关键命令是在这里的最高响应中指定的,但不是所有的步骤。此外,该示例还包括指定该服务,但它似乎不是该命令的受支持参数,而是有另一个将IP与该服务关联的命令。

附加azureaccount(从PowerShell的登录天青)
新AzureReservedIP -ReservedIPName “ipname” -Location “东美”
得到-azurereservedip(刚刚看到的保留IP地址是什么)
Set-AzureReservedIPAssociation -ReservedIPName“ipname”-ServiceName“您的云服务名称”

此外,根据使用情况,您可能希望查找mxtoolbox.com上的IP地址以确保它尚未列入黑名单。我保留的IP用于网站,但域的默认@ DNS条目意味着我们的域通常会与该IP地址相关联,并且之前我们的邮件已被列入黑名单,因为我们的Web服务器IP地址被其他一些IP地址欺骗Azure租户。如果你收到一个黑名单地址,你可以删除它,并得到一个新的,也是来自Sruthi的建议。下面是命令删除的保留IP,并且如果需要的话,除去云服务协会:

删除 - azurereservedip
删除,AzureReservedIPAssociation

衷心感谢Sruthi制作这么简单,防止不必要的重新部署我们公司的公共Web服务器。

0

添加公共IP到现有的VM

  1. 登录到门户
  2. 查找资源组(RG)在您的虚拟机所处的
  3. 确认您的虚拟机具有网络接口 - 如果不是,创建一个(它应该有一个)
  4. 创建一个公共IP地址(静态或动态,无关紧要),通过从市场添加一个到您的RG(首先执行此操作,以便在制作NSG时创建)。
  5. 通过从市场添加一个到您的RG并将其与您的VM关联来创建一个网络服务组。
  6. 一旦部署了NSG,返回PIP概述并单击刀片信息部分中的“关联”按钮。
  7. 选择您在第3步中验证的虚拟机的网络接口。 获取一杯咖啡或其他东西,这将是一分钟,但否则就完成了。