Terraform配置文件中的Cloudinit文件不起作用

mm5n2pyu  于 2022-10-04  发布在  Linux
关注(0)|答案(0)|浏览(100)

我试图通过在terraform配置文件中传递Cloudinit文件来运行该文件。Terraform Apply命令可创建所有资源。但是,当我启动该VM时,在该VM中看不到任何来自Cloudinit的更改。

以下是扩展名为.tpl的Cloudinit文件:

users:
- name: ansible
  gecos: Ansible
  sudo: ALL=(ALL) NOPASSWD:ALL
  groups: [users, admin]
  shell: /bin/bash
  ssh_authorized_keys:
    - ssh-rsa AAAAB3NzaC1.......

下面是main.tf文件:

data "template_file" "users_data" {
  template = file("./sshPass.tpl")
}

data "template_cloudinit_config" "config" {
  gzip          = true
  base64_encode = true

  part {
  content_type = "text/cloud-config"
  content      = data.template_file.users_data.rendered
}

  resource "azurerm_linux_virtual_machine" "poc-vm" {

    name                  = var.vm_name
    resource_group_name   = azurerm_resource_group.poc_rg.name
    location              = azurerm_resource_group.poc_rg.location
    size                  = var.virtual_machine_size
    admin_username        = var.vm_username
    network_interface_ids = [azurerm_network_interface.poc_nic_1.id]

    admin_ssh_key {
      username   = var.vm_username
      public_key = tls_private_key.poc_key.public_key_openssh
    }

    os_disk {
      caching              = var.disk_caching
      storage_account_type = var.storage_type
    }

    source_image_reference {
     publisher = var.image_publisher
     offer     = var.image_offer
     sku       = var.image_sku
     version   = var.image_version
    }

    user_data = data.template_cloudinit_config.config.rendered

  }

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题