前段时间领导希望我将我们的产品部署到微软azure云试试看,并且已经与微软的销售联系,获得了一个azure云的测试帐户。于是我试用了下azure云。
首先是访问微软销售给的链接,输入登录信息,然后要求输入一些个人信息。我按照要求全都输入正确的信息,但提交时总是报错。坑爹啊,报错你倒是告诉我哪儿有错啊。这个问题折腾了好久,依旧报错,后来实在没办法打azure云的400电话,总算说明了原因:填写的手机号最前面必须要加0。终于提交成功了,这个时候来到了azure的个人门户。
首先是创建虚拟机,测试帐户创建的虚拟机总核数不能超过4,云服务个数不超过2个。
这里解释一下什么是云服务,我的理解就是一个外网ip,把某个虚拟机添加到某个虚拟网络就是把这个虚拟机的某些开放的端口映射到这个外网ip的某些端口。这个映射行为目前来看好像是自动的。
因为我要部署的系统需要2个外网ip,大约4个虚拟机,于是我创建了两个云服务,同时创建了4个虚拟机,并把这4个虚拟机分配到这两个云服务器上。创建虚拟机的过程很简单,选择合适的虚拟机模板即可,azure提供了常用的生产操作系统,包括各大主流版本linux系统、windows系统,提供的windows系统还是正版的哦。
4个虚拟机上的部署工作就不表了,花了一整天的时间终于部署完了。话说我们这个程序还真复杂,光部署都得花一整天。接下来发现一个问题,我们的程序依赖于这4个虚拟机之前可以互联互通,这些访问是不应该有限制的。刚开始以为设置每个虚拟机开放的端口就好了,但azure不能设置允许访问端口范围。后来又查到说可以用脚本的方式自动添加大量访问端口,因为我用Mac OSX系统,于是下载azure Mac OSX的sdk包试了一下,没有成功。研究了好长时间无果。最后又打azure的400电话,azure的400接线员给我派了个支持工单,后面azure的技术支持人员找到我,向我介绍了azure云中的的虚拟网络,他建议我用虚拟网络试一下。
于是我创建了一个虚拟网络,并设置了虚拟网络的网段地址。将原来创建的虚拟机删除(删除时可以选择保留磁盘仅删除虚拟机,还好,不然我部署了1天的工作又没了),再以原来的磁盘重新创建虚拟机(这个地方又有个坑,刚刚保留磁盘删除虚拟机后,这个时候磁盘在创建虚拟机时可能是不可见的,得稍等一会儿),创建虚拟机时指定好虚拟网络,这样这些虚拟机在这个虚拟网络中就互相访问而没有限制了。
最终给我们的系统部署在azure云上了,目前已稳定运行一个星期了。感觉还是挺稳定的,访问速度也比较快。但从我的体验来看,azure云的人机UI还有待改进,特别有些地方必要的提示是必要的,不然操作出错了,用户啥也不知道,这样就不好了。另外azure的Mac OSX的sdk包为啥无法使用,这个还要待研究,但我觉得是没时间再研究这个问题了。
试用azure云