《Windows Azure Platform 系列文章目录

  

  注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪互联运维的Azure China,请参考下面的连接。

  Azure China (8) 使用Azure PowerShell创建虚拟机,并设置固定Virtual IP Address和Private IP  

  本文介绍的是,用户首先使用PowerShell申请公网IP地址,然后在创建Azure VM的时候,绑定公网IP地址。

  在之前的文章里,笔者介绍了,我们可以通过Azure PowerShell,固定Azure Virtual Machine的Private IP,即内网IP地址。

  但是Private IP只是帮助Virtual Machine通过数据中心的局域网进行通信,如果我们想固定公网的IP地址,即VIP,应该怎么办?

  Azure PowerShell允许用户设置固定(Reserved)Virtual IP Address。

  注意:默认情况下,客户通过管理界面Management Portal创建的虚拟机的Virtual IP,其实是从数据中心的IP池中随机获得的。当客户关闭虚拟机,虚拟机状态为Stop(Deallocate)的时候,Virtual IP会被释放,DNS会绑定到另外一个IP地址。

  如果客户A需要固定IP的情况下,需要通过Azure PowerShell向数据中心申请一个或者多个IP地址,这些IP地址就只会被客户A使用。

  除非客户A将申请的IP释放,否则其他用户是无法使用到客户A申请的公网IP地址。

  Azure Global的IP Rang信息,可以参考:http://www.microsoft.com/en-us/download/details.aspx?id=41653

  国内由世纪互联运维的Azure China的IP Rang信息,可以参考:http://www.microsoft.com/en-us/download/details.aspx?id=42064

  如果读者用的是百度查询IP地址,经常会发现Azure上海的IP地址经常会显示来自北京,这是由于百度的IP库比较老,请读者注意

  

  请注意:通过Azure Management Portal创建的虚拟机不能绑定公网IP地址。

  如果你已经通过Portal创建了虚拟机。需要删除该虚拟机所在的云服务,保留VHD以后。重新基于该VHD创建新的云服务。

  

  注意:固定Virtual IP Address(VIP)目前不支持使用地缘组(Affinity Group)的Virtual Network虚拟机,但是支持创建在数据中心的虚拟机。

  http://msdn.microsoft.com/en-us/library/azure/dn690120.aspx

  Reserved IP is supported only for Regional VNets. It is not supported for VNets that are associated with affinity groups. For more information about associating a VNet with a region or an affinity group, see About Regional VNets and Affinity Groups for Virtual Network.

  

  接下来,笔者将介绍如何创建固定IP地址,并关联到新建的Azure Virtual Machine虚拟机上。

  关键步骤主要分为以下几步:

  1.使用PowerShell,向Azure数据中心申请ReservedIP

  2.创建第一台虚拟机,同时向DNS绑定ReservedIP

  3.删除第一台虚拟机,释放ReservedIP

  4.创建第二台虚拟机,同时向新的DNS绑定ReservedIP

  5.注意:存储账号,DNS部署的位置,和IP地址的位置,都应该在同一个数据中心里

  1.首先我们以管理员身份运行Azure PowerShell

  请注意:如果你是第一次运行PowerShell,请按照[New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

  文章的内容,在本地创建证书文件。以便本地计算机和Azure建立可靠的安全连接。

  2.指定默认的存储

Set-AzureSubscription -SubscriptionName 'Windows Azure MSDN - Visual Studio Ultimate' -CurrentStorageAccount 'leivms'

  设置当前订阅:

Select-AzureSubscription -SubscriptionName 'Windows Azure MSDN - Visual Studio Ultimate' -Current

  3.在东亚地区(East Asia)申请一个新的Reserved VIP  

$ReservedIP = New-AzureReservedIP -ReservedIPName "LeiVMReservedIP" -Label "LeiVMReservedIP" -Location "East Asia"

  执行结果如下图:

  

  4.查看申请的Reserved VIP信息:

Get-AzureReservedIP -ReservedIPName "LeiVMReservedIP"

    

  上图中,可以看到InUse属性为False,表示这个ReservedIP没有被占用。

  5.设置镜像为Windows Server 2012 Datacenter

$imageList = Get-AzureVMImage `
| where {$_.ImageName -eq "a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-Datacenter-201407.01-en.us-127GB.vhd"} $image=$imageList[]

  上图的$image命令可以显示我们需要的Windows Server 2012 DataCenter镜像的相关信息

  如果我想模糊查询AzureImage的话,可以通过星号(*)通配符,来模糊查询。

  比如笔者只想查询Windows Server 2012 Datacenter的镜像,PowerShell如下:

$imageList = Get-AzureVMImage `
| where {$_.ImageName -like "*Windows-Server-2012-Datacenter*"} $image=$imageList[0]

  5.创建虚拟机网络,注意创建的虚拟网络不可以在某个地缘组的下面

  我们创建一个虚拟网络,命名为ReservedPublicIPVNet,IP Rang为192.168.0.0 - 192.168.0.255

  包含一个Subnet,命名为Subnet-1

  

  6.创建新的Azure Virtual Machine

  -  DNS为LeiVM001

  -  虚拟机名为LeiVM001

  -  虚拟机大小为Medium

  -  管理员名为adminuser

  -  管理员密码为Abc@123456

  -  虚拟网络为ReservedPublicIPVNet,子网为Subnet-1

  最后把我们在步骤一中获得ReservedIP分配给新创建的Virtual Machine

New-AzureVMConfig -Name 'LeiVM001' -InstanceSize Medium -ImageName $image.ImageName | Add-AzureProvisioningConfig -Windows -AdminUsername 'adminuser' -Password 'Abc@123456' | Set-AzureSubnet -SubnetNames 'Subnet-1' | New-AzureVM -ServiceName 'LeiVM001' -VNetName 'ReservedPublicIPVNet' –ReservedIPName 'LeiVMReservedIP' -Location 'East Asia'

  执行结果如下图:

  

    

  6.最后我们可以在Management Portal查询到创建的Cloud Service的VIP地址,

  23.101.5.0这个VIP地址就是我们在步骤四中查看到的,如下图:

  

    

  7.我们可以删除之前创建的DNS为LeiVM001的虚拟机,将Reserved IP (23.101.5.0)释放掉。

  创建第2个虚拟机,DNS为LeiVM002,重复利用23.101.5.0这个Reserved IP (PowerShell略)。如下图:

  

  

  8.我们还可以通过Get-AzureReservedIP这个命名,查看已经获得ReservedIP信息。如下图:

  

  注意:因为LeiVM002这个已经绑定了名为LeiVMReservedIP的VIP,所以上图中的属性InUse为True。

  

  最后,如果需要删除Azure Reserved IP地址,记得先把虚拟机和云服务都删除掉。

  然后执行命令:

  Remove-AzureReservedIP -ReservedIPName '[YourReservedIPName]'

Windows Azure Virtual Network (6) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (1)的更多相关文章

  1. Windows Azure Virtual Network (7) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (2)

    <Windows Azure Platform 系列文章目录> 本文介绍的是,当用户在创建Azure Virtual Machine的时候,忘记绑定公网IP,需要重新绑定公网IP的具体操作 ...

  2. Windows Azure Virtual Network (5) 设置Azure Virtual Machine固定Private IP

    <Windows Azure Platform 系列文章目录> 注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪 ...

  3. Windows Azure Virtual Network (8) 创建Azure Point-to-Site点到站点 VPN

    <Windows Azure Platform 系列文章目录> 我们在使用Azure的时候,常常有这样的需求: -我需要将企业内网的主机连接到微软Azure公有云平台 -我需要保证企业内部 ...

  4. Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 我们在创建完Windows Azure Virtual Machi ...

  5. [SDK2.2]Windows Azure Virtual Network (4) 创建Web Server 001并添加至Virtual Network

    <Windows Azure Platform 系列文章目录> 在上一章内容中,笔者已经介绍了以下两个内容: 1.创建Virtual Network,并且设置了IP range 2.创建A ...

  6. [SDK2.2]Windows Azure Virtual Network (5) 重启、关闭、开启VNet中Virtual Machine

    <Windows Azure Platform 系列文章目录> 我们知道,Windows Azure VM的IP分为以下两种:Internal IP Address和Public VIP ...

  7. Azure PowerShell (13) 批量设置Azure ARM Network Security Group (NSG)

    <Windows Azure Platform 系列文章目录> 刚刚在帮助一个合作伙伴研究需求,他们的虚拟机全面的网络安全组(Network Security Group, NSG)会经常 ...

  8. Windows Azure Cloud Service (44) 将Cloud Service加入Virtual Network Subnet,并固定Virtual IP Address(VIP)

    <Windows Azure Platform 系列文章目录> 在之前的文章中,笔者已经详细介绍了如何将Virtual Machine加入Virtual Network,并且绑定固定的Pr ...

  9. Windows Azure Virtual Network (11) 创建VNet-to-VNet的连接

    <Windows Azure Platform 系列文章目录> 我们知道,Azure Virtual Network可以 1.将对台Azure VM加入到同一个网段里,同时绑定内网IP地址 ...

随机推荐

  1. window下安装wamp环境

    Wamp就是Windos Apache Mysql PHP集成安装环境,即在window下的apache.php和mysql的服务器软件.其中php环境配置是至关重要的一部分,本文就针对php在本地的 ...

  2. php中的mysql 和 mysqli 区别

    mysql是非持续连接函数,每次链接都会打开一个连接进程 mysqli是持续连接函数,多次运行将使用同一连接进程,从而降低服务器开销.

  3. .net 第二周学习

    这周更进一步的介绍了.net,通过作业的练习,有那么一点点的成就感,相对于前端,成就感还不是很大,但是我还是会继续加油  学习.net,看着他们周末只能呆在寝室写网页,顿时我就高兴了:        ...

  4. 为什么要放弃使用Thread.Sleep

    前言 此文并不是说要完全放弃使用Thread.Sleep,而是要说明在符合哪些情况下使用! 场景 很多时候,我们会需要一个定时服务来处理业务. 但并不是死死的每隔N分钟执行一次那种,而是在一次处理完后 ...

  5. Web Essentials之通用功能

    返回Web Essentials功能目录 本篇目录 功能 快捷方式 WEIgnore 功能 通用功能应用于很多方面. 设置 所有的设置都可以在VS选择工具 -> 选项 -> Web Ess ...

  6. Entity Framework 5.0系列之Code First数据库迁移

    我们知道无论是"Database First"还是"Model First"当模型发生改变了都可以通过Visual Studio设计视图进行更新,那么对于Cod ...

  7. [.net 面向对象编程基础] (13) 面向对象三大特性——多态

    [.net 面向对象编程基础] (13) 面向对象三大特性——多态 前面两节,我们了解了面向对象的的封装和继承特性,面向对象还有一大特性就是多态.比起前面的封装和继承,多态这个概念不是那么好理解.我们 ...

  8. MySQL—FOREIGN KEY

    作用:保持数据一致性,完整性.实现一对一或一对多关系.(学习的过程中,老师说,实际的生产中,一般不使用物理上的外键约束的,都是使用逻辑上的外键约束) 要求: 父表与子表的存储引擎必须相等,而且只能是I ...

  9. easy-ui 小白进阶史(一):加载数据,easy-ui显示

    作为一个没上过大学,没经过正规培训的96年的小白来说,找工作就没报特别大的希望,大不了找不到在回炉重造,继续学... 终于在海投了200份的简历之后...终于找到了...面试也挺简单的,,,第二天就去 ...

  10. EF架构~有时使用SQL更方便

    回到目录 在进行统计时,尤其是按月进行统计,由于我们采用的时间是一个2015-12-12日这种,所以在linq你无法进行拆分,你拆分了在发到SQL时也会报错,因为SQL那边更新不需要你.net的方法, ...