Grup keamanan jaringan

Halaman ini menjelaskan dan mencantumkan Grup keamanan jaringan (NSG) Azure yang diperlukan oleh GKE di Azure.

NSG terkelola

GKE di Azure mengelola NSG yang terpasang pada kartu antarmuka jaringan virtual (NIC) dari setiap instance virtual machine (VM). Untuk mengontrol traffic jaringan lebih lanjut, Anda dapat menambahkan NSG lain ke subnet Anda.

GKE di Azure mengelola aturan NSG yang diperlukan secara otomatis. Aturan ini menambahkan aturan NSG yang hilang dan menghapus aturan yang tidak lagi diperlukan. GKE di Azure juga memodifikasi aturan berdasarkan konfigurasi Layanan Kubernetes Anda. Misalnya, saat Anda menambahkan Layanan Kubernetes jenis LoadBalancer, GKE di Azure akan menambahkan aturan NSG yang sesuai.

Prioritas aturan

Prioritas aturan NSG Azure memiliki rentang antara 100 dan 4096. Makin rendah angka prioritas, makin tinggi prioritasnya.

Secara desain, GKE di Azure hanya mengelola aturan NSG dengan prioritas 500 atau lebih tinggi. Oleh karena itu, jika perlu menerapkan aturan tertentu atau membuat aturan tambahan, Anda dapat menggunakan NSG dengan prioritas antara 100 dan 499.

Azure memproses aturan secara berurutan, dimulai dengan angka prioritas terendah dan berlanjut ke atas. Saat Anda membuat aturan baru, selalu pilih prioritas aturan dalam rentang 100 hingga 499 untuk menghindari konflik dengan aturan Anthos NSG yang sudah ada.

Grup keamanan aplikasi

GKE di Azure membuat dua grup keamanan aplikasi (ASG) yang berlaku untuk NIC virtual bidang kontrol dan node pekerja. GKE di Azure mengupdate ASG secara otomatis—misalnya, saat Anda menambahkan kumpulan node baru ke cluster. Anda dapat menggunakan ASG ini saat membuat aturan NSG.

ID Azure Resource Manager (ARM) dari NSG dan ASG bidang kontrol dapat diperoleh dari output gcloud container azure clusters describe.

Misalnya, untuk mengizinkan koneksi SSH ke VM bidang kontrol, jalankan perintah az network nsg rule create untuk membuat NSG yang mereferensikan bidang kontrol ASG:

NSG_NAME=$(basename $(gcloud container azure clusters describe \
  CLUSTER_NAME --location=GOOGLE_CLOUD_LOCATION \
  --format 'value(managedResources.networkSecurityGroupId)'))

ASG_CP_NAME=$(basename $(gcloud container azure clusters describe \
  CLUSTER_NAME --location=GOOGLE_CLOUD_LOCATION \
  --format 'value(managedResources.controlPlaneApplicationSecurityGroupId)'))

az network nsg rule create \
  --name AllowSshToControlPlane \
  --nsg-name "${NSG_NAME}" \
  --priority 100 \
  --resource-group "CLUSTER_RESOURCE_GROUP" \
  --access Allow \
  --protocol Tcp \
  --destination-port-ranges 22 \
  --destination-asgs "${ASG_CP_NAME}"

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • GOOGLE_CLOUD_LOCATION: lokasi Google Cloud yang mengelola cluster Anda
  • CLUSTER_RESOURCE_GROUP: nama grup resource Azure yang menyimpan cluster Anda

Untuk mengetahui informasi selengkapnya tentang pembuatan aturan baru, ikuti prosedur yang dijelaskan dalam pembuatan aturan Azure NSG.

Aturan NSG default

Saat Anda menyiapkan GKE di Azure, aturan NSG berikut akan dibuat di jaringan virtual Azure Anda.

Prioritas Port Protokol Sumber Tujuan Tindakan Tujuan
1.000 2380.2381 TCP NIC pesawat kontrol NIC pesawat kontrol Izinkan Komunikasi etcd bidang kontrol
1001 443.8132 TCP Any NIC pesawat kontrol Izinkan Mengizinkan akses ke Kubernetes API
1002 10250 TCP NIC pesawat kontrol NIC kumpulan node Izinkan Komunikasi bidang kontrol ke node
1003 10.250, 10.255 TCP NIC kumpulan node NIC kumpulan node Izinkan Komunikasi node-ke-node
1004 6081 UDP NIC kumpulan node NIC kumpulan node Izinkan Komunikasi CNI node-ke-node
1005 Any Any Load balancer Azure Any Izinkan Mengizinkan traffic masuk ke load balancer
4096 Any Any Any Any Tolak Menolak semua koneksi masuk yang tidak dicakup oleh aturan lain