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

阿里云与UCloud都有这个功能,Azure当然也少不了,这也是云服务商标配的免费服务。

下面我们分享一下我们在Azure中试用“制作虚拟机自定义镜像”功能的经历。

(一)准备工作

创建一台原装虚拟机,假设名叫blogserver1。创建好之后,登录进去进行基本部署环境的配置,比如安装IIS并进行相关配置(支持高并发的IIS Web服务器常用设置)。

(二)在不看任何帮助文档的情况下凭使用直觉进行操作

1、进入VIRTUAL MACHINES -> IMAGES,点击CREATE;输入IMAGE NAME,选择之前创建的blogserver1虚拟机的VHD URL,选中“I have run Sysprep on the virtual machine associated with this VHD.”(见下图)

2、点击Ok按钮。。。创建失败,错误信息如下:

VHD http://..../vhds/blogserver-blogserver1-2013-09-11.vhd 已作为 ID 为 blogserver1-blogserver1-0-201309110319510234 的资源注册到映像存储库。

错误提示信息让人不知所措。

关闭blogserver1虚拟机进行操作,也是同样的错误。

几经折腾无果,放弃。

(三) 在帮助文档下进行操作

帮助文档来自How to Capture an Image of a Virtual Machine Running Windows Server

1、远程桌面登录至虚拟机,进入 C:\Windows\System32\Sysprep\ 目录,运行sysprep.exe,选中Generalize,选择Shutdown(见下图)。

2、点击Ok之后,进行Sysprep操作(见下图)。。。过了一会,远程桌面失去了连接。

3、等了大约20分钟左右(由于没有进度指示,这个等待过程有点难受),在Azure管理控制台看到blogserver1的状态由于Running变为Stopped。

4、这时虚拟机管理控制台的CAPTURE按钮变亮,点击一下,出现如下的画面:

5、指定IMAGE NAME为webserver,选中“I have run Sysprep on the virtual machine”,然后看到IMPORTANT NOTE:

The virtual machine will be deleted when the image is captured.

由于上午发了一篇不专业的临时工水准的随笔——云计算之路-试用Azure:每一次删除都让人如此心惊,才知道了删除虚拟机的真相,现在就可以坦然面对了。

6、片刻工夫,虚拟机创建完毕。

7、从这个名为webserver自定义镜像创建虚拟机blogserver2。

8、创建成功

(三)恢复原装虚拟机blogserver1

用于制作镜像的blogserver1虚拟机在创建镜像时被删除了,现在通过“CREATE A VIRTUAL MACHINE from MY DISKS”把它恢复起来。

当blogserver1虚拟机正常运行之后,用远程桌面进行登录,结果怎么登录也登录不上,每次都提示用户名/密码错误。为了避免再次发临时工水准的文章,经过了多次确认,确认用户名/密码没有错。难道在制作镜像进行Sysprep的过程中,Windows管理员帐户的密码被重置了?而我们无法验证这一点,因为在Azure中无法重置虚拟机的管理员密码。只能让这台虚拟机报废。

(四)试用感言

我们设想的制作虚拟机自定义镜像的功能应该是这样的:选择一台虚拟机,点击“制作镜像”,然后去一下洗手间,回来之后“镜像”就创建好了。

创建镜像竟然把运行中的原装虚拟机给删除了,恢复之后还连不上,也就是说虚拟机要为制作镜像“献身”。在阿里云没遇到过,在UCloud也没碰到过,只有Azure,而且在阿里云/UCloud中制作镜像时对当前这台正常运行的虚拟机没有任何影响。Azure在这个功能的设计上需要改进。

另外,我们的Azure试用系列博文只是表达我们试用时的真正感受,并没有说我们的试用是专业的。微软也没有说Azure只适合专业人员用,不适合临时工用。作为一名用户,发现问题就吐槽,也不为过。好的产品不是赞美出来的,而是在解决用户各种刁钻的问题中成长出来的。

云计算之路-试用Azure:制作虚拟机自定义镜像的更多相关文章

  1. 云计算之路-试用Azure:上不了高速的跑车,无法跨Cloud Service的DNS服务器

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. java线程基本知识

    如何去定义一个线程?(三种方式)    1.Thread:继承这个类,然后重写run方法:将业务逻辑或任务写到run方法中,然后调用start来启动线程:    2.Runnable: 实现这个接口, ...

  2. python之sqlite3使用详解

    Python SQLITE数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身.它使用一个文件存储整个数据库,操 作十分方便.它的最大优点是使用方便,功能 ...

  3. [onethink ucenter] 跨域名单点登录关键点

    1.uc_client/data/cache/apps.php <?php $_CACHE['apps'] = array ( 1 => array ( 'appid' => '1' ...

  4. oracle10g中判断字段是否为空的坑

    RT,在oracle中,写SQL时,假设这个字段为STA Char(3),判断这个字段是否为空一般都是这两个:STA = '' or STA is null 但是今天这两种方法失效了,无论是STA = ...

  5. Oracle基础了解

    数据库: 关系型数据库 select * from 表名 非关系型数据库(做不到复杂查询) 以对象的形式进行存储 {"aaa":"ccc"}---键值对 ora ...

  6. [P1640][SCOI2010]连续攻击游戏

    Link: P1640 传送门 Solution: 可以发现这道题其实是属性值集合和装备集合的对应,且每个点只能用一次 那么就能想到二分图最大匹配,一旦不可行直接退出就行了 Tip: 1.$Hungr ...

  7. Luogu P3960 列队 线段树

    题面 线段树入门题. 我们考虑线段树来维护这个矩阵. 首先我们先定n+1棵线段树前n棵维护每行前m-1个同学中没有离队过的同学,还有一棵维护第m列中没有离队过的同学.再定n+1棵线段树前n棵线段树维护 ...

  8. BZOJ 3239 Discrete Logging(BSGS)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=3239 [题目大意] 计算满足 Y^x ≡ Z ( mod P) 的最小非负整数 [题解 ...

  9. 【动态规划】【单调队列】tyvj1305 最大子序和

    http://blog.csdn.net/oiljt12138/article/details/51174560 单调队列优化dp #include<cstdio> #include< ...

  10. 【模拟+递归+位运算】POJ1753-Flip Game

    由于数据规模不大,利用爆搜即可.第一次用位运算写的,但是转念一想应该用递归更加快,因为位运算没有剪枝啊(qДq ) [思路] 位运算:时间效率较低(172MS),有些辜负了位运算的初衷.首先将二维数组 ...