DEV Community

Cover image for Membedah Multiple VPC Network Di Google Cloud
Muhammad Syukur Abadi
Muhammad Syukur Abadi

Posted on

Membedah Multiple VPC Network Di Google Cloud

Foto oleh Alina Grubnyak on Unsplash


Virtual Private Cloud atau VPC adalah versi virtual dari network fisik yang disediakan oleh public cloud. VPC dibangun dari subnet, di mana subnet tersebut bisa diperoleh dari subnet yang sudah ditentukan (predefined) atau subnet yang kita tentukan sendiri. Subnet tersebut didefinisikan menggunakan notasi CIDR (Classless Interdomain Routing) dengan keterangan sebagai berikut

  • gambar notasi CIDR Semakin tinggi angka CIDR, jumlah host atau komputer yang terhubung dalam suatu subnet akan semakin sedikit.

VPC di Google Cloud Platform (selanjutnya disebut GCP) memiliki public dan private IP. Perbedaan antara public dan private IP pada VPC adalah sebagai berikut

Public IP Private IP
Bisa didapat dari pool (bersifat ephemeral/sementara) atau didefinisikan sendiri (bersifat statis) Didapat dari rentang subnet pada sebuah VM menggunakan DHCP
Dapat terhubung dengan internet Hanya bisa terhubung dengan VM

Membuat VPC Network di Google Cloud Platform

Skenario

Artikel ini ditujukan untuk membedah course tersemat yang bisa diakses di sini. Pada artikel ini, kita akan mencoba membuat 2 VPC network dengan region yang berbeda dengan network diagram sebagai berikut.

Network Diagram

Kita akan membuat examplenet VPC dan managementnet VPC, di mana pada examplenet VPC terdapat 2 buah subnet yang masing-masing subnet memiliki sebuah VM yang akan kita buat dari compute engine, serta managementnet VPC yang memiliki sebuah VM dari compute engine.

Menginisiasi VPC Network

  1. Untuk membuat VPC network di Google Cloud Console, pilih menu VPC Network kemudian pilih VPC networks seperti pada gambar.

Menu VPC network

  1. Pilih Create VPC Network seperti pada gambar

Create VPC network

  1. Jika tampilan pada layar sudah seperti ini, isi form dengan nilai/value sebagai berikut.

Form VPC

Value untuk mangementnet

Field Value
Name managementnet
Subnet creation mode custom
Name (New subnet) managementnetsubnet-asiasoutheast
Region asia-southeast2
IPv4 range 10.173.0.0/20

Klik tombol Create berwarna biru

Value untuk examplenet

Field Value
Name examplenet
Subnet creation mode custom
Name (New subnet) examplenetsubnet-asiasoutheast
Region asia-southeast2
IPv4 range 10.120.0.0/20

untuk menambahkan subnet examplenetsubnet-asiaeast, klik add subnet, lalu isi value sebagai berikut

Field Value
Name (New subnet) examplenetsubnet-asiaeast
Region asia-east2
IPv4 range 10.130.0.0/21

Klik tombol Create berwarna biru

Periksa kembali apakah VPC network kita sudah berhasil diinisiasi atau belum dengan melihat di dashboard VPC network. Kurang lebih ketika kita sudah menjalankan langkah-langkah di atas, tampilan halaman dashboard kita akan sebagai berikut.

Tampilan dashboard VPC

Jika teman-teman penasaran dengan range IPv4 yang bisa digunakan sebagai subnet dalam VPC, teman-teman bisa membaca lebih lanjut di sini

Membuat Firewall

Firewall untuk apa?. Kegunaan firewall pada artikel ini supaya kita bisa mengakses port VM yang kita buat. Untuk membuat firewall, teman-teman bisa mengakses menu seperti di gambar berikut.

Membuat Firewall

Setelah muncul halaman dashboard pilih Create Firewall Rules

Dashboard firewall rules

Kemudian, isi field dengan value sebagai berikut.

Field Value
Name examplenet-allow-icmp-ssh-rdp
Network examplenet
Direction of Traffic Ingress
Targets All instances in the network
Source IPv4 Address 0.0.0.0/0
Specified Protocols and Ports Centang TCP dan isi port 22 dan port 3389, serta centang others dan isi dengan protokol ICMP

Klik tombol Create berwarna biru

Buat satu lagi firewall rules dengan isi field dengan value sebagai berikut.

