VPC und Netzwerk konfigurieren
Stellen Sie mit Terraform eine AWS Virtual Private Cloud, Subnetze und Security Groups bereit, um Ihrer Infrastruktur eine sichere, isolierte Netzwerkgrundlage zu geben.
VPC und Netzwerk konfigurieren ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Warum eine benutzerdefinierte VPC?
Jedes AWS-Konto verfügt über eine Standard-VPC, aber Produktionsinfrastruktur verdient ein Netzwerk, das Sie selbst entwerfen. Eine VPC (Virtual Private Cloud) ist ein isolierter Bereich der AWS-Cloud, in dem Sie IP-Bereiche, Subnetze, Routing und Firewalls kontrollieren.
Mit Terraform beschreiben Sie das gesamte Netzwerk als Code, sodass es über Regionen und Konten hinweg reproduzierbar ist.
Die VPC-Ressource deklarieren
Die Ressource aws_vpc bildet die Grundlage Ihres Netzwerks. Der CIDR-Block definiert den privaten IP-Bereich. Ein /16-Block stellt ungefähr 65.000 Adressen bereit, die Sie in Subnetze aufteilen können.
resource "aws_vpc" "main" {
cidr_block = "10.0.0.0/16"
enable_dns_support = true
enable_dns_hostnames = true
tags = {
Name = "main-vpc"
}
}Öffentliche und private Subnetze
Subnetze teilen den VPC-Bereich in kleinere Blöcke auf, die jeweils an eine Availability Zone gebunden sind.
- Öffentliches Subnetz — verfügt über eine Route zu einem Internet-Gateway und wird für Load Balancer und Bastion-Hosts verwendet.
- Privates Subnetz — verfügt über keine direkte Internetroute und eignet sich ideal für Datenbanken und Anwendungsserver.
Ein öffentliches Subnetz erstellen
Jedes Subnetz benötigt einen eigenen CIDR-Bereich (einen Ausschnitt aus dem VPC-Bereich) und eine Availability Zone. Wenn Sie map_public_ip_on_launch auf true setzen, werden Instanzen, die hier gestartet werden, automatisch öffentliche IPs zugewiesen.
resource "aws_subnet" "public" {
vpc_id = aws_vpc.main.id
cidr_block = "10.0.1.0/24"
availability_zone = "us-east-1a"
map_public_ip_on_launch = true
tags = {
Name = "public-subnet"
}
}Das Internet-Gateway
Ein Internet-Gateway (IGW) ermöglicht Ressourcen in einem öffentlichen Subnetz den Zugriff auf das Internet. Sie verbinden es direkt mit der VPC.
resource "aws_internet_gateway" "gw" {
vpc_id = aws_vpc.main.id
tags = {
Name = "main-igw"
}
}Routingtabellen
Ein Subnetz wird erst dann wirklich öffentlich, wenn eine Routingtabelle den Datenverkehr von 0.0.0.0/0 an das Internet-Gateway weiterleitet. Routingtabellen ordnen Ziel-CIDRs Zielen zu.
resource "aws_route_table" "public" {
vpc_id = aws_vpc.main.id
route {
cidr_block = "0.0.0.0/0"
gateway_id = aws_internet_gateway.gw.id
}
}Routen mit Subnetzen verknüpfen
Routingtabellen bewirken nichts, solange sie keinem Subnetz zugeordnet sind. Die Ressource aws_route_table_association verknüpft beide miteinander.
resource "aws_route_table_association" "public" {
subnet_id = aws_subnet.public.id
route_table_id = aws_route_table.public.id
}Sicherheitsgruppen als Firewalls
Eine Sicherheitsgruppe ist eine zustandsbehaftete virtuelle Firewall um eine Instanz. Zustandsbehaftet bedeutet, dass Antwortverkehr auf eine erlaubte eingehende Anfrage automatisch zugelassen wird. Daher müssen Sie normalerweise nur die relevanten Regeln für eingehenden Datenverkehr angeben.
Eine Web-Sicherheitsgruppe definieren
Im Folgenden erlauben wir eingehenden HTTP-Datenverkehr von überall und sämtlichen ausgehenden Datenverkehr. In realen Deployments sollten Sie den Quell-CIDR so weit wie möglich einschränken.
resource "aws_security_group" "web" {
name = "web-sg"
vpc_id = aws_vpc.main.id
ingress {
from_port = 80
to_port = 80
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
egress {
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
}
}Eine Instanz in das Netzwerk einbinden
Verbinden Sie Subnetz und Sicherheitsgruppe über subnet_id und vpc_security_group_ids mit einer EC2-Instanz. Dadurch befindet sich der Server innerhalb Ihres benutzerdefinierten Netzwerks.
resource "aws_instance" "app" {
ami = "ami-0abcd1234"
instance_type = "t3.micro"
subnet_id = aws_subnet.public.id
vpc_security_group_ids = [aws_security_group.web.id]
}Netzwerk-IDs ausgeben
Machen Sie wichtige IDs als Outputs verfügbar, damit andere Module oder Ihr Team nach dem Anwenden darauf verweisen können.
output "vpc_id" {
value = aws_vpc.main.id
}
output "public_subnet_id" {
value = aws_subnet.public.id
}Kurzer Check
Testen Sie Ihr Verständnis des VPC-Routings.
Zusammenfassung: Ihr Netzwerkfundament
Sie haben in Terraform ein vollständiges Netzwerk erstellt:
- aws_vpc mit einem CIDR-Bereich.
- Subnets über mehrere Availability Zones hinweg, öffentlich oder privat.
- Internet gateway sowie Route Tables für die öffentliche Erreichbarkeit.
- Security groups als zustandsbehaftete Firewalls.
Dieses Netzwerk bildet das Rückgrat, an das alle anderen AWS-Ressourcen angebunden werden.
Häufig gestellte Fragen
Ist die Lektion „VPC und Netzwerk konfigurieren“ kostenlos?
Ja — der vollständige Text von „VPC und Netzwerk konfigurieren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „VPC und Netzwerk konfigurieren“?
Stellen Sie mit Terraform eine AWS Virtual Private Cloud, Subnetze und Security Groups bereit, um Ihrer Infrastruktur eine sichere, isolierte Netzwerkgrundlage zu geben. Du übst DevOps Bootcamp mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um DevOps Bootcamp zu starten?
Keine Vorkenntnisse erforderlich. DevOps Bootcamp auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „VPC und Netzwerk konfigurieren“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser DevOps Bootcamp-Lektion Code schreiben und ausführen?
Ja. Jede DevOps Bootcamp-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- AWS-Provider konfigurieren
- EC2-Instanzen bereitstellen
- S3-Buckets und IAM verwalten
- VPC und Netzwerk konfigurieren