Skip to main content

Penjelasan detail file konfigurasi terraform network.tf

Tentu, berikut penjelasan detil untuk setiap bagian file network.tf Anda:


1. Resource Group



  • Membuat Resource Group di Azure, sebagai wadah untuk semua resource lain.
  • Nama dan lokasi diambil dari variable (var.resource_group_namevar.location).

2. Virtual Network




  • Membuat Virtual Network (VNet) bernama vnet-webserver.
  • Menggunakan address space 10.0.0.0/16.
  • Berada di resource group yang sama.

3. Subnet untuk VM/Webserver




  • Membuat subnet bernama subnet-main untuk VM/Webserver.
  • Menggunakan prefix 10.0.1.0/24.

4. Subnet untuk MySQL Flexible Server (dengan Delegasi)




  • Membuat subnet khusus untuk MySQL Flexible Server.
  • Prefix 10.0.2.0/24.
  • Delegasi subnet ke layanan Microsoft.DBforMySQL/flexibleServers agar subnet ini bisa digunakan untuk MySQL Flexible Server (wajib untuk private deployment).

5. (Optional) Private DNS Zone Link (di-comment)




  • (Masih di-comment) Untuk menghubungkan VNet ke Private DNS Zone MySQL.
  • Agar resource di VNet bisa resolve hostname private MySQL Flexible Server.

6. Network Security Group (NSG)




  • Membuat NSG bernama nsg-webserver.
  • Ada dua rule:
    • Allow-SSH: Membuka port 22 (SSH) dari mana saja.
    • Allow-HTTP: Membuka port 80 (HTTP) dari mana saja.

7. NSG Association ke Subnet




  • Mengasosiasikan NSG ke subnet subnet-main (untuk VM/Webserver).
  • Agar rule NSG diterapkan ke subnet tersebut.

Kesimpulan

  • File ini membangun infrastruktur jaringan dasar: resource group, VNet, dua subnet (untuk VM dan MySQL), NSG, dan asosiasi NSG.
  • Subnet MySQL sudah didelegasikan agar bisa dipakai MySQL Flexible Server.
  • Ada template untuk menghubungkan VNet ke Private DNS Zone (masih di-comment).
  • Semua resource saling terhubung dengan dependensi yang benar.

Berikut peta alur (flow diagram) dari file network.tf Anda, beserta penjelasan hubungan antar resource:





Penjelasan Alur:

  1. Resource Group
    Semua resource dibuat di resource group yang sama.

  2. Virtual Network
    Satu VNet (vnet-webserver) dibuat sebagai jaringan utama.

  3. Subnet

    • subnet-main: Untuk VM/Webserver.
    • subnet-mysql: Untuk MySQL Flexible Server, sudah didelegasikan ke layanan MySQL.
  4. Delegasi Subnet
    Subnet MySQL didelegasikan agar bisa digunakan oleh Azure MySQL Flexible Server.

  5. Network Security Group (NSG)
    NSG (nsg-webserver) berisi rule untuk mengizinkan SSH dan HTTP.

  6. NSG Association
    NSG di-associate ke subnet-main agar rule-nya aktif di subnet tersebut.

  7. (Opsional) Private DNS Zone Link
    Jika diaktifkan, menghubungkan VNet ke Private DNS Zone agar resource di VNet bisa resolve hostname private MySQL.


Kesimpulan:
Alur ini membangun jaringan Azure yang tersegmentasi, aman, dan siap untuk VM serta MySQL Flexible Server dengan best practice Azure.

Jika ingin diagram visual (gambar), Anda bisa menggunakan tools seperti draw.io atau diagrams.net dengan struktur di atas.