32.Azure制作自定义的Liunx虚拟机映像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了32.Azure制作自定义的Liunx虚拟机映像相关的知识,希望对你有一定的参考价值。
自定义映像类似于应用商店映像,不同的是自定义映像的创建者是你自己。自定义映像可用于启动配置,例如预加载应用程序、应用程序配置和其他 OS 配置。
首先按照常规的方法创建一台Centos7.3的虚拟机,但创建的时候需要注意,只能选择使用托管磁盘进行创建自定义虚拟机映像
然后登录进行配置
在虚拟机里我安装了Apache服务并参考《Azure文件(文件共享)-NAS》的做法,我让这台Apache连接到我的Azure共享存储中,提供WEB服务
接下来我们将采用 Azure CLI创建该VM 的自定义映像,Azure CLI的下载地址:https://docs.azure.cn/zh-cn/cli/install-azure-cli-windows?view=azure-cli-latest
一直下一步直至安装完成
以管理员方式运行Powershell,执行az,可以看到Azure CLI的相关command
在 Azure 中国区使用 Azure CLI 2.0 之前,请先运行 az cloud set -n AzureChinaCloud 来改变云环境。如果想切回国际版 Azure,请再次运行 az cloud set -n AzureCloud
创建虚拟机的映像,需通过以下方式准备 VM:取消源 VM 的预配,解除其分配,然后将其标记为通用化。 准备好 VM 后,可以创建映像
取消预配可通过删除特定于计算机的信息来通用化 VM。 实现此通用化后,即可从单个映像部署多个 VM。 在取消预配期间,主机名将重置为“localhost.localdomain”。 还会删除 SSH 主机密钥、名称服务器配置、根密码和缓存的 DHCP 租约
使用 SSH 连接到 VM 并运行命令以取消预配 VM。 使用 +user 参数还会删除上次预配的用户帐户以及任何关联的数据。 将示例 IP 地址替换为 VM 的公共 IP 地址
通过 SSH 连接到 VM,取消预配
sudo waagent -deprovision+user -force
然后关闭 SSH 会话,exit
接下来运行Azure CLI登录命令
az login
提示打开https://microsoft.com/devicelogin网页地址,输入code码进行登录
登录成功后会提示可以关闭IE浏览器
Azure CLI也就登录成功获取到我的订阅信息了
接下来解除分配 VM 并将其标记为通用化
az vm deallocate --resource-group ServersResourceGroup --name ASWTemp
解除分配完成
将 VM 的状态设置为“通用化”,以便 Azure 平台知道 VM 已通用化。
az vm generalize --resource-group ServersResourceGroup --name ASWTemp
创建VM 的映像,从名为ASWTemp的虚拟机创建名为ASWTempOS的映像
az image create --resource-group ServersResourceGroup --name ASWTempOS --source ASWTemp
还可以通过图形化来捕获VM映像
以表格格式按名称列出所有映像
az image list --resource-group ServersResourceGroup
图形化也可以看到该VM映像
如果要想基于这个映像来创建虚拟机,从名为ASWTempOS的映像创建名为testasw的VM
可以创建SSH公钥方式的虚拟机
az vm create --resource-group ServersResourceGroup --name testasw --image ASWTempOS --admin-username zjunsen --generate-ssh-keys
也可以创建密码方式的虚拟机
az vm create --resource-group ServersResourceGroup --name testasw --image ASWTempOS --admin-username zjunsen --admin-password *********
还可以从图形化选择您自定义映像来创建虚拟机,选择ASWTempOS映像
根据这个映像创建新的虚拟机
创建出来的虚拟机因为是基于我之前自定义映像来的,因此里面的配置也有,创建出来自动就连接我后端的Azure文件共享提供WEB服务了
如果要删除映像,从ServersResourceGroup中删除名为ASWTempOS的映像
az image delete --name ASWTempOS --resource-group ServersResourceGroup
以上是关于32.Azure制作自定义的Liunx虚拟机映像的主要内容,如果未能解决你的问题,请参考以下文章