有没有办法使用Terraform创建Azure Data Science VM?

时间:2017-10-17 16:56:00

标签: azure terraform azure-dsvm

我正在使用Terraform创建Azure VM,但由于那些没有安装太多功能,我正在调查其他Azure资源。我发现Azure Data Science VM是满足我大部分要求的那个,所以我想知道是否有办法用Terraform创建那些。我在文档中看不到它,但也许有一种解决方法。

任何方向都会很棒!

3 个答案:

答案 0 :(得分:3)

<强>假设

Azure资源模型。

<强>步骤

此过程将有几个步骤。您首先需要检索平台图像。

data "azurerm_platform_image" "test" {
   location  = "West Europe"
   publisher = "Microsoft"
   offer     = "xx"
   sku       = "xx"
}

然而,在您完全填充此内容之前,您需要检索SKUOffer。令人讨厌的是,这在互联网上并不容易获得,需要API调用或Powershell乐趣。

This链接可帮助您实现此目标。

填好上面的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"
}
}

答案 1 :(得分:0)

以下是Azure Data Science 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

所有这些的发布商都是微软广告

答案 2 :(得分:0)

遵循步骤here。要填充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