VM única

Arquitectura

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.

Abrir en Cloud Shell

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.
Video Documentos Explicaciones
Compute Engine Compute Engine es la tecnología virtual de Google Cloud. Con él, puedes iniciar muchas configuraciones diferentes de VM para adaptarlas a la forma de las necesidades de procesamiento que tengas.

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.