36.Azure制作自定义的Windows虚拟机映像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了36.Azure制作自定义的Windows虚拟机映像相关的知识,希望对你有一定的参考价值。
首先按照常规的方法创建一台VM虚拟机,只是做成模板的虚拟机必须是托管磁盘
然后登录进行配置
在虚拟机里我安装了IIS服务并参考《Azure文件(文件共享)-NAS》的做法,我让这台IIS连接到我的Azure共享存储中,提供WEB服务
接着需要对系统进行Sysprep通用化处理:Sysprep 将删除所有个人帐户信息及其他某些数据,并准备好要用作映像,哪些不会被Sysprep清理请参考:https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-7/dd744581(v=ws.10)
以管理员身份打开“命令提示符”窗口。将目录切换到 %windir%\system32\sysprep,然后运行 sysprep.exe
耐心等待完成,系统会自动关机
虚拟机停止了,但资源并未释放
接下以管理员身份运行Powershell,登录您的Azure,查看VM信息
Get-AzureRmVM
首先执行如下命令来要释放资源解除分配
Stop-AzureRmVM -ResourceGroupName ServersResourceGroup -Name WEBTemp -Force
然后把该虚拟机设置成通用状态
Set-AzureRmVM -ResourceGroupName ServersResourceGroup -Name WEBTemp -Generalized
接下来就可以开始创建镜像模板了,首先设置一个获取虚拟机的变量
$vm = Get-AzureRmVM -Name WEBTemp -ResourceGroupName ServersResourceGroup
创建镜像的配置变量
$image = New-AzureRmImageConfig -Location eastasia -SourceVirtualMachineId $vm.ID
最后创建镜像,我创建镜像的名称是WEBTempOS
New-AzureRmImage -Image $image -ImageName WEBTempOS -ResourceGroupName ServersResourceGroup
如果要查看所有镜像模板可以执行如下:
$images = Find-AzureRMResource -ResourceType Microsoft.Compute/images
$images.name
如果要想基于这个镜像模板来创建虚拟机可以从这里进行创建
创建好以后,唯独计算机管理用户的filedisk01账户以及IIS里应用程序池中AzureSharefile01标识ID(filedisk01)和站点连接为账户filedisk01的密码我手动更新了一下就好了,可以看见根据模板创建出来的虚拟机之前定义的filedisk01账户还在,IIS也都还在,应用程序池和站点都在。
如果要删除镜像,比如从ServersResourceGroup资源组里删除名称为WEBTempOS的镜像模板
Remove-AzureRmImage -ImageName WEBTempOS -ResourceGroupName ServersResourceGroup
其实这篇主要重点是介绍Windows系统的自定义映像如何制作,至于如何实现制作出来的映像在部署时自动配置好IIS并连接到后端的数据库或文件提供前端访问我只是起一个抛砖引玉介绍的作用,大家可以根据自己实际的业务需求来自定义真正符合您需求的完美映像哈。
以上是关于36.Azure制作自定义的Windows虚拟机映像的主要内容,如果未能解决你的问题,请参考以下文章
Win系统安装自带虚拟机(Windows sandbox) 自定义启动并自动打开微信