Membuat cluster zona

Halaman ini menunjukkan cara membuat cluster zona Standar , dengan fitur default yang diaktifkan, di Google Kubernetes Engine (GKE). Cluster zona memiliki satu instance 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.

Praktik terbaik: Gunakan cluster regional untuk menjalankan workload produksi karena cluster regional menawarkan ketersediaan yang lebih tinggi daripada cluster zona. Dalam cluster regional, bidang kontrol direplikasi di beberapa zona dalam satu region.

Halaman ini ditujukan untuk Operator, Arsitek cloud, dan Developer, yang perlu membuat dan mengonfigurasi cluster, serta men-deploy workload di GKE. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang kami referensikan dalam Google Cloud konten, lihat Peran dan tugas pengguna GKE umum.

Sebelum membaca halaman ini, pastikan Anda memahami pilihan konfigurasi 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 menjalankan perintah dalam dokumen ini.

Menyiapkan akun layanan IAM untuk GKE

GKE menggunakan akun layanan IAM yang terlampir ke node Anda untuk menjalankan tugas sistem seperti logging dan pemantauan. Minimal, akun layanan node harus memiliki peran Akun Layanan Node Default Kubernetes Engine (roles/container.defaultNodeServiceAccount) di project Anda. Secara default, GKE menggunakan akun layanan default Compute Engine, yang otomatis dibuat di project Anda, sebagai akun layanan node.

Untuk memberikan peran roles/container.defaultNodeServiceAccount ke akun layanan default Compute Engine, selesaikan langkah-langkah berikut:

Konsol

  1. Buka halaman Welcome:

    Buka Selamat Datang

  2. Di kolom Project number, klik Copy to clipboard.
  3. Buka halaman IAM:

    Buka IAM

  4. Klik Grant access.
  5. Di kolom New principals, tentukan nilai berikut:
    PROJECT_NUMBER-compute@developer.gserviceaccount.com
    Ganti PROJECT_NUMBER dengan nomor project yang Anda salin.
  6. Di menu Select a role, pilih peran Kubernetes Engine Default Node Service Account.
  7. Klik Save.

gcloud

  1. Temukan nomor projectAnda: Google Cloud
    gcloud projects describe PROJECT_ID \
        --format="value(projectNumber)"

    Ganti PROJECT_ID dengan project ID Anda.

    Outputnya mirip dengan hal berikut ini:

    12345678901
    
  2. Berikan peran roles/container.defaultNodeServiceAccount ke akun layanan default Compute Engine:
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" \
        --role="roles/container.defaultNodeServiceAccount"

    Ganti PROJECT_NUMBER dengan nomor project dari langkah sebelumnya.

Membuat cluster zona

Informasi minimum yang perlu Anda tentukan saat membuat cluster zona baru adalah nama, project (biasanya project saat ini), dan zona (biasanya lokasi default untuk alat command line), menggunakan setelan default untuk semua nilai lainnya. Namun, ada lebih banyak setelan konfigurasi yang mungkin, yang hanya beberapa di antaranya dijelaskan di bagian ini dan beberapa di antaranya tidak dapat diubah setelah pembuatan cluster. Pastikan Anda memahami setelan mana yang tidak dapat diubah setelah pembuatan cluster, dan Anda memilih setelan yang tepat saat membuat cluster jika tidak ingin membuatnya lagi.

Anda dapat melihat ringkasan opsi konfigurasi cluster di Tentang pilihan konfigurasi cluster, dan daftar lengkap opsi yang mungkin di gcloud container clusters create dan Terraform google_container_cluster panduan referensi.

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

Jika Anda mengembangkan aplikasi GKE dengan Cloud Code untuk VS Code, coba membuat 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.
  • CONTROL_PLANE_LOCATION: zona Compute Engine dari bidang kontrol cluster Anda.
  • 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 --location. Untuk cluster zona, --node-locations harus berisi zona utama cluster.

Sebaiknya tentukan akun layanan IAM dengan hak istimewa minimal yang dapat digunakan node Anda, bukan akun layanan default Compute Engine. Untuk mempelajari cara membuat akun layanan dengan hak istimewa minimal, lihat Menggunakan akun layanan dengan hak istimewa terendah.

Untuk menentukan akun layanan kustom di gcloud CLI, tambahkan flag berikut ke perintah Anda:

--service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

Ganti SERVICE_ACCOUNT_NAME dengan nama akun layanan dengan hak istimewa minimal Anda.

Menggunakan saluran rilis tertentu:

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

gcloud container clusters create CLUSTER_NAME \
    --release-channel CHANNEL \
    --location CONTROL_PLANE_LOCATION \
    --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 \
    --location CONTROL_PLANE_LOCATION \
    --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 harus menyetel saluran rilis ke None:

gcloud container clusters create CLUSTER_NAME \
    --release-channel None \
    --location CONTROL_PLANE_LOCATION \
    --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 \
    --location us-central1-a \
    --node-locations us-central1-a,us-central1-b,us-central1-c

Konsol

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

  1. Di Google Cloud konsol, buka halaman Create a Kubernetes cluster.

    Buka Buat cluster Kubernetes

  2. Di bagian Cluster basics, selesaikan langkah-langkah berikut:

    1. Masukkan Name untuk cluster Anda.
    2. Untuk Location type, pilih Zonal, lalu pilih zona 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 daftar drop-down secara opsional, tetapi sebaiknya tinjau perbandingan antara cluster yang terdaftar dan tidak terdaftar 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 daftar drop-down Version.

  3. Opsional: Konfigurasikan setelan lain untuk cluster baru Anda.

  4. Opsional: Jika ingin mendaftarkan cluster baru ke fleet, buka bagian Fleet registration, lalu ikuti petunjuk Google Cloud konsol 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 Name untuk Kumpulan node default.
    2. Opsional: Pilih Node version.
    3. Masukkan Number of nodes 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 kami sarankan Anda meninjau pertimbangannya 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. Secara opsional, tentukan akun layanan IAM kustom untuk node Anda:
    1. Di halaman Advanced settings, luaskan bagian Security.
    2. Di menu Service account, pilih akun layanan pilihan Anda.

    Sebaiknya tentukan akun layanan IAM dengan hak istimewa minimal yang dapat digunakan node Anda, bukan akun layanan default Compute Engine. Untuk mempelajari cara membuat akun layanan dengan hak istimewa minimal, lihat Menggunakan akun layanan dengan hak istimewa terendah.

  14. Klik Create.

Terraform

Untuk membuat cluster zona dengan node pool satu zona menggunakan Terraform, lihat contoh berikut:

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

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

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

Untuk mempelajari lebih lanjut cara menggunakan Terraform, lihat 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 Google Cloud konsol, tetapi masih dapat diakses dari link berikut:

Langkah berikutnya

Coba sendiri

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

Coba GKE gratis