在Azure China用自定义镜像创建Azure VM Scale Set

在此感谢世纪互联的工程师Johnny Lee和Lan,你们给了我很大的帮助。因为Azure China的官网没有给出完整的步骤,所以我在这里把完整的步骤总结一下,希望对大家有所帮助。

Azure Global有一篇介绍如何用自定义镜像创建Azure VM Scale Set的文章。因为里面用到的"type": "Microsoft.Compute/images" 部分,我自己没在Azure China上跑通,所以这一部分靠其他大神继续探索吧。

https://docs.microsoft.com/zh-cn/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-mvss-custom-image

好的,现在让我们看看如何在Azure China里用自定义Image 创建 Azure VM Scale Set

第一步:从Azure Portal创建虚拟机

虚拟机创建好了,Azure 除了帮我们创建虚拟机之外,还创建了许多别的东西

第二步 : 连接到虚拟机,做一些自己需要的定制化,比如,我在根目录下建一个txt文件

第三步: 在虚拟机上运行SysPrep.exe

可参照官网文档,在此不再赘述了,唯一要强调的是不要忘记勾选“Generalize” checkbox。

https://www.azure.cn/documentation/articles/virtual-machines-windows-generalize-vhd/

第四步 : 等虚拟机完全关机后,运行PowerShell命令,创建虚拟机镜像

可参考官方文档 https://www.azure.cn/documentation/articles/virtual-machines-windows-capture-image/,我自己用的命令是

Login-AzureRmAccount –EnvironmentName AzureChinaCloud

Select-AzureRmSubscription -SubscriptionId YourSubscriptionId

Stop-AzureRmVM -ResourceGroupName 'liqiangtest' -Name 'imagevm'

Set-AzureRmVM -ResourceGroupName 'liqiangtest' -Name 'imagevm' -Generalized

Save-AzureRmVMImage -ResourceGroupName 'liqiangtest' -VMName 'imagevm' -DestinationContainerName 'myvhds' -VHDNamePrefix 'template' -Path d:\SampleTemplate.json

第五步:等上述命令运行完之后,打开d:\SampleTemplate.json,就可以看到那个镜像的Url了。

第六步 : 通过VS2017发布VM Scale Set

新建一个ARG项目

选择官方的模板

访问https://github.com/dafoyiming/azure-quick-start-china/tree/meat/201-vmss-windows-customerimage-autoscale-existing-vnet,把azuredeploy.json和azuredeploy.parameters.json下载下来,并用他们的内容并替换WindowsVirtualMachineScaleSet.json和WindowsVirtualMachineScaleSet.parameters.json的内容

双击WindowsVirtualMachineScaleSet.parameters.json,填入必须的内容

那个Url,就是我们前面在d:\SampleTemplate.json里那个Vhd的Url。Subnet的话可以用我们在创建虚拟机时创建的虚拟网。SubSiteResourceId的话,可以用虚拟网的ResourceId拼上subnets/default(因为我的子网名叫default)

右击Project,点击Deploy-》New-》Deploy,然后就静静等待吧,20分钟,Maybe

显示我们创建成功。回到Azure Portal,在新创建的VM Scale Set中找到Public IP。然后用远程桌面连接public ip:50000,在我的case中连接139.219.232.229:50000。端口50000表示第一个Instance,50001是第二个instance,以此类推。。。

注:连不上的话,不要着急,有可能你的VM Scale Set正在updating,等几分钟后再连。或者连一下50001试试。

连上后,打开C盘,可以看到有一个新建的Txt文件已经存在了。Happy Ending。。。

