Membuat cluster zona


Dokumen ini menunjukkan cara membuat cluster zona Standar dengan fitur default yang diaktifkan di Google Kubernetes Engine (GKE). Cluster zona memiliki satu bidang kontrol dalam satu zona. Bergantung pada persyaratan ketersediaan, Anda dapat memilih untuk mendistribusikan node untuk cluster zona di satu zona atau di beberapa zona.

Untuk mempelajari berbagai jenis ketersediaan cluster, lihat Tentang pilihan konfigurasi cluster.

Zona tunggal versus multi-zona

Cluster zona tunggal memiliki satu bidang kontrol yang berjalan di satu zona. Bidang kontrol ini mengelola workload pada node yang berjalan di zona yang sama. Jika Anda menjalankan workload di satu zona, workload ini tidak akan tersedia saat terjadi pemadaman layanan zona tertentu.

Node cluster multi-zona berjalan di beberapa zona, tetapi hanya memiliki satu replika bidang kontrol. Jika Anda menjalankan workload di beberapa zona dan terjadi pemadaman zona, workload akan terganggu di zona tersebut, tetapi tetap tersedia di zona lainnya.

Jika Anda memerlukan ketersediaan yang lebih tinggi untuk bidang kontrol, pertimbangkan untuk membuat cluster regional. Dalam cluster regional, bidang kontrol direplikasi di beberapa zona dalam satu region.

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.
  • Cluster multi-zona menggunakan lebih banyak resource daripada cluster zona tunggal. Jika Anda membuat cluster multi-zona, pastikan Anda memiliki quotas yang mencukupi.
  • Pastikan Anda memiliki izin yang tepat untuk membuat cluster. Minimal, Anda harus menjadi Admin Cluster Kubernetes Engine.
  • Jika Anda ingin mendaftarkan cluster baru ke fleet (hanya akses terbatas), pastikan Anda memiliki API dan izin yang diperlukan.

Membuat cluster zona

Anda dapat membuat cluster zona menggunakan gcloud CLI, Google Cloud Console, atau Terraform.

Jika Anda mengembangkan aplikasi GKE dengan Cloud Code untuk VS Code, coba buat cluster dengan Cloud Code.

gcloud

Untuk membuat cluster zona dengan gcloud CLI, gunakan salah satu perintah berikut.

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster baru.
  • CHANNEL: jenis saluran rilis, yang dapat berupa salah satu dari rapid, regular, stable, atau None. Secara default, cluster terdaftar di saluran rilis regular kecuali jika setidaknya salah satu flag berikut ditentukan: --cluster-version, --release-channel, --no-enable-autoupgrade, dan --no-enable-autorepair.
  • COMPUTE_ZONE: zona komputasi untuk bidang kontrol cluster.
  • VERSION: versi yang ingin Anda tentukan untuk cluster.
  • COMPUTE_ZONE,COMPUTE_ZONE1,[...]: 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 --zone. Untuk cluster zona, --node-locations harus berisi zona utama cluster.

Dalam perintah berikut, Anda memiliki pilihan untuk menggunakan flag --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com untuk menentukan akun layanan IAM berbeda yang digunakan node dalam node pool pertama cluster Anda, alih-alih layanan default Compute Engine. Flag ini bersifat opsional, tetapi sebaiknya Anda membuat dan menggunakan akun layanan dengan hak istimewa minimal agar node Anda tidak memiliki hak istimewa lain lebih dari yang diperlukan.

Menggunakan saluran rilis tertentu:

Untuk membuat cluster baru menggunakan saluran rilis tertentu, jalankan perintah berikut:

gcloud container clusters create CLUSTER_NAME \
    --release-channel CHANNEL \
    --zone COMPUTE_ZONE \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Menggunakan versi tertentu:

Untuk membuat cluster baru menggunakan versi cluster tertentu, jalankan perintah berikut:

gcloud container clusters create CLUSTER_NAME \
    --cluster-version VERSION \
    --zone COMPUTE_ZONE \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1
