使用Azure Cli创建和管理Linux虚拟机
分类: Azure虚拟机 ◆ 标签: #虚拟机 #Linux #Azure #基础 ◆ 发布于: 2023-05-27 20:53:28

本教程使用Azure CLi进行虚拟机的创建和管理,需要您在本地安装和设置好Azure CLi, 关于如何安装和设置Azure Cli
, 您可以参考文档:
下面我们开始使用Azure CLi创建Linux虚拟机
创建资源组
首先设置好Azure CLi
az cloud set --name AzureChinaCloud
az login
az account set --subscription <your subscription>
使用上述命令将Azure环境设为Azure China, 同时登录到Azure China, 然后设置当前的订阅为您的订阅。
创建资源组:
az group create --name myResourceGroupVM --location chinaeast
这里创建一个资源组,名字为myResourceGroupVM
, 同时注意选择的区域是China East
, 目前Azure China仅仅支持:
China east
China East2
China North
China North2
创建虚拟机
使用如下的命令创建基于Linux的虚拟机:
az vm create \
--resource-group myResourceGroupVM \
--name myVM \
--image UbuntuLTS \
--admin-username azureuser \
--admin-password <your password>
创建成功后会输出:
{
"fqdns": "",
"id": "/subscriptions/d5b9d4b7-6fc1-0000-0000-000000000000/resourceGroups/myResourceGroupVM/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "52.174.34.95",
"resourceGroup": "myResourceGroupVM"
}
链接到虚拟机
您可以通过各种工具使用SSH链接到您刚刚创建的虚拟机上:
ssh azureuser@52.174.34.95
操作完成后,推出虚拟机:
exit
理解虚拟机镜像
Azure市场包括了很多虚拟机镜像可以用于创建虚拟机,前面的例子中我们使用了Ubuntu的镜像创建了虚拟机,我们可以使用下述的命令列出使用最多的虚拟机镜像:
az vm image list --output table
也可以查看所有的虚拟机镜像:
az vm image list --all --output table
为了过滤或者搜索,也可以使用如下的命令:
az vm image list --offer CentOS --all --output table
输出如下:
Offer Publisher Sku Urn Version
---------------- ---------------- ---- -------------------------------------- -----------
CentOS OpenLogic 6.5 OpenLogic:CentOS:6.5:6.5.201501 6.5.201501
CentOS OpenLogic 6.5 OpenLogic:CentOS:6.5:6.5.201503 6.5.201503
CentOS OpenLogic 6.5 OpenLogic:CentOS:6.5:6.5.201506 6.5.201506
CentOS OpenLogic 6.5 OpenLogic:CentOS:6.5:6.5.20150904 6.5.20150904
CentOS OpenLogic 6.5 OpenLogic:CentOS:6.5:6.5.20160309 6.5.20160309
CentOS OpenLogic 6.5 OpenLogic:CentOS:6.5:6.5.20170207 6.5.20170207
为了使用特定的镜像创建虚拟机,可以在--image参数里 使用Urn的模式,包括:publisher, offer, SKu以及可选的版本号,例如:
az vm create --resource-group myResourceGroupVM --name myVM2 --image OpenLogic:CentOS:6.5:latest --generate-ssh-keys
注意查看参数:--image OpenLogic:CentOS:6.5:latest
理解虚拟机Size
虚拟机的Size决定了虚拟机的计算能力,包括像CPU
, 'GPU,
内存`等等,创建虚拟机时需要根据要完成的工作选择合适的虚拟机Size, 创建完成后,如果工作负载增加,也可以调整虚拟机的Size。
虚拟机Size说明
下表分类列出虚拟机的大小和用户
类型 | 常用大小 | 描述 |
---|---|---|
通用用途 | B, Dsv3, Dv3, Dsv2, Dv2, Av2, DC | 主要用于开发,测试以及中小型的应用和数据解决方案,这个类型CPU和内存相对较为平衡 |
计算优化 | Fsv2 | 用户中等流量的应用,网络应用,或者批处理类型的应用 使用了更好的CPU和更高的内存 |
内存优化 | Esv3, Ev3, M, DSv2, Dv2 | 高内寸,(High memory-to-cpu) 适合关系型数据库,中大型应用,基于内存的分析应用 |
存储优化 | Lsv2, ls | 磁盘高吞吐量,适合大数据,SQL,NoSQL数据库 |
GPU | NV, NVv2, NC, NCv2, NCv3, ND | 特殊的虚拟机,主要为重度依赖显卡的业务应用,例如图像渲染,视频编辑等 |
高性能 | H | Azure目前提供的最强大的虚拟机,拥有目前最强的CPU,以及可选的高吞吐量的网络接口 |
查询某个区域可以使用的虚拟机Size
az vm list-sizes --location chinaeast --output table
创建指定Size的虚拟机
az vm create \
--resource-group myResourceGroupVM \
--name myVM3 \
--image UbuntuLTS \
--size Standard_F4s \
--generate-ssh-keys
调整虚拟机大小
虚拟机已经被部署之后,随着工作量的增大,我们还是可以通过如下的命令来调整虚拟机的大小:
显示虚拟机当前大小
az vm show --resource-group myResourceGroupVM --name myVM --query hardwareProfile.vmSize
列出当前虚拟机所在的集群上能够使用虚拟机的大小
az vm list-vm-resize-options --resource-group myResourceGroupVM --name myVM --query [].name
调整大小
选择好合适的大小,开始调整:
az vm resize --resource-group myResourceGroupVM --name myVM --size Standard_DS4_v2
如果在该虚拟机目前所在集群中没有找到需要调整的大小,那么可以先将虚拟机deallocate
, 然后调整大小, 注意deallocate之后,会重新选择集群。
az vm deallocate --resource-group myResourceGroupVM --name myVM
一旦deallocate
, 就可以调整大小了
az vm resize --resource-group myResourceGroupVM --name myVM --size Standard_GS1
然后再启动虚拟机:
az vm start --resource-group myResourceGroupVM --name myVM
查询虚拟机的状态:
az vm get-instance-view \
--name myVM \
--resource-group myResourceGroupVM \
--query instanceView.statuses[1] --output table
管理虚拟机
取得虚拟机IP地址
az vm list-ip-addresses --resource-group myResourceGroupVM --name myVM --output table
启动和停止虚拟机
az vm stop --resource-group myResourceGroupVM --name myVM
az vm start --resource-group myResourceGroupVM --name myVM
删除资源组
az group delete --name myResourceGroupVM --no-wait --yes