Runly Account
Sie benötigen ein aktives Runly-Konto. Erstellen Sie einen neuen API-Token in den Sicherheitseinstellungen, um Terraform die Berechtigung zu geben.
Lernen Sie, wie Sie Ihre Runly-Infrastruktur programmatisch, sicher und skalierbar bereitstellen.
Infrastructure as Code (IaC) ist der Schlüssel zu moderner DevOps-Praxis. Anstatt Ihre Server manuell im Dashboard zu klicken, definieren Sie die gesamte Umgebung in deklarativen Skripten. Das reduziert Fehler, beschleunigt Provisionierung und macht Ihre Infrastruktur versionierbar.
In diesem Guide zeigen wir Ihnen, wie Sie den offiziellen Runly Terraform Provider nutzen, um Bare-Metal-Server, VPCs und Firewalls in Frankfurt, Amsterdam und Wien bereitzustellen.
Sie benötigen ein aktives Runly-Konto. Erstellen Sie einen neuen API-Token in den Sicherheitseinstellungen, um Terraform die Berechtigung zu geben.
Terraform Version 1.5 oder höher. Installieren Sie es über brew install terraform (macOS) oder laden Sie das Binary von HashiCorp herunter.
Ein SSH-Private Key (z. B. id_rsa) für den root-Zugriff auf Ihre Server. Speichern Sie den Public Key im Runly-Portal unter "SSH Keys".
Der Provider erlaubt es Terraform, Ressourcen in Ihrem Runly-Konto zu verwalten. Stellen Sie sicher, dass Sie Ihren API-Token sicher hinterlegt haben (nicht im Code commiten!).
terraform { required_providers { runly = { source = "runly-cloud/runly" version = ">= 0.1.0" } } }
provider "runly" { api_token = var.runly_api_token }
Mit wenigen Zeilen Code erstellen wir einen Bare-Metal-Server in Frankfurt. Wir nutzen runly_server und geben eine feste IP zu.
resource "runly_server" "my_app_server" { name = "production-web-01" datacenter = "de-fra" plan = "c4.large" os_image = "ubuntu-22.04" ip_address = "192.168.1.50" ssh_key_ids = [runly_ssh_key.my_key.id] }
Nach dem Ausführen von terraform apply ist Ihr Server innerhalb von 60 Sekunden online, bereit für Docker-Container oder Node.js-Anwendungen.
Eine isolierte Infrastruktur benötigt ein VPC, Subnetze und Sicherheitsregeln. Wir definieren eine Firewall, die nur HTTP und HTTPS auf Port 80/443 zulässt.
resource "runly_vpc" "main_vpc" { name = "production-network" cidr = "10.0.0.0/16" } resource "runly_subnet" "public" { vpc_id = runly_vpc.main_vpc.id name = "public-subnet" cidr = "10.0.1.0/24" gateway_id = runly_vpc.main_vpc.gateway_id } resource "runly_firewall" "http_rules" { name = "allow-web-traffic" vpc_id = runly_vpc.main_vpc.id rules { direction = "ingress" protocol = "tcp" ports = [80, 443] source = "0.0.0.0/0" } }
Das Terraform State-File ist die "Bibel" Ihrer Infrastruktur. Speichern Sie es niemals lokal oder im Repository. Nutzen Sie ein Remote Backend wie S3 oder Azure Blob Storage.
Speichern Sie Ihre Terraform-Skripte in einem Git-Repository. Nutzen Sie Tools wie Terraform Cloud oder Terraform Enterprise für PR-basierte Reviews vor der Bereitstellung.
Verwenden Sie terraform.tfvars für sensible Daten wie API-Tokens. Commiten Sie die Datei nicht in das Repository. Nutzen Sie Environment-Variablen für lokale Tests.
Versionieren Sie Ihre State-Dateien. Wenn ein Fehler auftritt, können Sie mit terraform state mv Ressourcen zurücksetzen oder alte Snapshots wiederherstellen.
Senior DevOps Engineer bei Runly. Spezialist für Kubernetes, Terraform und Cloud-Native Architekturen. Er entwickelt Tools, um die Bereitstellung von Infrastruktur für Entwickler intuitiv und sicher zu machen.
Erstellen Sie Ihre erste Infrastruktur in Minuten. Nutzen Sie unser Terraform-Repository im GitHub-Repository von Runly.