Una sola pila de VM crea una VM individual con un valor predeterminado inteligente, pero también la capacidad de personalizar la máquina virtual. Usa lo siguiente:
- Procesamiento - VMs - Compute Engine
En el ejemplo, se configura una única máquina virtual simple y se te permite establecer una conexión SSH a ella.
Comenzar
Haz clic en el siguiente vínculo para obtener una copia del código fuente en Cloud Shell. Una vez allí, un solo comando iniciará una copia de trabajo de la aplicación en tu proyecto.
Consulta el código fuente en GitHub
Componentes de VM únicas
La arquitectura de VM única usa un producto clave. A continuación, se destaca ese producto y se brinda más información, incluidos vínculos a videos relacionados, documentación sobre el producto y explicaciones interactivas.Secuencias de comandos
La secuencia de comandos de instalación usa un archivo ejecutable escrito en go
y las herramientas de la CLI de Terraform para
tomar un proyecto vacío y, luego, instalar la aplicación en él. El resultado debe ser una aplicación que funcione y una URL para la dirección IP del balanceo de cargas.
./main.tf
Habilitar servicios
Los servicios de Google Cloud están inhabilitados en un proyecto de forma predeterminada. Para poder usar cualquiera de estas soluciones, debemos activar lo siguiente:
- Compute Engine: Máquinas virtuales y herramientas de redes
variable "gcp_service_list" {
description = "The list of apis necessary for the project"
type = list(string)
default = [
"compute.googleapis.com",
]
}
resource "google_project_service" "all" {
for_each = toset(var.gcp_service_list)
project = var.project_number
service = each.key
disable_dependent_services = false
disable_on_destroy = false
}
Crea una máquina virtual
Crea una VM.
resource "google_compute_instance" "instance" {
name = var.instance-name
machine_type = var.instance-machine-type
zone = var.zone
project = var.project_id
tags = var.instance-tags
boot_disk {
auto_delete = true
device_name = var.instance-name
initialize_params {
image = var.instance-image
size = var.instance-disksize
type = var.instance-disktype
}
}
network_interface {
network = "default"
access_config {
// Ephemeral public IP
}
}
depends_on = [google_project_service.all]
}
Conclusión
Una vez ejecutada, debería tener una sola VM. Puedes establecer una conexión SSH y configurarlo como quieras. Además, debes tener todo el código para modificar o extender esta solución a fin de que se adapte a tu entorno.