VMware: Crear Virtual Machine con Terraform
Os explicamos cómo generar máquinas virtuales con terraform con provider VMware.
El otro día comentamos, en qué consistía Terraform y como lo podíamos instalar en un LXC Centos.
Hoy vamos a empezar con la práctica. Vamos a usar vSphere 7, para lanzar máquinas virtuales sobre él, generadas a través de un fichero tf de terraform.
Nos conectamos a nuestro vCenter y tenemos que tener claros todos los datos que vamos a utilizar. Como el nombre del Datacenter, del cluster, del pool,…
Del Storage:
De las redes:
Las carpetas donde queremos dejar las máquinas virtuales:
Una vez que los tenemos, iremos al servidor de Terraform y generamos un fichero tf:
1 |
nano elblogdenegu.tf |
Mi ejemplo es el siguiente, creo una máquina virtual Debian desde una ISO:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
provider "vsphere" { user = "administrator@vsphere.local" password = "Password1234-" vsphere_server = "192.168.2.54" # If you have a self-signed cert allow_unverified_ssl = true } data "vsphere_datacenter" "dc" { name = "ELBLOGDENEGU" } data "vsphere_datastore" "datastore" { name = "NAS01" datacenter_id = data.vsphere_datacenter.dc.id } data "vsphere_resource_pool" "pool" { name = "TERRAFORM" datacenter_id = data.vsphere_datacenter.dc.id } data "vsphere_network" "network" { name = "VM Network" datacenter_id = data.vsphere_datacenter.dc.id } resource "vsphere_virtual_machine" "vm" { name = "MVPRUEBATERRAFORM" resource_pool_id = data.vsphere_resource_pool.pool.id datastore_id = data.vsphere_datastore.datastore.id num_cpus = 2 memory = 1024 guest_id = "other3xLinux64Guest" network_interface { network_id = data.vsphere_network.network.id } disk { label = "disk0" size = 20 } cdrom { datastore_id = data.vsphere_datastore.datastore.id path = "ISOS/debian-10.3.0-amd64-netinst.iso" } } |
Arrancamos el entorno:
1 |
terraform init |
Y comprobamos que no tenemos errores y qué va a hacer el fichero:
1 |
terraform plan |
Aplicamos:
1 |
terraform apply |
Y comprobamos el resultado:
Os dejo el procedimiento vía vídeo…
VIDEO YOUTUBE: Terraform VMware Provider crear máquina virtual
¿Te ha gustado la entrada SÍGUENOS EN TWITTER?
¿Te ha gustado la entrada SÍGUENOS EN TWITTER O INVITANOS A UN CAFE?
Raul,
Excelente explicacion abordada, tengo un duda, si manejo templates dentro de mi vCenter que cambia en el codigo de terraform?
Gracias. Déjame que te haga una entrada para explicarlo este fin de semana que tendré algo de tiempo. Hay que agregar una sección con el nombre de la template y luego otra clone. Salu2
Muchas gracias Raul.
Estare atento y nuevamente excelente post.
Saludos.
https://www.maquinasvirtuales.eu/terraform-crear-maquina-virtual-desde-template/
Ya lo tienes César. Salu2
Excelente Raul.
Muchas Gracias.