Windows Azure Platform 系列文章目录》 

  在开始本章内容之前,请读者熟悉以下2篇博文:

      [New Portal]Windows Azure Virtual Machine (8) Virtual Machine高可用(上)

      [New Portal]Windows Azure Virtual Machine (9) Virtual Machine高可用与自动负载均衡(下)

  按照上文的内容,我们分别创建2台不同的Virtual Machine:

  第一台机器名为LeiZhangVMOne  

  第二台机器名为LeiZhangVMTwo

  他们共享同一个CloudService Name: http://leizhangvm.cloudapp.net

  当我们通过Azure Management Portal查看2台VM属性的时候,会发现以下内容:

          

  通过上图红色区域我们发现,

  -第一台VM和第二台VM的Internal IP ADDRESS不同

  -Public Virtual IP (VIP)  Address却是一样的

  分析:Internal IP Address其实就是VM在Azure数据中心的内部网络地址,它是从DHCP获得的,所以每次关闭这台Azure VM一段时间再开机后,Internal IP就改变了。(如果要固定Internal IP Address,则需要使用Azure Virtual Network,我会在后面给大家介绍)

  为了验证笔者的看法,我们可以通过远程桌面连接,查看其中一台VM的网络属性。

  

  LeiZhangVMOne这台机器的IPv4地址是100.80.76.15。与第一张图的Internal IP Address一致。

  

  另外,如果我们在第一台虚拟机VMOne里设置共享文件夹ShareFolder并设置权限给Everyone。我们可以通过第二台虚拟机VMTwo的远程桌面连接,访问第一台虚拟机的共享文件夹。

  

  请注意:因为VMOne和VMTwo共享同一个Cloud Service,并且在同一个Avaliability Set,所以这两台机器可以互相访问。同一个用户创建的其他Azure VM,如果没有设置同一个Avaliability Set,将无法与之前的VMOne和VMTwo进行网络访问。

  第二个问题:什么是Public Virtual IP (VIP)  Address呢?这个地址其实是Azure VM的公网IP地址

  但实这个IP地址并不属于某一个Azure VM,而是在Azure Load Balance里。VIP的主要功能是负载均衡(Load Balance),并且VM在被删除后,VIP将被系统回收。所以这个IP是Virtual的。

  当在Internet上的其他客户端(比如笔者的笔记本电脑)。通过VIP访问Azure资源的时候,Load Balance会将该请求通过Endpoint,自动路由到Internal IP Address,可能会将请求发送给VMOne或者VMTwo。当VMOne或者VMTwo中有一台机器发生了异常,则Load Balance会将请求发送至正常的VM,以保证高可用。

  为了验证笔者的说法,我们使用本地电脑打开CMD,然后运行nslookup命令。以查看http://leizhangvm.cloudapp.net这个DNS对应的IP地址。如下图:

   

  可以看到http://leizhangvm.cloudapp.net这个DNS地址对应的IP地址(137.116.164.27)就是我们在Azure Portal上的Public Virtual IP (VIP)  Address。

  看到这里,有网友肯定会问:Azure VM为什么要使用Internal IP和Public Virtual IP呢?

  当某些场景需要多台VM之间互相通信的,笔者建议使用Internal IP。因为Internal IP安全可靠,用户不需要去考虑安全认证、SSL等问题。而且在采用了Virtual Network(我会在随后几章进行介绍)之后,可以打通公司内网和Azure网络的连接,这样公司内网的机器就可以通过Azure Internal IP访问公有云上的VM了。用户可以充分利用云计算带来的弹性计算,以降低IT投入成本。

  Public Virtual IP(VIP)的好处:笔者认为,Public Virtual IP最大的好处是可以做负载均衡(Load Balance)。

  

  关于IP回收:

  当用户同时删除了VMOne和VMTwo的时候,Internal IP AddressPublic Virtual IP (VIP)  Address也将会被Windows Azure收回。如果其他用户创建虚拟机的时候,可能会使用到被回收的Internal IP和VIP。

  那如果用户使用SHUT DOWN关闭Azure VM呢?我会在下一章进行介绍。

  

