A pilha de VM única cria uma VM individual com um padrão inteligente, mas também a capacidade de personalizar a máquina virtual. Ela usa o seguinte:
- Compute – VMs – Compute Engine
No exemplo, você configura uma única máquina virtual e permite se conectar a ela com ssh.
Começar
Clique no link a seguir para copiar o código-fonte no Cloud Shell. Depois disso, um único comando ativará uma cópia de trabalho do aplicativo no projeto.
Componentes de VM única
A arquitetura de VM única usa um único produto principal. As informações a seguir destacam esse produto, além de mais informações, incluindo links para vídeos relacionados, a documentação do produto e tutoriais interativos.Vídeo | Documentos | Instruções | |||
---|---|---|---|---|---|
Compute Engine | O Compute Engine é a tecnologia virtual do Google Cloud. É possível ativar várias configurações de VM diferentes para atender às necessidades de computação. |
Scripts
O script de instalação usa um executável escrito em go
e as ferramentas da CLI do Terraform para
pegar um projeto vazio e instalar o aplicativo nele. A saída precisa ser um aplicativo de trabalho e um URL para o endereço IP do balanceamento de carga.
./main.tf
Ativar serviços
Por padrão, os serviços do Google Cloud estão desativados em um projeto. Para usar qualquer uma das soluções aqui, precisamos ativar as seguintes opções:
- Compute Engine: máquinas virtuais e rede
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
}
Criar uma máquina virtual
Cria uma 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]
}
Conclusão
Após a execução, você terá uma única VM. Use o SSH e o configure como quiser. Além disso, é necessário ter todo o código para modificar ou estender essa solução para se adequar ao seu ambiente.