[

Menggunakan versi default untuk cluster yang tidak terdaftar di saluran rilis:

Untuk membuat cluster baru menggunakan versi default untuk cluster yang tidak terdaftar di saluran rilis, Anda tidak perlu menentukan versi cluster, tetapi Anda harus menetapkan saluran rilis ke None:

gcloud container clusters create CLUSTER_NAME \
    --release-channel None \
    --zone COMPUTE_ZONE \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Contoh

Perintah berikut akan membuat cluster multi-zona bernama example-cluster, dengan bidang kontrol cluster di zona us-central-a, dan ada tiga lokasi node. Cluster terdaftar di saluran rilis regular.

Jika flag --num-nodes dihapus, jumlah default node per zona yang dibuat oleh cluster adalah tiga. Karena tiga zona telah ditentukan, perintah ini akan membuat cluster node dengan tiga node masing-masing di us-central1-a, us-central1-b, dan us-central1-c.

gcloud container clusters create example-cluster \
    --zone us-central1-a \
    --node-locations us-central1-a,us-central1-b,us-central1-c

Konsol

Untuk membuat cluster zona dengan Konsol Google Cloud, lakukan tugas berikut:

  1. Buka halaman Google Kubernetes Engine di Konsol Google Cloud.

    Buka Google Kubernetes Engine

  2. Klik Create.

  3. Di bagian Cluster basics, selesaikan langkah berikut:

    1. Masukkan Name untuk cluster Anda.
    2. Untuk Location type, pilih Zonal, lalu pilih zone untuk cluster Anda.
    3. Jika Anda membuat cluster multi-zona, pilih kotak centang Specify default node locations, lalu pilih zona tambahan tempat Anda ingin menjalankan kumpulan node.

    4. Pilih saluran rilis. Anda dapat memilih No channel dari menu drop-down. Namun, sebaiknya Anda meninjau kapan sebaiknya tidak mendaftarkan cluster di saluran rilis sebelum memilih opsi ini. GKE secara otomatis mengupgrade cluster yang tidak berada di saluran rilis dengan versi dari saluran Stabil.

    5. Opsional: Tentukan versi bidang kontrol dari menu drop-down Versi.

  4. Opsional (tersedia di GKE Enterprise): Jika Anda ingin mendaftarkan cluster baru ke sebuah fleet, buka bagian Pendaftaran perangkat, lalu ikuti petunjuk Konsol Google Cloud untuk Membuat dan mendaftarkan cluster baru guna menyelesaikan pendaftaran cluster Anda.

  5. Dari panel navigasi, di bagian Node Pools, klik default-pool.

  6. Di bagian Detail kumpulan node, selesaikan langkah berikut:

    1. Masukkan Nama untuk Kumpulan node default.
    2. Opsional: Pilih Versi node.
    3. Masukkan Jumlah node yang akan dibuat di cluster. Anda harus memiliki kuota resource yang tersedia untuk node dan resource-nya (seperti rute firewall).
    4. Opsional: Anda dapat memilih untuk menonaktifkan upgrade otomatis node, tetapi sebaiknya tinjau pertimbangan sebelum menonaktifkan upgrade otomatis node sebelum memilih opsi ini.
  7. Dari panel navigasi, di bagian Node Pools, klik Nodes.

  8. Dari menu drop-down Image type, pilih image node.

  9. Pilih Machine configuration default yang akan digunakan untuk instance. Setiap jenis mesin ditagih secara berbeda. Jenis mesin default-nya adalah e2-medium. Untuk mengetahui informasi harga jenis mesin, lihat lembar harga jenis mesin.

  10. Dari menu drop-down Boot disk type, pilih disk type.

  11. Masukkan Boot disk size.

  12. Opsional: Dari panel navigasi, di bagian Node Pools, klik Security.

  13. Opsional: Dari menu drop-down Service account, pilih akun layanan Identity and Access Management (IAM) untuk aplikasi Anda yang akan digunakan saat memanggil Google Cloud API. Sebaiknya gunakan akun layanan dengan hak istimewa minimal, bukan akun layanan default, sehingga node Anda tidak memiliki hak istimewa lain lebih dari yang diperlukan.

  14. Klik Create.

Terraform

Untuk membuat cluster zona dengan kumpulan node zona tunggal menggunakan Terraform, lihat contoh berikut:

resource "google_container_cluster" "default" {
  name               = "gke-standard-zonal-single-zone"
  location           = "us-central1-a"
  initial_node_count = 1

  # Set `deletion_protection` to `true` will ensure that one cannot
  # accidentally delete this instance by use of Terraform.
  deletion_protection = false
}

Untuk membuat cluster zona dengan kumpulan node multi-zona menggunakan Terraform, lihat contoh berikut:

resource "google_container_cluster" "default" {
  name               = "gke-standard-regional-multi-zone"
  location           = "us-central1"
  node_locations     = ["us-central1-b", "us-central1-c"]
  initial_node_count = 2

  # Set `deletion_protection` to `true` will ensure that one cannot
  # accidentally delete this instance by use of Terraform.
  deletion_protection = false
}

Untuk mempelajari lebih lanjut cara menggunakan Terraform, baca bagian Dukungan Terraform untuk GKE.

Berinteraksi dengan cluster menggunakan kubectl

Setelah membuat cluster, Anda perlu mengonfigurasi kubectl sebelum dapat berinteraksi dengan cluster dari command line.

Template cluster

GKE sebelumnya mendukung template untuk cluster. Template tersebut telah dihapus dari Konsol Google Cloud, tetapi masih dapat diakses dari link berikut:

Langkah selanjutnya

Cobalah sendiri

Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa GKE dalam skenario dunia nyata. Pelanggan baru mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.

Coba GKE gratis