在Azure China用自定义镜像创建Azure VM Scale Set的更多相关文章

  1. 使用 Azure CLI 2.0 从自定义磁盘创建 Linux VM

    本文说明如何在 Azure 中上传自定义的虚拟硬盘 (VHD) 或复制现有 VHD,并从自定义磁盘创建 Linux 虚拟机 (VM). 可以根据要求安装并配置 Linux 分发版,并使用该 VHD 快 ...

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

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

  3. Azure China (4) 管理Azure China Storage Account

    <Windows Azure Platform 系列文章目录> Update 2015-05-10 强烈建议使用AzCopy工具,AzCopy命令行工具,是经过优化的.高性能Azure S ...

  4. Azure China (10) 使用Azure China SAS Token

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China 注意:本文介绍的是Azure China Storage Priva ...

  5. Windows Azure HandBook (2) Azure China提供的服务

    <Windows Azure Platform 系列文章目录> 对于传统的自建数据中心,从底层的Network,Storage,Servers,Virtualization,中间层的OS, ...

  6. Azure China (2) Azure China管理界面初探

    <Windows Azure Platform 系列文章目录> 首先是Q&A时间 1.我在Azure Global拥有测试账号或者免费的MSDN订阅账号,这个账号可以在国内Azur ...

  7. Azure China

    Azure China   Azure China (2) Azure China管理界面初探 摘要: <Windows Azure Platform 系列文章目录> 首先是Q&A ...

  8. 使用VS code 创建 Azure Functions,从blob触发,解析,发送至Service Bus

    更多内容,关注公众号:来学云计算 场景: 某设备定时于每天23:00左右将一天的运行日志.devicelogtxt上传到Azure Blob,期待Blob文件上传后, 自动通过Azure Functi ...

  9. 阿里云自定义镜像可以免费保存,ECS实例到期后自定义镜像手动快照不会被删除

    阿里云自定义镜像可以免费保存,ECS实例到期后自定义镜像手动快照不会被删除 4. ECS 实例释放后,自定义镜像是否还存在? 存在. 5. ECS 实例释放后,快照是否还存在? 保留手动快照,清除自动 ...

随机推荐

  1. 关于ajax post请求跨域问题的解决心得

    最近啊,公司有个项目,需要做一个手机端APP的后台管理系统.所以用到了度文本编辑框,经过了好好一番周折,终于弄好了,带到上线的时候发现啊,只能使用ip去访问网页的时候上能穿图片他不会报跨域的问题,而使 ...

  2. linux入门之用户管理

    用户管理 添加用户 以root用户执行 adduser  或 useradd [new_account] -u  UID   -d 指定家目录 -g GID 指定一个基本组ID   -G指定一个附加组 ...

  3. 【linux】安装samba服务

    学习linux一般是在虚拟机中进行,这样就需要你在windows与linux虚拟机中切换,Samba是很好的共享服务 下面是在汇文培训时宋老师写的配置samba的过程,很容易就能配置成功.还有一些视频 ...

  4. 【Tomcat源码学习】-4.连接管理

    前面几节主要针对于Tomcat容器以及内容加载进行了讲解,本节主要针对于连接器-Connector进行细化,作为连接器主要的目的是监听外围网络访问请求,而连接器在启动相关监听进程后,是通过NIO方式进 ...

  5. lua 变量

    lua 变量 类型 全局变量 lua 变量默认均为全局变量 打印一个未定义的变量输出为 nil 示例代码 a = 1 print(a, b) 局部变量 lua 变量默认均为全局变量, 除非变量前显式声 ...

  6. HubbleDotNet 最新绿色版,服务端免安装,基于eaglet 最后V1.2.8.9版本开发,bug修正,支持一键生成同步表

    HubbleDotNet 是一个基于.net framework 的开源免费的全文搜索数据库组件.开源协议是 Apache 2.0.HubbleDotNet提供了基于SQL的全文检索接口,使用者只需会 ...

  7. git提交如何忽略某些文件

    在使用git对项目进行版本管理的时候,我们总有一些不需要提交到版本库里的文件和文件夹,这个时候我们就需要让git自动忽略掉一下文件. 使用.gitignore忽略文件 为了让git忽略指定的文件和文件 ...

  8. Excel基本操作1

    Excel的基本操作之二,录入及快速填充.不足之处,欢迎补充

  9. iOS开发 - Swift实现清除缓存功能

    前言: 开发移动应用时,请求网络资源是再常见不过的功能.如果每次都去请求,不但浪费时间,用户体验也会变差,所以移动应用都会做离线缓存处理,其中已图片缓存最为常见. 但是时间长了,离线缓存会占用大量的手 ...

  10. Android NDK开发之从Java与C互调中详解JNI使用(一)

    生活 这一个礼拜过得真的是苦不堪言,上周因为打球脚踝直接扭伤,肿的想猪蹄一样,然后休息几天消肿了,可以缓慢龟速的行走了,然而五一回来上班第一天,上班鞋子还能穿上,下班脚已插不进鞋子里面了,好吧,又肿回 ...