从阿里云的踩坑大师,到Azure的抹黑大师,我们似乎成了云计算负面用户的典型,可是我们还是忍不住想表达自己真实的使用感受。如果有错误的地方,欢迎大家批评!

在Azure上建好虚拟网(Vitual Network)之后(详见云计算之路-试用Azure:如何建立虚拟机之间的内网连接),虚拟机(Virtual Machine)之间需要进行内网通信,通信时使用计算机名比直接使用内网IP更友好、更方便、更能应对变化。

在使用阿里云的时候,我们只能在每台虚拟机的hosts中添加计算名与IP之间的映射,但是如果某一台虚拟机的IP发生了变化,就要在所有与之通信的虚拟机中修改hosts文件。

如果你当过网管,用Windows组建过局域网,你就知道微软早已对这个问题有解决方案——在DHCP时,将计算机名与IP地址的映射动态添加到DNS服务器中。

在Azure中,我们惊喜地发现虚拟网也有这个功能,比如下图中的blogserver1这台虚拟机的网络接口信息。

IP地址与DNS服务器都是由DHCP分配的。

然后我们看一下同一个Cloud Service中的另一台虚拟机blogserver2的网络接口信息。

从中可以看出,用的是同一个DNS服务器。然后我们在blogserver1中直接ping blogserver2:

成功通过DNS服务器完成计算机名到IP地址的解析,无需在hosts中手动添加。

以上的场景是在同一个Cloud Service中。

我们到另一个Cloud Service的虚拟机中看看:

虽然是同一个虚拟网的子网,内网IP是同一个网段的,网关也一样,但DNS服务器却不一样了。结果ping blogserver2就无法解析了。

也就是说Azure中DNS服务器解析计算机名的功能只在同一个Cloud Service中有效。

你也许会说,把虚拟机都放在同一个Cloud Service不就解决问题了吗?但是,同一个Cloud Service只有一个VIP。对于一个网站来说,需要将不同的应用部署到不同二级域名的不同虚拟机上。从目前知道的情况看,只用一个Cloud Service实现不了。

本来是一个很有用的功能,现在却无法让它发挥作用,这种感觉就像你有了一辆跑车,却不能上高速。

熟悉Azure的朋友看到这,可能又说不专业,怎么又是临时工写的?在Azure虚拟网中不是可以设置使用自己的DNS服务器吗?

自己架设DNS服务器的确是一种解决方法,但有些麻烦还要额外的成本。有了一辆跑车,不能上高速;难道要上高速,就一定要自己再造一辆跑车吗?微软一步到位解决这个问题不是更好吗?

既然同一个子网,同一个网关,能够直接进行网络通信,为什么就不能使用同一个DNS服务器,这样的设计让人想不通。

