Dokumen ini menunjukkan cara mengelola cluster di Google Kubernetes Engine (GKE). Untuk mempelajari cara kerja cluster, lihat Arsitektur cluster.
Sebelum memulai
Sebelum memulai, pastikan Anda telah melakukan tugas berikut:
- Aktifkan Google Kubernetes Engine API. Aktifkan Google Kubernetes Engine API
- Jika ingin menggunakan Google Cloud CLI untuk tugas ini,
instal lalu
lakukan inisialisasi gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan perintah
gcloud components update. Versi gcloud CLI yang lebih lama mungkin tidak mendukung perintah yang ada dalam dokumen ini.
Melihat cluster Anda
gcloud
Untuk melihat cluster tertentu, jalankan perintah berikut:
gcloud container clusters describe CLUSTER_NAME \ --location=CONTROL_PLANE_LOCATIONGanti kode berikut:
CLUSTER_NAME: nama cluster Anda.CONTROL_PLANE_LOCATION: lokasi Compute Engine dari bidang kontrol cluster Anda. Berikan region untuk cluster regional, atau zona untuk cluster zonal.
Untuk mencantumkan semua cluster dalam project di region atau zona mana pun, jalankan perintah berikut:
gcloud container clusters listUntuk mencantumkan cluster yang berlokasi di region atau zona tertentu, jalankan perintah berikut:
gcloud container clusters list \ --location=CONTROL_PLANE_LOCATION
Konsol
Untuk melihat cluster Anda, buka halaman Google Kubernetes Engine di Google Cloud konsol.
Untuk melihat informasi selengkapnya tentang cluster, pilih cluster dari daftar.
Menetapkan cluster default untuk kubectl
Jika memiliki beberapa cluster, Anda dapat menetapkan cluster default untuk alat command line kubectl.
Untuk mempelajari lebih lanjut, lihat Menetapkan cluster default untuk perintah kubectl.
Menetapkan cluster default untuk gcloud
Untuk menetapkan cluster default bagi perintah gcloud, jalankan perintah berikut:
gcloud config set container/cluster CLUSTER_NAME
Ganti CLUSTER_NAME dengan nama cluster Anda.
Mengupgrade cluster
Secara default, GKE secara otomatis mengupgrade cluster Anda. Namun, Anda dapat memilih untuk mengupgrade Cluster standar sendiri. Untuk mempelajari lebih lanjut, lihat Mengupgrade cluster secara manual.
Untuk panduan tentang mengupgrade cluster, lihat Praktik terbaik untuk mengupgrade cluster.
Menambahkan atau menghapus zona dalam Cluster standar
Bagian berikut menjelaskan cara menambahkan atau menghapus zona cluster. Semua zona harus berada di region cluster.
Mengubah zona untuk cluster zonal
Untuk cluster zonal yang ada, Anda dapat menambahkan atau menghapus zona.
gcloud
Untuk menambahkan atau menghapus zona untuk cluster zonal, gunakan perintah gcloud container
clusters update:
gcloud container clusters update CLUSTER_NAME \
--location CONTROL_PLANE_LOCATION \
--node-locations COMPUTE_ZONE1,COMPUTE_ZONE2
Ganti kode berikut:
CLUSTER_NAME: nama yang Anda pilih untuk cluster.CONTROL_PLANE_LOCATION: zona Compute Engine dari bidang kontrol cluster Anda.COMPUTE_ZONE1,COMPUTE_ZONE2,[...]: zona tempat node dibuat. Anda dapat menentukan zona sebanyak mungkin yang dibutuhkan untuk cluster Anda. Semua zona harus berada di region yang sama dengan bidang kontrol cluster, yang ditentukan oleh flag--location. Untuk cluster zonal,--node-locationsharus berisi zona utama cluster.
Misalnya, example-cluster berjalan di us-central1-a.
Untuk menambahkan dua zona lagi ke cluster, Anda harus menjalankan perintah berikut:
gcloud container clusters update example-cluster \
--location us-central1-a
--node-locations us-central1-a,us-central1-b,us-central1-c
Sebagai contoh lainnya, example-cluster berjalan di us-central1-a,
us-central1-b, dan us-central1-c. Jika Anda hanya ingin cluster berjalan di
us-central1-a dan us-central1-b, Anda harus menjalankan perintah berikut:
gcloud container clusters update example-cluster \
--location us-central1-a \
--node-locations us-central1-a,us-central1-b
Konsol
Untuk menambahkan atau menghapus zona di cluster yang ada, lakukan langkah-langkah berikut:
Buka halaman Google Kubernetes Engine di Google Cloud konsol.
Di samping cluster yang ingin diedit, klik more_vert Actions, lalu klik edit Edit.
Di bagian tab Details, untuk kolom Default node zone, klik edit Edit node pools.
Pilih zona yang diinginkan dan simpan perubahan Anda.
Mengubah zona untuk cluster regional
Saat ini, Anda hanya dapat mengubah zona untuk cluster regional yang ada menggunakan perintah gcloud.
Untuk menambahkan atau menghapus zona untuk cluster regional, gunakan perintah gcloud container
clusters update dengan flag --node-locations:
gcloud container clusters update CLUSTER_NAME \
--location CONTROL_PLANE_LOCATION \
--node-locations COMPUTE_ZONE1,COMPUTE_ZONE2
Ganti kode berikut:
CLUSTER_NAME: nama cluster.CONTROL_PLANE_LOCATION: region Compute Engine dari bidang kontrol cluster Anda.COMPUTE_ZONE1,COMPUTE_ZONE2,[...]: region bidang kontrol zona tempat node dibuat. Zona harus berada dalamCONTROL_PLANE_LOCATIONyang sama dengan bidang kontrol cluster, yang ditentukan oleh flag--location.
Misalnya, example-cluster berjalan di us-central1-a dan
us-central1-b. Untuk menambahkan us-central1-c, Anda harus menjalankan perintah berikut:
gcloud container clusters update example-cluster \
--location us-central1 \
--node-locations us-central1-a,us-central1-b,us-central1-c
Sebagai contoh lainnya, example-cluster berjalan di us-central1-a,
us-central1-b, dan us-central1-c. Jika Anda hanya ingin cluster berjalan di us-central1-a dan us-central1-b, Anda harus menjalankan perintah berikut:
gcloud container clusters update example-cluster \
--location us-central1 \
--node-locations us-central1-a,us-central1-b
Mengubah ukuran cluster
Anda dapat mengubah ukuran Cluster standar untuk menambah atau mengurangi jumlah node yang dimiliki. Misalnya, jika Anda ingin agar cluster tidak lagi menggunakan resource tanpa menghapusnya, Anda dapat memperkecil skala node hingga nol. Untuk mempelajari lebih lanjut cara mengubah ukuran cluster, lihat Mengubah ukuran cluster.
Ukuran cluster Autopilot disesuaikan ukurannya secara otomatis berdasarkan spesifikasi Pod, jadi tidak perlu mengkhawatirkan ukuran cluster Anda. Misalnya, jika Anda mengubah jumlah replika Pod, atau resource yang dimintanya, ukuran cluster akan ditingkatkan atau diturunkan dengan tepat.
Jika menginginkan cara yang lebih efisien untuk mengoptimalkan cluster, Anda juga dapat menggunakan Vertical Pod Autoscaling (VPA). Autoscaler dapat merekomendasikan nilai untuk permintaan dan batas CPU serta memori, atau dapat memperbarui nilai secara otomatis.
Menghapus cluster
Jika perlu, Anda dapat menghapus cluster. Untuk mempelajari lebih lanjut, lihat Menghapus cluster.
Mencegah penghapusan cluster menggunakan kebijakan penolakan
Anda dapat menggunakan kebijakan penolakan IAM untuk mencegah penghapusan cluster penting tertentu, terlepas dari akun utama yang mencoba penghapusan. Untuk menargetkan cluster tertentu dalam kebijakan penolakan, Anda menambahkan a tag ke cluster tersebut. Kemudian, Anda menggunakan kondisi penolakan untuk menerapkan kebijakan penolakan hanya ke cluster yang memiliki tag tersebut.
Untuk melindungi cluster tertentu dari penghapusan, ikuti langkah-langkah berikut:
Buat dan tentukan kunci tag untuk mengidentifikasi cluster yang dilindungi. Misalnya, Anda dapat membuat kunci tag yang diberi nama
do_not_delete.Buat kebijakan penolakan IAM dengan memilih salah satu opsi berikut:
Konsol
Di Google Cloud konsol, buka tab Deny di halaman IAM.
Klik Create deny policy. Halaman Create deny policy akan terbuka.
Di kolom ID , tentukan ID unik dan tidak dapat diubah untuk kebijakan penolakan Anda.
Di bagian New deny rule, lakukan hal berikut:
Di kolom Denied principals, tentukan
principalSet://goog/public:all, yang mencakup akun utama mana pun.Di bagian Denied permissions, di menu drop-down Permission 1, temukan dan pilih izin
container.googleapis.com/clusters.delete.Klik Add denial condition. Panel Add denial condition akan terbuka.
Tentukan judul yang informatif untuk kondisi tersebut, seperti
Cluster has the do_not_delete tag.Di tab Condition builder, dari menu drop-down Condition type 1, pilih Tag.
Di menu drop-down Operator, pilih Has key.
Di menu drop-down Key path, pilih kunci tag yang Anda terapkan ke cluster, seperti
do_not_delete.Klik Save.
Klik Create.
gcloud
Buat file JSON yang berisi kebijakan penolakan berikut:
{ "displayName": "Prevent cluster deletion based on tag", "rules": [ { "description": "Prevent cluster deletion based on tag", "deniedPrincipals": [ "principalSet://goog/public:all" ], "deniedPermissions": [ "container.googleapis.com/clusters.delete" ], "denialCondition": { "title": "Cluster has the do_not_delete tag", "expression": "resource.hasTagKey('TAG_KEY_NAME') } } ] }Ganti
TAG_KEY_NAMEdengan jalur ke kunci tag yang Anda buat.Buat kebijakan penolakan menggunakan perintah:
gcloud iam policies creategcloud iam policies create POLICY_ID \ --attachment-point=ATTACHMENT_POINT \ --kind=denypolicies --policy-file=POLICY_FILEGanti kode berikut:
POLICY_ID: ID untuk kebijakan penolakan Anda.ATTACHMENT_POINT: organisasi, folder, atau project untuk melampirkan kebijakan penolakan. Misalnya, jika Anda melampirkan kebijakan penolakan ke folder, kebijakan tersebut akan berlaku untuk cluster di project mana pun dalam folder tersebut. Untuk mengetahui informasi selengkapnya, lihat Titik lampiran.POLICY_FILE: jalur ke file JSON yang Anda buat pada langkah sebelumnya.
Setelah Anda membuat kebijakan penolakan, tidak ada yang dapat menghapus cluster yang memiliki kunci tag yang ditentukan dalam kondisi penolakan. Setiap upaya untuk menghapus cluster akan gagal dengan pesan error Permission denied. Untuk mengizinkan penghapusan cluster, Anda harus
melepaskan kunci tag tersebut dari cluster.
Menambahkan cluster ke fleet
Jika organisasi Anda menggunakan banyak cluster, Anda dapat menyederhanakan pengelolaan multi-cluster dengan menambahkan cluster ke fleet: pengelompokan logis cluster Kubernetes. Pembuatan fleet akan membantu organisasi Anda meningkatkan pengelolaan dari tiap-tiap cluster ke seluruh grup cluster, dan memungkinkan Anda menggunakan fitur yang didukung fleet seperti Multi Cluster Ingress, Config Sync, dan Policy Controller.
Anda dapat menambahkan cluster GKE ke fleet dengan menggunakan Google Cloud konsol, gcloud CLI, atau secara deklaratif menggunakan Terraform atau Config Connector.
Anda dapat mempelajari lebih lanjut cara kerja fleet di Pengelolaan fleet, dan tentang membuat fleet di Membuat fleet untuk menyederhanakan pengelolaan multi-cluster.
Langkah berikutnya
- Pelajari cara kerja cluster.
- Pelajari cara menambahkan dan mengelola kumpulan node cluster.
- Praktik terbaik untuk mengupgrade cluster.