Apa itu Amazon VPC (Virtual Private Cloud) network dan bagaimana cara membuatnya?

Pertanyaan tersebut mungkin akan sering muncul di benak Anda yang selama ini menggunakan layanan co-location, web hosting, atau penyedia layanan VPS yang memiliki fitur virtual network.

Amazon VPC (Virtual Private Cloud) adalah layanan virtual network.

Jaringan komputer virtual tersebut bermanfaat agar berbagai resource cloud kita di AWS yang ada di dalamnya seperti EC2 instance, RDS instance, Lambda Function dapat diisolasi dari internet dan dari berbagai customer AWS lain.

Hal tersebut sangat penting mengenai pengamanan sistem dari serangan keamanan informasi. Yaitu kita dapat mengatur server tertentu seperti server database atau RDS Instance yang menjalankan software MySQL, Oracle, PostgreSQL hanya boleh diakses oleh server milik kita yang menjalankan aplikasi seperti Java dan PHP. Hal tersebut dapat dilakukan dengan mudah menggunakan Amazon VPC dan EC2 Security Group.

Langkah Umum Pembuatan Amazon VPC


Langkah umum pembuatan Amazon VPC antara lain:

  1. membuat Amazon VPC di region AWS tertentu dan menentukan IP CIDR block;
  2. membuat minimal 2 subnet untuk VPC yang baru dibuat, sebuah subnet berada di satu Availability Zone;
  3. membuat Internet Gateway dan menghubungkannya ke VPC tadi
  4. mengatur Routing Table dari VPC agar mengarahkan network packet tujuan 0.0.0.0/0 ke Internet Gateway


Cara Membuat Amazon VPC menggunakan Terraform

Pada tulisan kali ini, saya menyediakan template Terraform untuk Anda. Asumsi yang digunakan antara lain:

  1. Anda menggunakan Linux, MacOS atau WSL di Windows 10
  2. Anda sudah memasang Terraform CLI
  3. Anda sudah memiliki akun AWS
  4. Anda memiliki IAM User key dan secret
  5. Anda sudah setup IAM User credential di Terminal


Silahkan gunakan Terraform template berikut ini untuk membuat Amazon VPC, subnet, internet gateway dan security group yang ada di GitHub gist:

Salin Terraform template tadi ke sebuah folder, lalu lakukan perintah-perintah berikut di Terminal:

$ terraform init
$ terraform plan
$ terraform apply


Andy Primawan
AWS Certified Solutions Architect, Developer, SysOps Administrator