Field Value
Name examplenetmanagement-allow-icmp-ssh-rdp
Network examplenetmanagement
Direction of Traffic Ingress
Targets All instances in the network
Source IPv4 Address 0.0.0.0/0
Specified Protocols and Ports Centang TCP dan isi port 22 dan port 3389, serta centang others dan isi dengan protokol ICMP

Klik tombol Create berwarna biru

Mari kita coba bedah firewal rules yang telah kita buat.

  1. Ketika kita membuat firewall rule, kita harus memiliki nama untuk rule tersebut dan nama tersebut haruslah bersifat unik.
  2. Setiap network atau VPC network bisa memiliki lebih dari satu firewall rules, silakan teman-teman coba membuat firewall rule yang lain untuk examplenetmanagement VPC atau examplenet VPC.
  3. Kita bisa mengatur apakah firewall rule yang kita buat diterapkan untuk data yang masuk ke dalam atau keluar VPC network kita dengan memilih ingress untuk data yang masuk dan egress untuk data yang keluar.
  4. Setiap firewall rule memiliki target di mana target tersebut akan diterapkan pada VPC network kita. Jika teman-teman mengklik dropdown target, teman-teman akan menemukan pilihan All instances in the network, Specified target tags, dan * Specified service account*. Pilih All instances in the network jika teman-teman ingin firewall rule tersebut diterapkan pada seluruh instance atau komputasi yang menerapkan firewall rule tersebut (atau VPC network yang terhubung menggunakan firewall rule tersebut), gunakan Specified target tags jika ingin menerapkan sebuah atau beberapa tags pada instance atau komputasi yang menerapkan firewall rule tersebut (atau VPC network yang terhubung menggunakan firewall rule tersebut), dan gunakan Specified service account jika ingin menerapkan sebuah atau beberapa service account pada instance atau komputasi yang menerapkan firewall rule tersebut (atau VPC network yang terhubung menggunakan firewall rule tersebut). Kali ini kita menggunakan All instances in the network yang akan kita terapkan ketika kita membuat VM instance nanti.
  5. Sama seperti target, kita juga bisa memilih apakah firewall rule yang kita buat akan diterapkan pada rentang IPv4, rentang IPv6, atau berdasarkan service account tertentu dengan mengisi Source field. Pada artikel ini, kita mengisi Source field dengan rentang alamat IPv4 0.0.0.0/0 yang artinya seluruh subnet pada VPC network akan menerapkan firewall rule ini.
  6. Firewall rule yang kita terapkan memungkinkan kita berkomunikasi kepada instance yang menerapkan firewall rule tersebut. Pada artikel ini, kita mengizinkan port 22 untuk melakukan SSH, port 3389 untuk RDP, serta protokol ICMP untuk memeriksa apakah ada error ketika kita mengirim data.

Jika langkah-langkah di atas sudah kita jalankan, di dashboard firewall rules kita kurang lebih akan seperti ini.

Dashboard firewall rules

Membuat Compute Engine Instances

Langkah selanjutnya adalah membuat compute engine instaces dengan mengakses menu seperti di gambar.

Menu Compute Engine

Jika sudah muncul dasboard Compute Engine, klik Create Instance, kemudian isi field serta value-nya sebagai berikut.

Instance examplemanagementnet-asiasoutheast-vm

Field Value
Name examplemanagementnet-asiasoutheast-vm
Region asia-southeast, untuk Zone, pilih asia-southeast2-a
Series E2 dengan Machine type e2-micro

Pergi ke bagian Advanced Options, kemudian pilih bagian Networking. Isi field dengan value sebagai berikut.

Field Value
Network examplenetmanagement
Subnetwork managementsubnet-asiasoutheast

Klik tombol Create berwarna biru

Instance examplenet-asiaeast-vm

Field Value
Name examplenet-asiaeast-vm
Region asia-east, untuk Zone, pilih asia-east2-c
Series E2 dengan Machine type e2-micro

Pergi ke bagian Advanced Options, kemudian pilih bagian Networking. Isi field dengan value sebagai berikut.

Field Value
Network examplenet
Subnetwork examplesubnet-asiaeast

Klik tombol Create berwarna biru

Instance examplenet-asiasoutheast-vm

Field Value
Name examplenet-asiasoutheast-vm
Region asia-southeast, untuk Zone, pilih asia-southeast2-a
Series E2 dengan Machine type e2-micro

Pergi ke bagian Advanced Options, kemudian pilih bagian Networking. Isi field dengan value sebagai berikut.

Field Value
Network examplenet
Subnetwork examplesubnet-asiasoutheast

Klik tombol Create berwarna biru

Instance vm-manager

