DevOps-bootcamp · Les

VPC en networking configureren

Provision een AWS Virtual Private Cloud, subnetten en security groups met Terraform om uw infrastructuur een veilige, geïsoleerde netwerkbasis te geven.

Les 4 van 413 stappen

VPC en networking configureren is een gratis DevOps-bootcamp-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject DevOps-bootcamp. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus DevOps-bootcamp bevat in totaal 4 lessen.

Waarom een aangepaste VPC?

Elk AWS-account wordt geleverd met een standaard-VPC, maar productie-infrastructuur verdient een netwerk dat je zelf ontwerpt. Een VPC (Virtual Private Cloud) is een geïsoleerd deel van de AWS-cloud waarin je IP-bereiken, subnetten, routering en firewalls beheert.

Met Terraform beschrijf je het volledige netwerk als code, zodat je het in verschillende regio's en accounts kunt reproduceren.

De VPC-resource declareren

De resource aws_vpc vormt de basis van je netwerk. Het CIDR-blok definieert het private IP-bereik. Een blok van /16 geeft je ongeveer 65.000 adressen die je over subnetten kunt verdelen.

resource "aws_vpc" "main" {
  cidr_block           = "10.0.0.0/16"
  enable_dns_support   = true
  enable_dns_hostnames = true

  tags = {
    Name = "main-vpc"
  }
}

Openbare en private subnetten

Subnetten verdelen het VPC-bereik in kleinere blokken die aan een Availability Zone zijn gekoppeld.

  • Openbaar subnet — routeert via een internetgateway en wordt gebruikt voor load balancers en bastionhosts.
  • Privé-subnet — heeft geen rechtstreekse internetroute en is ideaal voor databases en applicatieservers.

Een openbaar subnet maken

Elk subnet heeft een eigen CIDR (een deel van het VPC-bereik) en een Availability Zone nodig. Als je map_public_ip_on_launch instelt op true, krijgen instanties die hier worden gestart automatisch openbare IP-adressen toegewezen.

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"
  }
}

De internetgateway

Een internetgateway (IGW) zorgt ervoor dat resources in een openbaar subnet het internet kunnen bereiken. Je koppelt deze rechtstreeks aan de VPC.

resource "aws_internet_gateway" "gw" {
  vpc_id = aws_vpc.main.id

  tags = {
    Name = "main-igw"
  }
}

Routetabellen

Een subnet wordt pas echt openbaar wanneer een routetabel verkeer naar 0.0.0.0/0 naar de internetgateway stuurt. Routetabellen koppelen bestemmings-CIDR's aan doelen.

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
  }
}

Routes aan subnetten koppelen

Routetabellen doen niets totdat ze aan een subnet zijn gekoppeld. De resource aws_route_table_association legt deze koppeling.

resource "aws_route_table_association" "public" {
  subnet_id      = aws_subnet.public.id
  route_table_id = aws_route_table.public.id
}

Beveiligingsgroepen als firewalls

Een beveiligingsgroep is een stateful virtuele firewall rond een instantie. Stateful betekent dat retourverkeer voor een toegestane inkomende aanvraag automatisch wordt toegestaan. Daarom hoef je meestal alleen de relevante inkomende regels op te geven.

Een webbeveiligingsgroep definiëren

Hieronder staan we inkomend HTTP-verkeer vanaf elke locatie toe en al het uitgaande verkeer. Beperk in echte implementaties het bron-CIDR zo veel mogelijk.

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"]
  }
}

Een instantie in het netwerk opnemen

Koppel het subnet en de beveiligingsgroep aan een EC2-instantie via subnet_id en vpc_security_group_ids. Hierdoor wordt de server in je aangepaste netwerk geplaatst.

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]
}

Netwerk-ID's uitvoeren

Maak belangrijke ID's beschikbaar als outputs, zodat andere modules of je team er na het uitvoeren van apply naar kunnen verwijzen.

output "vpc_id" {
  value = aws_vpc.main.id
}

output "public_subnet_id" {
  value = aws_subnet.public.id
}

Korte controle

Toets je kennis van VPC-routering.

Samenvatting: je netwerkfundament

Je hebt een compleet netwerk gebouwd in Terraform:

  • aws_vpc met een CIDR-bereik.
  • Subnets verspreid over Availability Zones, openbaar of privé.
  • Internet gateway plus routetabellen voor openbare toegang.
  • Security groups als stateful firewalls.

Dit netwerk vormt de ruggengraat waarop elke andere AWS-resource aansluit.

Gratis beginnen

Leer DevOps-bootcamp met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
142
Lessen
568

Veelgestelde vragen

Is de les “VPC en networking configureren” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad DevOps-bootcamp, waaronder “VPC en networking configureren”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus DevOps-bootcamp bevat in totaal 4 lessen.

Wat leer ik in “VPC en networking configureren”?

Provision een AWS Virtual Private Cloud, subnetten en security groups met Terraform om uw infrastructuur een veilige, geïsoleerde netwerkbasis te geven. Je oefent met DevOps-bootcamp door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met DevOps-bootcamp te beginnen?

Ervaring vooraf is niet nodig. DevOps-bootcamp op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.

Hoe lang duurt de les “VPC en networking configureren”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over DevOps-bootcamp?

Ja. Elke les over DevOps-bootcamp bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. AWS-provider configureren
  2. EC2-instanties beschikbaar stellen
  3. S3-buckets en IAM beheren
  4. VPC en networking configureren
← Terug naar DevOps-bootcamp