[New Portal]Windows Azure Virtual Machine (18) Azure Virtual Machine内部IP和外部IP的更多相关文章

  1. Windows Azure Web Site (18) Azure Web App设置MIME

    <Windows Azure Platform 系列文章目录> 在笔者之前的文章中,介绍了我们在使用Azure Web App,可以把静态资源保存到Azure Storage中: Wind ...

  2. [New Portal]Windows Azure Virtual Machine (19) 关闭Azure Virtual Machine与VIP Address,Internal IP Address的关系(1)

    <Windows Azure Platform 系列文章目录> 默认情况下,通过Azure Management Portal创建的Public IP和Private IP都是随机分配的. ...

  3. [New Portal]Windows Azure Virtual Machine (11) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (1)

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,作为自定义的虚拟机模板. 注意:因为在制作VHD的最 ...

  4. [New Portal]Windows Azure Virtual Machine (12) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (2)

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,作为自定义的虚拟机模板. 注意:因为在制作VHD的最 ...

  5. [New Portal]Windows Azure Virtual Machine (13) 在本地使用Hyper-V制作虚拟机模板,并上传至Azure (3)

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,作为自定义的虚拟机模板. 注意:因为在制作VHD的最 ...

  6. [New Portal]Windows Azure Virtual Machine (14) 在本地制作数据文件VHD并上传至Azure(1)

    <Windows Azure Platform 系列文章目录> 之前的内容里,我介绍了如何将本地的Server 2012中文版 VHD上传至Windows Azure,并创建基于该Serv ...

  7. [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

    <Windows Azure Platform 系列文章目录> 注:本章内容和之前的[New Portal]Windows Azure Virtual Machine (12) 在本地制作 ...

  8. [New Portal]Windows Azure Virtual Machine (20) 关闭Azure Virtual Machine与VIP Address,Internal IP Address的关系(2)

    <Windows Azure Platform 系列文章目录> 默认情况下,通过Azure Management Portal创建的Public IP和Private IP都是随机分配的. ...

  9. [New Portal]Windows Azure Virtual Machine (21) 将本地Hyper-V的VM上传至Windows Azure Virtual Machine

    <Windows Azure Platform 系列文章目录> 本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,并且保留OS中的内容. 注意:笔者没有执行Syspr ...

随机推荐

  1. KVC/KVO简单实例代码

    Person.h #import<Foundation/Foundation.h> @classAccount; @interfacePerson :NSObject{ @private ...

  2. mysql 备份软件 Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别

    今天在操作 innobackupex 的时候,执行 change master to 的时候发现  xtrabackup_binlog_pos_innodb   xtrabackup_binlog_i ...

  3. SWT: 发起事件 post event

    有很多学习SWT的同志遇到过一类需求,为某些控件添加了诸如MouseListener.KeyListener之类的监听,然后呢,希望使用代码模拟鼠标.键盘来执行点击.按键等操作. 首先说明一点,这是可 ...

  4. MapReduce实例浅析

    在文章<MapReduce原理与设计思想>中,详细剖析了MapReduce的原理,这篇文章则通过实例重点剖析MapReduce 本文地址:http://www.cnblogs.com/ar ...

  5. 示例篇-购物车的简单示例和自定义JS

    简介: 支持平台: Android4.0,iOS7.0,Windows 10, Windows 10 mobile 说明:主要是演示listview所在的ui和模板cell所在的ui之间数据的交互,点 ...

  6. 新版markdown功能发布!支持github flavored markdown!

    让大家久等了!新版markdown功能一直拖到今天才发布,很是愧疚...但不管怎么样,总算发布了! 今年1月份发布第一版markdown功能之后,很多园友反馈说做得很烂,我们综合大家的反馈之后发现不仅 ...

  7. [51单片机] 以从0开始做4位8段共阴数码管3461AS驱动谈细节决定高质量DIY

    目录 1)问题产生 2)失败尝试 3)最终方案 4)使用方法 5)知识共享 1)问题产生 在上一篇“以PWM控制直流电机为例建一个简单的51工程框架”中已向大家介绍了一个封装好的8位8段数码管的驱动( ...

  8. Atititi.名字 姓名 name 起名naming spec 的构成结构规范v2 qc2.docx

    Atititi.名字 姓名 name 起名naming spec 的构成结构规范v2 qc2.docx 1.1. 职业名 官职等 amir 阿米尔 放前面1 1.2. 本名1 1.3. 父名,祖名,一 ...

  9. Atitit  基于meta的orm,提升加速数据库相关应用的开发

    Atitit  基于meta的orm,提升加速数据库相关应用的开发 1.1. Overview概论1 1.2. Function & Feature功能特性1 1.2.1. meta api2 ...

  10. PHP 环境塔建

    快速搭建环境可用软件 每种语言的第一步都是要先搭建环境 WAMP(windows系统下搭建php开发环境): APPSERVER L(Linux)A(Apache)M(Mysql)P(Php)架构 P ...