Field Value
Name vm-manager
Region asia-southeast, untuk Zone, pilih asia-southeast2-a
Series E2 dengan Machine type e2-small

Pergi ke bagian Advanced Options, kemudian pilih bagian Networking. Untuk instance ini, kita akan menghubungkan 2 VPC network menggunakan 2 buah network interface. Isi field dengan value sebagai berikut.

Field Value
Network examplenet
Subnetwork examplesubnet-asiasoutheast

Klik Add Network Interface, kemudian isi lagi form dengan value sebagai berikut.

Field Value
Network examplemanagementnet
Subnetwork managementsubnet-asiasoutheast

Klik tombol Create berwarna biru

Jika langkah-langkah di atas sudah kita tempuh, kita akan mendapatkan tampilan pada dashboard Compute Engine sebagai berikut.

Dashboard Compute Engine

Memeriksa Koneksi Antar VPC

Mari kita bereksperimen apakah VPC yang kita terapkan pada network interface di instance kita memungkinkan seluruh instance kita terhubung satu sama lain. Perhatikan dashboard Compute Engine teman-teman. Teman-teman bisa melihat internal IP dan external IP yang menempel pada setiap instance. Di sebelah external IP, ada SSH yang akan kita gunakan untuk menguji konektivitas dari setiap instance yang kita buat.

Pertama, tekan SSH pada instance examplenet-asiaeast-vm, kemudian gunakan perintah di bawah ini untuk menguji apakah instance tersebut terhubung dengan instance examplenet-asiasoutheast-vm menggunakan external IP dari instance examplenet-asiasoutheast-vm.

ping -c 3 <alamat external IP examplenet-asiasoutheast-vm>
Enter fullscreen mode Exit fullscreen mode

Kita berhasil melakukan ping dari instance examplenet-asiaeast-vm ke instance examplenet-asiasoutheast-vm. Sekarang cobalah untuk melakukan ping dari instance examplenet-asiaeast-vm ke instance examplenet-asiasoutheast-vm menggunakan internal IP dari instance examplenet-asiasoutheast-vm menggunakan potongan perintah di bawah.

ping -c 3 <alamat internal IP examplenet-asiasoutheast-vm>
Enter fullscreen mode Exit fullscreen mode

Kita juga berhasil melakukan ping dari instance examplenet-asiaeast-vm ke instance examplenet-asiasoutheast-vm. Hal ini dikarenakan instance examplenet-asiaeast-vm dan instance examplenet-asiasoutheast-vm masih satu VPC network, yaitu examplenet, walaupun mereka berada pada subnet yang berbeda.

Sekarang, cobalah melakukan ping dari instance examplenet-asiaeast-vm ke instance examplemanagementnet-asiasoutheast-vm menggunakan external IP dari instance examplemanagementnet-asiasoutheast-vm. Kita juga berhasil melakukan pingdari instance examplenet-asiaeast-vm ke instance examplemanagementnet-asiasoutheast-vm.

Kemudian, cobalah untuk melakukan ping dari instance examplenet-asiaeast-vm ke instance examplemanagementnet-asiasoutheast-vm menggunakan internal IP dari instance examplemanagementnet-asiasoutheast-vm. Jika kita lihat di terminal, tidak ada data yang berhasil terkirim. Hal ini disebabkan instance examplemanagementnet-asiasoutheast-vm berada di VPC network yang berbeda dengan instance examplemanagementnet-asiasoutheast-vm.

Terakhir, cobalah melakukan ping dari instance vm-manager ke instance examplenet-asiaeast-vm menggunakan internal IP dari instance examplenet-asiaeast-vm. Kita tidak akan mendapatkan respons dari instance examplenet-asiaeast-vm, karena network interface dari instance vm-manager (eth0) tersambung dengan instance examplenet-asiasoutheast-vm.

Rangkuman

Pada artikel ini, kita telah sama-sama membahas apa itu VPC network, public IP, static IP, serta kegunaan dari VPC network di Google Cloud. Selain itu, kita juga mencoba membuat dan menguji konektivitas antar VM instance menggunakan internal IP address maupun external IP address dari masing-masing VM instance. Hasilnya, kita bisa melakukan ping untuk instance yang masih berada dalam satu subnet dan kita juga bisa melakukan ping untuk instance yang network interface nya terhubung dengan salah satu instance pada suatu subnetwork.

Referensi

https://cloud.google.com/vpc/docs/vpc
https://www.cloudskillsboost.google/catalog_lab/1031

Top comments (0)