Mit dem einzelnen VM-Stack wird eine einzelne VM mit einem intelligenten Standard erstellt, die aber auch angepasst werden kann. Sie verwendet:
- Compute – VMs – Compute Engine
Im Beispiel wird eine einfache einzelne virtuelle Maschine eingerichtet und Sie können eine SSH-Verbindung zu ihr herstellen.
Jetzt starten
Klicken Sie auf den folgenden Link, um eine Kopie des Quellcodes in Cloud Shell aufzurufen. Dort können Sie mit einem einzigen Befehl eine funktionierende Kopie der Anwendung in Ihrem Projekt erstellen.
Komponenten für einzelne VM
Bei der Architektur mit einer einzelnen VM wird ein Hauptprodukt verwendet. Im Folgenden finden Sie weitere Informationen zu diesem Produkt, einschließlich Links zu ähnlichen Videos, Produktdokumentationen und interaktiven Schritt-für-Schritt-Anleitungen.Skripts
Das Installationsskript verwendet eine in go
geschriebene ausführbare Datei und Terraform-Befehlszeilentools, um ein leeres Projekt zu erstellen und die Anwendung darin zu installieren. Die Ausgabe sollte eine funktionierende Anwendung und eine URL für die Load Balancing-IP-Adresse sein.
./main.tf
Dienste aktivieren
Google Cloud-Dienste sind in einem Projekt standardmäßig deaktiviert. Damit wir die folgenden Lösungen verwenden können, müssen wir Folgendes aktivieren:
- Compute Engine – virtuelle Maschinen und Netzwerke
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
}
Virtuelle Maschine erstellen
Erstellt eine 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]
}
Fazit
Danach sollte nur noch eine VM vorhanden sein. Sie können sich per SSH anmelden und es nach Belieben konfigurieren. Außerdem sollten Sie den gesamten Code haben, um diese Lösung an Ihre Umgebung anzupassen oder zu erweitern.