Halaman ini menunjukkan cara menerapkan tag jaringan secara dinamis ke node di cluster Google Kubernetes Engine (GKE) tanpa mengganggu beban kerja yang sedang berjalan.
Tentang tag jaringan
Tag jaringan adalah metadata di virtual machine (VM) Compute Engine yang dapat Anda gunakan untuk membuat aturan dan rute firewall yang dapat diterapkan ke instance VM tertentu. Di GKE, Anda dapat menggunakan tag jaringan untuk membuat rute atau aturan firewall VPC yang berlaku untuk node dalam cluster Anda.
Anda dapat menggunakan GKE API untuk menerapkan dan memperbarui tag jaringan pada cluster GKE tanpa mengganggu beban kerja yang berjalan. Tag jaringan yang Anda tentukan juga diterapkan ke node baru yang disediakan secara otomatis oleh GKE.
Gunakan Tag, bukan tag jaringan
Tag jaringan adalah string sederhana yang tidak tunduk pada kontrol akses Identity and Access Management. Siapa pun yang memiliki akses ke node Anda di GKE API dapat menambahkan tag jaringan ke node tersebut.
Jika Anda menggunakan GKE versi 1.28 atau yang lebih baru, sebaiknya gunakan Tag yang memiliki penetapan firewall untuk menerapkan kebijakan firewall jaringan regional atau global, yang meningkatkan kemampuan aturan firewall VPC.
Tag adalah key-value pair yang dipasang ke VM Compute Engine. Anda dapat menggunakan IAM untuk mengontrol siapa yang dapat berinteraksi dengan Tag tertentu.
- Untuk menggunakan Tag guna menerapkan kebijakan firewall di GKE, lihat Menerapkan kebijakan firewall jaringan secara selektif di GKE.
- Untuk mendapatkan manfaat Tag lainnya, lihat Perbandingan Tag dan tag jaringan.
- Untuk mendapatkan bantuan dalam memigrasikan aturan firewall ke kebijakan firewall jaringan, lihat aturan firewall VPC Google Cloud ke kebijakan firewall jaringan - panduan migrasi (PDF).
Opsi command line untuk menerapkan tag jaringan
Tabel berikut menjelaskan flag yang dapat ditentukan menggunakan Google Cloud CLI untuk menerapkan tag jaringan ke cluster Anda, serta kasus penggunaannya.Tanda | Mode operasi | Tingkat | Deskripsi |
---|---|---|---|
--autoprovisioning-network-tags |
|
Cluster |
Menerapkan tag jaringan yang ditentukan ke semua node Autopilot dan semua node pool Standard yang disediakan secara otomatis. |
--tags |
|
Node pool | Menerapkan tag jaringan secara manual ke node pool Standard tertentu. |
Batasan
Penggunaan --autoprovisioning-network-tags
mencegah Anda menggunakan --tags
untuk memperbarui tag jaringan untuk node pool Standard yang disediakan otomatis.
Sebaiknya gunakan --autoprovisioning-network-tags
untuk node pool yang disediakan secara otomatis, dan gunakan --tags
hanya untuk node pool yang dibuat secara manual.
Sebelum memulai
Sebelum memulai, pastikan Anda telah menjalankan tugas berikut:
- Aktifkan Google Kubernetes Engine API. Aktifkan Google Kubernetes Engine API
- Jika ingin menggunakan Google Cloud CLI untuk tugas ini,
instal lalu
initialize
gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan
gcloud components update
.
Menambahkan tag jaringan ke cluster baru
Anda dapat menambahkan tag jaringan saat membuat cluster baru.
Tambahkan tag jaringan ke cluster Autopilot baru
Jalankan perintah berikut:
gcloud container clusters create-auto CLUSTER_NAME \
--location=LOCATION \
--autoprovisioning-network-tags=TAG1,TAG2,...
Ganti kode berikut:
CLUSTER_NAME
: nama cluster Autopilot baru Anda.LOCATION
: lokasi Compute Engine untuk cluster baru Anda.TAG1,TAG2, ...
: daftar yang dipisahkan koma untuk tag jaringan yang ingin Anda terapkan.
Menambahkan tag jaringan ke cluster Standar baru
Untuk Standard, Anda juga dapat menentukan tag jaringan secara khusus untuk penyediaan otomatis node yang akan digunakan.
Menerapkan tag jaringan ke kumpulan node default
Jalankan perintah berikut untuk membuat cluster Standard baru dan menerapkan tag jaringan ke node pool default:
gcloud container clusters create CLUSTER_NAME \
--location=LOCATION \
--tags=NETWORK_TAG1,NETWORK_TAG2,...
Ganti kode berikut:
CLUSTER_NAME
: nama cluster Standard yang baru.COMPUTE_REGION
: lokasi Compute Engine untuk cluster baru Anda.NETWORK_TAG1,NETWORK_TAG2, ...
: daftar yang dipisahkan koma untuk tag jaringan yang ingin Anda terapkan.
Menerapkan tag jaringan ke node pool yang disediakan otomatis
Anda dapat secara otomatis menerapkan tag jaringan ke semua node pool yang dibuat oleh penyediaan otomatis node.
Jalankan perintah berikut:
gcloud container clusters create CLUSTER_NAME \
--location=LOCATION \
--enable-autoprovisioning \
--autoprovisioning-network-tags=TAG1,TAG2,...
Ganti TAG1,TAG2,...
dengan daftar tag jaringan yang dipisahkan koma yang ingin Anda terapkan ke semua node pool yang disediakan secara otomatis.
Mengupdate tag jaringan pada cluster yang ada
Anda dapat mengupdate tag jaringan pada cluster yang ada.
Mengupdate tag jaringan pada cluster Autopilot yang ada
Jalankan perintah berikut:
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=TAG1,TAG2,...
Mengupdate tag jaringan pada cluster Standar yang ada
Jalankan perintah berikut untuk memperbarui tag jaringan pada node pool Standard tertentu. Anda tidak dapat menggunakan perintah ini untuk memperbarui node pool yang disediakan secara otomatis jika menggunakan --autoprovisioning-network-tags
.
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--tags=NETWORK_TAG1,NETWORK_TAG2,...
Jika --autoprovisioning-network-tags
disetel untuk cluster, perintah ini
akan menampilkan error.
Memperbarui tag jaringan untuk kumpulan node yang disediakan otomatis
Anda dapat memperbarui tag jaringan yang diterapkan oleh penyediaan otomatis node untuk node pool baru dan yang sudah ada, yang disediakan secara otomatis.
Jalankan perintah berikut:
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=TAG1,TAG2,...
Menambahkan tag jaringan ke node pool Standard yang baru
Untuk membuat node pool baru di cluster Standard dengan tag jaringan tertentu, jalankan perintah berikut:
gcloud container node-pools create NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--tags=NETWORK_TAG1,NETWORK_TAG2,...
Ganti NODE_POOL_NAME
dengan nama node pool baru.
Lihat tag jaringan yang ada
Bagian ini menunjukkan cara melihat tag jaringan yang ada.
Lihat tag jaringan yang ada di Autopilot
Jalankan perintah berikut:
gcloud container clusters describe CLUSTER_NAME \
--flatten=nodePoolAutoConfig.networkTags
Jika cluster memiliki tag jaringan, outputnya mirip dengan yang berikut ini:
---
tags:
- example-tag
Lihat tag jaringan yang ada di Standar
Anda dapat melihat tag jaringan dalam node pool yang disediakan secara otomatis atau dalam kumpulan node yang Anda buat.
Melihat tag jaringan dalam node pool yang disediakan secara otomatis
Jalankan perintah berikut:
gcloud container clusters describe CLUSTER_NAME \
--flatten=nodePoolAutoConfig.networkTags
Jika cluster memiliki tag jaringan, outputnya mirip dengan yang berikut ini:
---
tags:
- example-tag
Melihat tag jaringan di kumpulan node tanpa penyediaan otomatis node
Untuk melihat tag jaringan untuk kumpulan node Standar tertentu tempat
menerapkan tag menggunakan tanda --tags
, jalankan perintah berikut:
gcloud container node-pools describe NODE_POOL_NAME\
--cluster=CLUSTER_NAME \
--format='value(config.tags)'
Ganti NODE_POOL_NAME
dengan nama node
pool.
Jika node pool memiliki tag, outputnya mirip dengan yang berikut ini:
example-tag
Hapus tag jaringan
Anda dapat menghapus tag jaringan dari GKE.
Menghapus tag jaringan dari cluster Autopilot
Jalankan perintah berikut:
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=""
Menghapus tag jaringan dari cluster Standar dan node pool
Anda dapat menghapus tag dari semua node pool yang disediakan secara otomatis atau dari pool node tertentu.
Menghapus tag jaringan dari node pool yang disediakan secara otomatis
Untuk menghapus tag jaringan dari semua node pool yang disediakan secara otomatis, jalankan perintah berikut:
gcloud container clusters update CLUSTER_NAME \
--autoprovisioning-network-tags=""
Perintah ini juga memulihkan kemampuan Anda untuk menggunakan opsi --tags
guna menentukan
tag jaringan secara manual untuk node pool yang disediakan secara otomatis.
Menghapus tag jaringan dari kumpulan node tertentu
Untuk menghapus tag jaringan dari node pool tertentu, jalankan perintah berikut:
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--tags=""
Langkah berikutnya
- Pelajari tag jaringan lebih lanjut.
- Pelajari cara menerapkan label cluster untuk pengelolaan cluster yang lebih baik.