我正在使用 Terraform 创建 Azure VM,但由于它们没有安装太多功能,因此我正在调查其他 Azure 资源。我发现 Azure Data Science VM 可以满足我的大部分需求,所以我想知道是否有一种方法可以使用 Terraform 创建这些 VM。我在文档中看不到它,但也许有一种解决方法。
这方面的任何方向都会很棒!
我正在使用 Terraform 创建 Azure VM,但由于它们没有安装太多功能,因此我正在调查其他 Azure 资源。我发现 Azure Data Science VM 可以满足我的大部分需求,所以我想知道是否有一种方法可以使用 Terraform 创建这些 VM。我在文档中看不到它,但也许有一种解决方法。
这方面的任何方向都会很棒!
假设
Azure 资源模型。
脚步
这个过程将有几个步骤。您首先需要检索平台图像。
data "azurerm_platform_image" "test" {
location = "West Europe"
publisher = "Microsoft"
offer = "xx"
sku = "xx"
}
但是,在您完全填充之前,您需要检索SKU
and Offer
。令人讨厌的是,这在 Internet 上并不容易获得,并且需要 API 调用或 Powershell 乐趣。
此链接将帮助您实现这一目标。
一旦你得到了上面的 terraform,你就可以利用它来创建一个虚拟机。
resource "azurerm_virtual_machine" "test" {
name = "acctvm"
location = "West US 2"
resource_group_name = "${azurerm_resource_group.test.name}"
network_interface_ids = ["${azurerm_network_interface.test.id}"]
vm_size = "Standard_DS1_v2"
storage_image_reference {
id = "${data.azurerm_platform_image.test.id}"
}
storage_os_disk {
name = "myosdisk1"
caching = "ReadWrite"
create_option = "FromImage"
managed_disk_type = "Standard_LRS"
}
# Optional data disks
storage_data_disk {
name = "datadisk_new"
managed_disk_type = "Standard_LRS"
create_option = "Empty"
lun = 0
disk_size_gb = "1023"
}
storage_data_disk {
name = "${azurerm_managed_disk.test.name}"
managed_disk_id = "${azurerm_managed_disk.test.id}"
create_option = "Attach"
lun = 1
disk_size_gb = "${azurerm_managed_disk.test.disk_size_gb}"
}
os_profile {
computer_name = "hostname"
admin_username = "testadmin"
admin_password = "Password1234!"
}
os_profile_linux_config {
disable_password_authentication = false
}
tags {
environment = "staging"
}
}
按照此处的步骤操作。要填写 terraform“storage_image_reference”部分,您可以使用 Azure CLI 获取信息。例如:
az vm image list --offer linux-data-science-vm --all --output table
或者
az vm image list --offer windows-data-science-vm --all --output table
这是 Azure 数据科学 VM 的 SKU 和产品/服务列表。
Windows Server 2016 版:offer=windows-data-science-vm sku=windows2016
Ubuntu 版本:offer=linux-data-science-vm-ubuntu sku=linuxdsvmubuntu
Windows Server 2012 版:offer=standard-data-science-vm sku=standard-data-science-vm
CentOS 版本:offer=linux-data-science-vm sku=linuxdsvm
所有这些的发布者是 microsoft-ads