云计算之路-试用Azure:上不了高速的跑车,无法跨Cloud Service的DNS服务器的更多相关文章

  1. 云计算之路-试用Azure:制作虚拟机自定义镜像

    虚拟机自定义镜像(Image)是一个很有用的功能,可以在一台虚拟机上配置好基本的系统环境,然后做个镜像,以后创建虚拟机直接从这个镜像创建,会省掉很多重复的配置工作. 阿里云与UCloud都有这个功能, ...

  2. 云计算之路-试用Azure:搭建自己的内网DNS服务器

    之前我们写过一篇博文谈到Azure内置的内网DNS服务器不能跨Cloud Service,而我们的虚拟机部署场景恰恰需要跨多个Cloud Service,所以目前只能选择用Azure虚拟机搭建自己的内 ...

  3. 云计算之路-试用Azure:数据库备份压缩文件在虚拟机上的恢复速度测试

    测试环境:Windows Azure上海机房,虚拟机配置为大型(四核,7 GB 内存),磁盘情况见下图. 数据库备份压缩文件大于为12.0 GB (12,914,327,552 bytes),放置于T ...

  4. 云计算之路-试用Azure:每一次删除都让人如此“心惊”

    这篇博文吐槽的是Azure(Virtual Machine)的虚拟机删除功能. 在阿里云中,没有提供直接的虚拟机删除操作,如果不用某台虚拟机,“停止”即可,过期一段时间后会自动释放(这里的释放相当于删 ...

  5. 云计算之路-试用Azure:拐弯抹角的负载均衡

    负载均衡是云服务商标配的免费服务.阿里云的对应产品叫SLB,UCloud的对应产品叫ULB,操作都很简单直观,进入负载均衡管理控制台,添加负载均衡,选择相应的虚拟机即可. 而Azure则完全不一样,在 ...

  6. 云计算之路-试用Azure:一次失败的SQL Server向SQL Azure的迁移尝试

    如果数据库用的是SQL Server,那SQL Azure无疑是最吸引人的地方之一.在测试了虚拟机磁盘IO之后,我们迫不急待地进行了SQL Azure的测试. (一) 首先进入manage.windo ...

  7. 云计算之路-试用Azure:如何建立虚拟机之间的内网连接

    在阿里云上,同一个帐户创建的所有虚拟机(云服务器)之间的内网是直接连通的.而Azure则完全不一样,一开始使用时有点不知所措,后来摸索出来了——在Azure中只有处于同一个虚拟网络(Virtual N ...

  8. 云计算之路-试用Azure:竟然无法重置虚拟机的管理员密码

    在忘记管理员密码的情况下,可以远程重置服务器的管理员密码是云计算服务的一个优势,这是使用自己的物理服务器无法实现的. 但是,在使用Azure的时候,我们找遍Azure管理控制台也没找到可以重置虚拟机( ...

  9. 云计算之路-试用Azure:Azure内置的负载均衡是四层的

    当初迁移至阿里云遇到的第一个问题是在程序中通过Request.UserHostAddress得到的是负载均衡(SLB)的内网IP,而不是用户的真实IP.真实IP存储在服务器变量HTTP_X_Forwa ...

随机推荐

  1. HRBUST 1217 统计单词个数

    $dp$. 设$dp[i][j]$为到$i$位置,切成了$j$段的最大收益,然后枚举一下$f$,$dp[i][j]=max(dp[f][j-1]+v[f+1][i])$.一段区间的价值可以用区间$dp ...

  2. SCU - 4439 Vertex Cover (图的最小点覆盖集)

    Vertex Cover frog has a graph with \(n\) vertices \(v(1), v(2), \dots, v(n)\) and \(m\) edges \((v(a ...

  3. Flask实战第44天:完成前台注册功能

    注册功能后端逻辑 用户注册要把注册的表单提交上来,因此,我要先对表单进行验证,编辑front.forms from apps.forms import BaseForm from wtforms im ...

  4. C++中的error C2662,const的this指针问题

    今天在写C++代码的时候遇到一个错误,涉及到了常量的this指针的问题. 简化后的代码如下: #include <iostream> #include <string> usi ...

  5. React 中组件的生命周期

    先上代码, react 用的是 15.0.1 <!DOCTYPE html> <html> <head> <script src="./build/ ...

  6. 关于SOA

    什么是SOA SOA:面向服务的体系结构(Service-Oriented Architecture,SOA,也叫面向服务架构), SOA是指为了解决在Internet环境下业务集成的需要,通过连接能 ...

  7. AGC 012 B - Splatter Painting

    题面在这里! (显然首先想到反着做比较简单,每个点取第一次被覆盖到的颜色) 发现d非常小,那么是否可以暴力覆盖呢??? 考虑一个稠密图..暴力肯定就gg了啊... 不过我们可以对每一个点 i 记一个m ...

  8. 【DFS】bzoj2435 [Noi2011]道路修建

    两遍DFS.第一遍统计以每个点为根的子树大小,第二遍更新答案. #include<cstdio> #include<iostream> using namespace std; ...

  9. Semaphore(信号量)源码分析

    1. Semaphore Semaphore和ReentrantReadWriteLock.ReadLock(读锁)都采用AbstractOwnableSynchronizer共享排队的方式实现. 关 ...

  10. 最小生成树(Prime算法)

    最小生成树一·Prim算法 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 最近,小Hi很喜欢玩的一款游戏模拟城市开放出了新Mod,在这个Mod中,玩家可以拥有不止一个城 ...