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. [leetcode 27]Implement strStr()

    1 题目: Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if ...

  2. [.NET领域驱动设计实战系列]专题一:前期准备之EF CodeFirst

    一.前言 从去年已经接触领域驱动设计(Domain-Driven Design)了,当时就想自己搭建一个DDD框架,所以当时看了很多DDD方面的书,例如领域驱动模式与实战,领域驱动设计:软件核心复杂性 ...

  3. 解决Activator X for bundle Y is invalid 以及 Activator not found

    如果没有发现编译期异常(就是导航栏项目上有红叉,红感叹号),那么Activator X for bundle Y is invalid和Activator not found这两个异常通常发生在ecl ...

  4. Newtonsoft.Json中的时间格式详解.

    Newtonsoft.json是一款不错的序列化反序列化第三方组件,具体如何使用属于基础知识,此处不再讲解.看以下代码: public class OutgameEntity { public str ...

  5. dojo/dom-form

    表单的处理在前端开发中一样意义非凡,dojo/dom-form模块提供了一系列方法来处理表单元素.比如: fieldToObject: 将一个表单字段转化成JavaScript原生类型,可能是stri ...

  6. 那些年使用Hive踩过的坑

    1.概述 这个标题也是用血的教训换来的,希望对刚进入hive圈的童鞋和正在hive圈爬坑的童鞋有所帮助.打算分以下几个部分去描述: Hive的结构 Hive的基本操作 Hive Select Hive ...

  7. 团队项目——站立会议 DAY11

    团队项目--站立会议 DAY11        团队成员介绍(5人):张靖颜.何玥.钟灵毓秀.赵莹.王梓萱        今日(2016/5/20),站立会议已进行了两周时间,将这一周所遇到的问题和心 ...

  8. IE Javascript 进阶调试

    大多数人用IE都知道IE有个F12 开发者工具可以用来调试网页的各种问题,本文以IE10为例,尽量少谈基础,只说说IE脚本调试中的进阶技巧.如果你的网页脚本在IE上运行出现问题,希望下面的技巧可以帮你 ...

  9. 关于Windows高DPI的一些简单总结

    我们知道,关于高DPI的支持, Windows XP时代就开始有了, 那时关于高DPI的支持比较简单, 但是从Vista/Win7 到现在Win8 /Win8.1, Windows关于高DPI的支持已 ...

  10. Java-集合练习题1

    第一题 (Map)利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队.如果该 年没有举办世界杯,则输出:没有举办世界杯. 附:世界杯冠军以及对应的夺冠年 ...