Terraform Infrastructure as Code · Pelajaran

Mengonfigurasi VPC dan Jaringan

Sediakan Virtual Private Cloud AWS, subnet, dan grup keamanan dengan Terraform untuk memberikan fondasi jaringan yang aman dan terisolasi bagi infrastruktur Anda.

Pelajaran 4 dari 413 langkah

Mengonfigurasi VPC dan Jaringan adalah pelajaran Terraform Infrastructure as Code gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Terraform Infrastructure as Code, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Terraform Infrastructure as Code mencakup 4 pelajaran total.

Mengapa VPC Kustom?

Setiap akun AWS dilengkapi VPC bawaan, tetapi infrastruktur produksi sebaiknya menggunakan jaringan yang Anda rancang sendiri. VPC (Virtual Private Cloud) adalah bagian terisolasi dari cloud AWS tempat Anda mengendalikan rentang IP, subnet, perutean, dan firewall.

Dengan Terraform, Anda mendeskripsikan seluruh jaringan sebagai kode, sehingga jaringan tersebut dapat dibuat ulang di berbagai wilayah dan akun.

Mendeklarasikan Sumber Daya VPC

Sumber daya aws_vpc adalah akar jaringan Anda. Blok CIDR menentukan rentang IP privat. Blok /16 memberi Anda sekitar 65.000 alamat untuk dibagi menjadi subnet.

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

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

Subnet Publik dan Privat

Subnet membagi rentang VPC menjadi blok-blok yang lebih kecil dan dikaitkan dengan Availability Zone.

  • Subnet publik — memiliki rute ke gateway internet, digunakan untuk penyeimbang beban dan host bastion.
  • Subnet privat — tidak memiliki rute internet langsung, ideal untuk basis data dan server aplikasi.

Membuat Subnet Publik

Setiap subnet memerlukan CIDR-nya sendiri (bagian dari rentang VPC) dan Availability Zone. Menetapkan map_public_ip_on_launch ke true akan otomatis memberikan IP publik kepada instans yang diluncurkan di sini.

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

Gateway Internet

Gateway internet (IGW) memungkinkan sumber daya di subnet publik mengakses internet. Anda memasangnya langsung ke VPC.

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

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

Tabel Rute

Subnet baru benar-benar menjadi publik setelah sebuah tabel rute mengarahkan lalu lintas 0.0.0.0/0 ke gateway internet. Tabel rute memetakan CIDR tujuan ke target.

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

Mengaitkan Rute dengan Subnet

Tabel rute tidak berfungsi hingga dikaitkan dengan subnet. Sumber daya aws_route_table_association menghubungkan keduanya.

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

Grup Keamanan sebagai Firewall

Grup keamanan adalah firewall virtual stateful di sekitar instans. Stateful berarti lalu lintas balasan untuk permintaan masuk yang diizinkan akan otomatis diperbolehkan, sehingga biasanya Anda hanya perlu menentukan aturan masuk yang diperlukan.

Mendefinisikan Grup Keamanan Web

Di bawah ini, kami mengizinkan HTTP masuk dari mana saja dan mengizinkan semua lalu lintas keluar. Dalam penerapan nyata, persempit CIDR sumber semaksimal mungkin.

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

Menghubungkan Instans ke Jaringan

Pasang subnet dan grup keamanan ke instans EC2 melalui subnet_id dan vpc_security_group_ids. Dengan demikian, server ditempatkan di dalam jaringan kustom Anda.

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

Menghasilkan ID Jaringan

Tampilkan ID penting sebagai output agar modul lain atau tim Anda dapat merujuknya setelah penerapan.

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

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

Pemeriksaan Singkat

Uji pemahaman Anda tentang perutean VPC.

Ringkasan: Fondasi Jaringan Anda

Anda telah membangun jaringan lengkap di Terraform:

  • aws_vpc dengan rentang CIDR.
  • Subnet di berbagai Availability Zone, publik atau privat.
  • Gateway internet serta tabel rute untuk akses publik.
  • Grup keamanan sebagai firewall stateful.

Jaringan ini adalah tulang punggung yang menjadi tempat semua sumber daya AWS lainnya terhubung.

Gratis untuk memulai

Belajar Terraform Infrastructure as Code dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
12
Pelajaran
48

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mengonfigurasi VPC dan Jaringan” gratis?

Ya — teks lengkap “Mengonfigurasi VPC dan Jaringan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Terraform Infrastructure as Code, upgrade ke CoddyKit PRO. Kursus Terraform Infrastructure as Code mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Mengonfigurasi VPC dan Jaringan”?

Sediakan Virtual Private Cloud AWS, subnet, dan grup keamanan dengan Terraform untuk memberikan fondasi jaringan yang aman dan terisolasi bagi infrastruktur Anda. Kamu berlatih Terraform Infrastructure as Code dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Terraform Infrastructure as Code?

Tidak diperlukan pengalaman sebelumnya. Terraform Infrastructure as Code di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Mengonfigurasi VPC dan Jaringan” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Terraform Infrastructure as Code ini?

Ya. Setiap pelajaran Terraform Infrastructure as Code menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Konfigurasi Penyedia AWS
  2. Menyediakan Instans EC2
  3. Mengelola Bucket S3 dan IAM
  4. Mengonfigurasi VPC dan Jaringan
← Kembali ke Terraform Infrastructure as Code