此文章应该是写完了
此文章介绍内容所需手把手部分较多,由于笔者除了关键步骤外均“凭感觉”操作,本文编纂完成需较长周期,且未必能覆盖到所有你实际操作时可能遇到的意外故障情况。一些笔者一笔带过的地方应该是笔者也不知道详细步骤,反正到时候凭感觉操作也不会错。
前置条件
- 一个有 Azure 订阅的账号,上面要有 x64 架构的虚拟机,该虚拟机要有一块硬盘
- (本文存在意义是让有 Azure 账号但是因为微软不让就不会用 Windows Server 2012 R2 系统的用户也能创建,没有 Azure 账号的话……恕我高冷范一点,看本文意义不大。)
- 自己电脑上要有 VMware Workstation Pro、Oracle Virtual Box 或者 Hyper-V 任意一个
最好不要同时安装 VMW 和 Hyper-V
因为安装了 Hyper-V 之后,VMW 就会为所有的虚拟机都启用“侧通道缓解”,
这个东西似乎是用来暂时牺牲性能妥协解决一种名叫“侧通道”的安全漏洞,而它会大大降低虚拟机的性能,
你就会觉得你的 VMW 虚拟机明显变卡了很多。虽然在 VMW 的虚拟机设置里有一个选项是禁用“侧通道缓解”,
但也只能“好一点”,还是不如想办法将 Hyper-V 完全干掉。
而且这个选项也只是对单个虚拟机有用,没有“一键为全部虚拟机默认禁用”的选项。
而且想要干掉 Hyper-V 可不是那么简单,不是在“启用或关闭 Windows 功能”里取消勾选就行了,
而是要禁用好几个虚拟机或者 Hyper-V 相关的服务,VMW 虚拟机的性能才能变回正常状态。
VMware Workstation Player 也可以
但是因为 Player 在新建虚拟机的时候必须新建一个 vmdk 的虚拟硬盘,不能使用现有 vhd 虚拟硬盘,所以你只能先按照流程创建一个新建 vmdk 虚拟硬盘的虚拟机,创建好之后先不要开机,还要编辑虚拟机设置,将原来的硬盘删掉,再增加一个硬盘,选取那个 vhd 文件,这样让虚拟机用那个 vhd 文件,再开机。
- Windows Server 2012 R2 x64 Standard 批量授权(VL)版本的系统镜像(可以在 我告诉你搜索下载,那些是 ed2k 网址,可以用迅雷下载)
- 64GB 以上的连续可用硬盘空间(需要存放 64GB 的 vhd 文件,具体取决于你服务器硬盘大小)
- 持续可用的互联网连接
准备虚拟硬盘
- 打开 Windows 7 及以上版本的“磁盘管理”,单击菜单栏的“操作”→创建 VHD。
- 路径任意,但是虚拟硬盘格式一定要是 VHD,虚拟硬盘类型一定要是“固定大小”,虚拟硬盘大小取决于你 Azure 虚拟机的硬盘大小,最好完全一样。如果你是学生订阅的免费试用虚拟机,那一般是 64GB。新建硬盘需要 2 分钟左右。
- 等待完成之后,将硬盘初始化为 GPT 分区表。然后一定要将虚拟硬盘“分离”。
准备你自己电脑上的虚拟机
这里是用 VMware Workstation Pro 16.0 举例。
这个具体的虚拟机软件步骤不太一样,总之就是新建一个虚拟机,硬盘用你刚才弄好的 vhd 文件,光盘就选 Windows Server 2012 R2 的 ISO 镜像文件。
如果是 VMware Workstation Pro,那就在创建虚拟机时一定要选择“自定义(高级)”,这样才能用你自己的 vhd 文件作为虚拟硬盘,不用现场新建 vmdk 虚拟硬盘。如果是 Player 请参照上文折叠的内容。
按照常见的虚拟机 Windows 安装步骤安装 Windows 或者设置 VMware 的简易安装配置即可。务必记得“要安装的 Windows”版本一定要选择“Standard 桌面体验”,尤其是有些时候你的操作向导步骤里“选择 Windows”版本只是一个下拉菜单,不显眼,就容易忘掉这一步,安装好了才发现不对劲。一般不需要输入产品密钥。但是设置的管理员密码要记住,因为待会还需要输入一次。
如下图,可以在创建虚拟机向导中使用“简易安装”,就是下图这一步要注意选取正确的 Windows 版本。
下图这里就一定要选择“使用现有虚拟磁盘”,如果是 Player 就参照上面折叠内容说的。
这里注意,浏览虚拟硬盘文件的时候,因为右下角“文件类型”默认只有 vmdk 这一个扩展名,所以你得手动改成“所有文件”。
同样的, VMW 会询问要不要升级虚拟硬盘格式,咱们这里当然不升级,要不然就不是 vhd 格式了。
(以上是 VMware Workstation 的设置步骤,其他虚拟机软件应该需要手动进行安装。此处恕不加详述,就是一般的 Windows 安装步骤。当然要记住你设置的密码,虽然最终就用不到了,但是你至少还需要用到一次)
然后在这里,用虚拟机软件给的方式向虚拟机发送按键 Ctrl+Alt+Delete ,可不要按你实际电脑的 Ctrl+Alt+Delete 啊,
等到进桌面之后,只有一件事,打开命令提示符,运行下面这个指令:C:\Windows\system32\sysprep\sysprep.exe /oobe /generalize /shutdown
然后你的这个系统会进行“通用化”操作,然后关机。
注意这个步骤完成之后,系统会不加额外提示直接进入关机流程,所以你这期间虽然可以干别的操作,但是会被这个 sysprep 直接打断。
在 Azure 租户里新建存储账户和 Blob
在Azure主页单击“创建资源”,然后选择“存储账户”→“创建”。
下面这里允不允许公用网络访问,我也不确定,就允许吧,难不成一个破 vhd 文件会有什么风险?(哎,话不敢说太满,但是总觉得这里如果禁止了会不会导致额外的麻烦或者错误)
下图就是存储账户已经创建好了。
创建大致步骤任意,创建完成后,在左侧单击“数据存储”→“容器”→“添加容器”。
将 vhd 文件上传上去
(WIP……)
大概就是可以 Web 端直接上传(稳定性不好且无法断点续传,可能浏览器报错内存不足),或者给 Blob 新建一个能进行写入操作的 token ,再下载一个 Azure 还是什么的资源管理器,用 token 连接上,再用这个客户端上传上去。
下图是那个下载“资源管理器”的地方。在首页单击“Download”,然后就来到了这里,咱们当然下载 Windows x64 了。
然后安装这个资源管理器。可以是为本机所有用户安装,也可以只为当前用户安装。
安装好了之后,我们需要来到网页端,找到之前创建的存储账户,还是在左侧单击“数据存储”→“容器”,找到之前创建的容器,点开。
点开之后就是“容器”的设置界面了,单击左侧的“设置”→共享访问令牌,在右侧点开“权限”,会出来几个复选框,我是一股脑全部勾上完事,可以确定的是“写入”和“列表”必须勾上。下面是设置开始和到期日期。允许的 IP 地址可以留空。
创建好了之后,将这个 Blob SAS URL 复制下来。
接着打开资源管理器,会首先看到首页上大大的“入门”。我们单击“附加到资源”。
(这个步骤没有配图)然后依次选择“Blob 容器或目录”→共享访问签名 URL (SAS)。
接着会看到“显示名称”和“Blob 容器或目录 SAS URL:”两个输入框,咱们直接将刚才复制的 URL 粘贴到第二个输入框,然后第一个输入框会自动出现容器的名称和一个编号。
接着我们可以看到已经连接上了,如下图。我们单击“上传”→“上传文件…”。
然后就是选取要上传的文件,和上传到容器的哪个目录路径里了。可以是根目录,也可以是自己设定的,比如/vhd/。目标访问层这个随意了,咱们传上去应该就用一两次然后就删了,所以选成“存档”也问题不大。
上传过程看你的网络环境了,快的话十几分钟,慢的话几个小时,如果网络太差可能就极容易中断,关键这玩意应该不支持断点续传。。。
用这个 vhd 文件新建一个“映像”
还是打开Azure首页,单击“创建资源”,然后搜索“映像”,应该就可以搜到“VM 映像版本”。
我们开始创建。默认创建的是“共享映像”,创建的所需信息多一些,我建议创建的是“托管映像”,就是创建页面顶部那个链接“请单击此处创建。”点开,这样创建出来应该就只有自己这个订阅和区域可以用,不过创建更简单。这里咱们演示创建共享映像。其实是这家伙演示截图的时候忘了这茬了,就创建成共享映像了
如果你创建的是托管映像,那么下面有些步骤会没有,忽略不管即可。
“版本号”我随便填了个“0.1.0”,“源”就选“存储 Blob (VHD)”,“OS 磁盘”就是单击“浏览”,然后依次选取你创建的存储账户和容器,再浏览刚传上去的 vhd 文件呗。
接着如果是“共享映像”,需要设置“目标 Azure compute gallery”,我是现场新建了一个。“操作系统状态”当然选择“通用化”,然后还需要创建一个 VM 映像定义,设置项目有点多,直接把图丢出来。其中“发布者”我也不知道该不该填一个自己想要的名字,这个 Microsoft 由我填在这真的可以吗?(恼)
然后剩下的选项就保持默认就行,你应该就可以开始创建映像了,需要几分钟左右的时间。
这个步骤完成之后,你应该就可以删除容器里的那个 vhd 文件了,文件存着存着还扣你钱呢。
用这个“映像”创建一个新的虚拟机
有人可能要问,我已经建好虚拟机了,能不能就只换一下硬盘,让这个虚拟机从新硬盘启动?
我……不太会。我觉得应该用“新建虚拟机”这一整个步骤,这样才能在新建虚拟机的同时,顺带设置虚拟机上系统的用户名和密码这两个关键的东西。要不然,你那个系统的用户名密码都没有设置,怎么远程桌面连接那个虚拟机?只有用“新建虚拟机”这个流程顺带设置用户名密码。
还是在Azure首页点开“虚拟机”,然后单击“创建”→“虚拟机”。
接着是重要的一步,其余设置项目都可以按照你的喜好或者实际可用情况去选择,而“映像”这里一定要“查看所有映像”,然后左侧会有“我的映像”和“共享映像”,如果你刚才创建的是托管映像就选择“我的映像”,如果刚才创建的是共享映像就选择“共享映像”。
然后应该就能找到你刚才创建的映像了,选取那个映像!
最后要提一嘴的就是 VM 大小和 OS 磁盘规格,对于学生订阅,VM 大小只有 B2ats_v2 和 B1s 是免费的,且最多有两台虚拟机,硬盘只有高级 SSD 64GB P6 才是免费的,总共最多两块,就是不管你虚拟机有几个,硬盘是最多两个。
上图里就是 B2ats_v2 和 B1s 两种规格虚拟机的比较,而 B2ts_v2 那个不免费,不管他。
最后上图这个就是选取 OS 硬盘的界面了。
其他的东西如有不会请参考其他关于创建 Azure 虚拟机的教程,或者在“关于我”那篇文章的联系方式里找我也行。
在这个戴尔轻薄本上敲了这么多字,手累死了……