Dokumen ini menunjukkan cara membuat cluster regional Standard untuk meningkatkan ketersediaan bidang kontrol dan workload cluster selama upgrade cluster, pemeliharaan otomatis, atau gangguan zona.
Cluster Autopilot GKE selalu bersifat regional.
Ringkasan
Saat Anda membuat cluster regional, bukan cluster zona, bidang kontrol cluster direplikasi di beberapa zona dalam region tertentu. Untuk node pool di cluster regional, Anda dapat menentukan secara manual zona untuk menjalankan node pool tersebut, atau Anda dapat menggunakan konfigurasi default, yang mereplikasi setiap node pool di tiga zona bidang kontrol region. Semua zona harus berada dalam region yang sama dengan bidang kontrol cluster.
Cluster regional mereplikasi resource di beberapa zona dan menggunakan kuota tambahan.
Untuk mempelajari berbagai jenis ketersediaan cluster, lihat Tentang pilihan konfigurasi cluster.
Petunjuk di bagian berikut menunjukkan cara:
- Membuat cluster regional dengan node pool satu zona.
- Membuat cluster regional dengan node pool multi-zona.
Setelah membuat cluster regional, Anda tidak dapat mengonversinya menjadi cluster zona.
Informasi minimum yang perlu Anda tentukan saat membuat cluster regional baru adalah nama, project (biasanya project saat ini), dan region (biasanya lokasi default untuk alat command line), menggunakan setelan default untuk semua nilai lainnya. Namun, ada lebih banyak kemungkinan setelan konfigurasi, yang hanya sebagian dijelaskan dalam panduan ini dan sebagian tidak dapat diubah setelah pembuatan cluster. Pastikan Anda memahami setelan 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 ada di panduan referensi gcloud container clusters create
dan Terraform google_container_cluster
.
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
lakukan inisialisasi
gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan
gcloud components update
.
- Pastikan Anda memiliki izin yang tepat untuk membuat cluster. Minimal, Anda harus menjadi Admin Cluster Kubernetes Engine.
- Jika ingin mendaftarkan cluster baru Anda ke fleet, pastikan Anda memiliki API dan izin yang diperlukan.
Menyiapkan akun layanan IAM untuk GKE
GKE menggunakan akun layanan IAM yang dilampirkan ke node Anda untuk
menjalankan tugas sistem seperti logging dan pemantauan. Setidaknya, akun layanan node ini
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 dibuat secara otomatis di project Anda, sebagai akun layanan node.
Untuk memberikan peran roles/container.defaultNodeServiceAccount
ke akun layanan default Compute Engine, selesaikan langkah-langkah berikut:
console
- Buka halaman Sambutan:
- Di kolom Project number, klik Copy to clipboard.
- Buka halaman IAM:
- Klik Berikan akses.
- Di kolom Akun utama baru, tentukan nilai berikut:
GantiPROJECT_NUMBER-compute@developer.gserviceaccount.com
PROJECT_NUMBER
dengan nomor project yang Anda salin. - Di menu Select a role, pilih peran Kubernetes Engine Default Node Service Account.
- Klik Simpan.
gcloud
- Temukan nomor project Google Cloud Anda:
gcloud projects describe PROJECT_ID \ --format="value(projectNumber)"
Ganti
PROJECT_ID
dengan project ID Anda.Outputnya mirip dengan hal berikut ini:
12345678901
- 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 regional dengan node pool satu zona
Petunjuk berikut menampilkan cara membuat cluster regional dengan node pool yang beroperasi di satu zona dalam region tersebut. Bidang kontrol cluster direplikasi ke beberapa zona dalam region yang ditentukan, tetapi node berada di satu zona, dan tidak direplikasi ke zona lain.
Anda dapat menggunakan gcloud CLI, konsol Google Cloud, atau Terraform untuk membuat cluster.
Jika Anda mengembangkan aplikasi GKE dengan Cloud Code untuk VS Code, coba membuat cluster dengan Cloud Code.
gcloud
Untuk membuat cluster regional dengan gcloud CLI, gunakan salah satu perintah berikut dan ganti variabel berikut:
CLUSTER_NAME
: nama cluster regional baru Anda.COMPUTE_REGION
: region untuk cluster Anda, sepertius-central1
.COMPUTE_ZONE
: zona untuk node pool Anda, sepertius-central1-a
. Zona harus berada di region yang sama dengan bidang kontrol cluster.CHANNEL
: jenis saluran rilis, yang dapat berupa salah satu darirapid
,regular
,stable
, atauNone
. Secara default, cluster terdaftar di saluran rilisregular
kecuali jika setidaknya salah satu flag berikut ditentukan:--cluster-version
,--release-channel
,--no-enable-autoupgrade
, dan--no-enable-autorepair
.VERSION
: versi yang ingin Anda tentukan untuk 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.
Menggunakan saluran rilis tertentu:
Untuk membuat cluster baru menggunakan saluran rilis tertentu, jalankan perintah berikut:
gcloud container clusters create CLUSTER_NAME \
--region COMPUTE_REGION \
--node-locations COMPUTE_ZONE \
--release-channel CHANNEL
Menggunakan versi tertentu:
Untuk membuat cluster baru menggunakan versi cluster tertentu, jalankan perintah berikut:
gcloud container clusters create CLUSTER_NAME \
--region COMPUTE_REGION \
--node-locations COMPUTE_ZONE \
--cluster-version VERSION
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
menetapkan saluran rilis ke None
:
gcloud container clusters create CLUSTER_NAME \
--region COMPUTE_REGION \
--node-locations COMPUTE_ZONE \
--release-channel None
Contoh
Perintah berikut membuat cluster regional yang terdaftar di saluran rilis regular
(default), dengan tiga node (default) di zona us-west1-c
:
gcloud container clusters create my-regional-cluster \
--region us-west1 \
--node-locations us-west1-c
Contoh
Perintah berikut membuat cluster regional yang terdaftar di saluran rilis regular
(default), dengan dua node yang terletak di zona us-west1-c
:
gcloud container clusters create my-regional-cluster \
--region us-west1 \
--node-locations us-west1-c \
--num-nodes 2
Konsol
Buka halaman Google Kubernetes Engine di konsol Google Cloud.
Klik add_box Create.
Di bagian Cluster basics, selesaikan langkah berikut:
- Masukkan Name untuk cluster Anda.
- Untuk Location type, pilih Regional, lalu pilih region untuk cluster Anda.
- Jika Anda ingin mengganti lokasi node default (misalnya untuk berjalan di satu zona), pilih kotak centang Specify default node locations, lalu pilih zona tempat Anda ingin menjalankan node pool.
Pilih saluran rilis. Secara opsional, Anda dapat memilih Tidak ada saluran dari menu drop-down, tetapi sebaiknya Anda meninjau 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.
Opsional: Tentukan versi kontrol plane dari menu drop-down Version.
Opsional (tersedia dengan GKE Enterprise): Jika ingin mendaftarkan cluster baru ke fleet, buka bagian Pendaftaran fleet, lalu ikuti petunjuk Konsol Google Cloud untuk Membuat dan mendaftarkan cluster baru guna menyelesaikan pendaftaran cluster Anda.
Dari panel navigasi, di bagian Node Pools, klik default-pool.
Di bagian Detail kumpulan node, selesaikan langkah berikut:
- Masukkan Nama untuk Kumpulan node default.
- Opsional: Pilih Node version.
- Masukkan Jumlah node yang akan dibuat di cluster. Anda harus memiliki kuota resource yang tersedia untuk node dan resource-nya (seperti rute firewall).
- Opsional: Anda dapat memilih untuk menonaktifkan upgrade otomatis node, tetapi sebaiknya Anda meninjau pertimbangan sebelum menonaktifkan upgrade otomatis node sebelum memilih opsi ini.
Dari panel navigasi, di bagian Node Pools, klik Nodes.
Dari menu drop-down Image type, pilih node image.
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.Dari menu drop-down Boot disk type, pilih disk type.
Masukkan Boot disk size.
Opsional: Dari panel navigasi, di bagian Node Pools, klik Security.
- Secara opsional, tentukan akun layanan IAM kustom untuk node Anda:
- Di halaman Setelan lanjutan, luaskan bagian Keamanan.
- 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.
Klik Create.
Terraform
Untuk membuat cluster regional dengan node pool satu zona menggunakan Terraform, lihat contoh berikut:
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.
Membuat cluster regional dengan node pool multi-zona
Petunjuk berikut menunjukkan cara membuat cluster regional dengan node pool multi-zona, yang merupakan penyiapan default. Bidang kontrol dan node cluster direplikasi ke beberapa zona dalam region yang ditentukan.
Anda dapat menggunakan gcloud CLI, konsol Google Cloud, atau Terraform untuk membuat cluster.
Jika Anda mengembangkan aplikasi GKE dengan Visual Studio Code, coba membuat cluster dengan Cloud Code.
gcloud
Untuk membuat cluster regional dengan gcloud CLI, gunakan salah satu perintah berikut dan ganti variabel berikut:
CLUSTER_NAME
: nama cluster regional baru Anda.COMPUTE_REGION
: region untuk cluster Anda, sepertius-central1
.CHANNEL
: jenis saluran rilis, yang dapat berupa salah satu darirapid
,regular
,stable
, atauNone
. Secara default, cluster akan didaftarkan dalam saluran rilisregular
jika flag berikut tidak ditentukan:--cluster-version
,--release-channel
,--no-enable-autoupgrade
, dan--no-enable-autorepair
.VERSION
: versi yang ingin Anda tentukan untuk cluster.- Untuk region yang memiliki lebih dari tiga zona atau jika zona yang dipilih lebih sedikit, Anda dapat menggunakan flag
--node-locations
opsional untuk mengganti zona default tempat node direplikasi.
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.
Menggunakan saluran rilis tertentu:
Untuk membuat cluster baru menggunakan saluran rilis tertentu, jalankan perintah berikut:
gcloud container clusters create CLUSTER_NAME \
--region COMPUTE_REGION \
--release-channel CHANNEL
Menggunakan versi tertentu:
Untuk membuat cluster baru menggunakan versi cluster tertentu, jalankan perintah berikut:
gcloud container clusters create CLUSTER_NAME \
--region COMPUTE_REGION \
--cluster-version VERSION
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
menetapkan saluran rilis ke None
:
gcloud container clusters create CLUSTER_NAME \
--region COMPUTE_REGION \
--release-channel None
Contoh
Perintah berikut membuat cluster regional yang terdaftar di saluran rilis regular
, dengan sembilan node di us-west1
(tiga zona dengan tiga node masing-masing, secara default):
gcloud container clusters create my-regional-cluster --region us-west1
Contoh
Perintah berikut membuat cluster regional yang terdaftar di saluran rilis regular
, dengan enam node (tiga zona dengan dua node masing-masing, ditentukan oleh --num-nodes
):
gcloud container clusters create my-regional-cluster \
--region us-west1 \
--num-nodes 2
Contoh
Perintah berikut membuat cluster regional yang terdaftar di saluran rilis regular
, dengan enam node di dua zona (dua zona, ditentukan oleh --node-locations
, dengan tiga node masing-masing):
gcloud container clusters create my-regional-cluster \
--region us-central1 \
--node-locations us-central1-b,us-central1-c
Konsol
Buka halaman Google Kubernetes Engine di konsol Google Cloud.
Klik add_box Create.
Di bagian Cluster basics, selesaikan langkah berikut:
- Masukkan Name untuk cluster Anda.
- Untuk Location type, pilih Regional, lalu pilih region untuk cluster Anda.
- Jika Anda ingin mengganti lokasi node default (misalnya untuk berjalan di satu zona), pilih kotak centang Specify default node locations, lalu pilih zona tempat Anda ingin menjalankan node pool.
Pilih saluran rilis. Secara opsional, Anda dapat memilih Tidak ada saluran dari menu drop-down, tetapi sebaiknya Anda meninjau 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.
Opsional: Tentukan versi kontrol plane dari menu drop-down Version.
Opsional (tersedia dengan GKE Enterprise): Jika ingin mendaftarkan cluster baru ke fleet, buka bagian Pendaftaran fleet, lalu ikuti petunjuk Konsol Google Cloud untuk Membuat dan mendaftarkan cluster baru guna menyelesaikan pendaftaran cluster Anda.
Dari panel navigasi, di bagian Node Pools, klik default-pool.
Di bagian Detail kumpulan node, selesaikan langkah berikut:
- Masukkan Nama untuk Kumpulan node default.
- Opsional: Pilih Node version.
- Masukkan Jumlah node yang akan dibuat di cluster. Anda harus memiliki kuota resource yang tersedia untuk node dan resource-nya (seperti rute firewall).
- Opsional: Anda dapat memilih untuk menonaktifkan upgrade otomatis node, tetapi sebaiknya Anda meninjau pertimbangan sebelum menonaktifkan upgrade otomatis node sebelum memilih opsi ini.
Dari panel navigasi, di bagian Node Pools, klik Nodes.
Dari menu drop-down Image type, pilih node image.
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.Dari menu drop-down Boot disk type, pilih disk type.
Masukkan Boot disk size.
Opsional: Dari panel navigasi, di bagian Node Pools, klik Security.
- Secara opsional, tentukan akun layanan IAM kustom untuk node Anda:
- Di halaman Setelan lanjutan, luaskan bagian Keamanan.
- 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.
Klik Create.
Terraform
Untuk membuat cluster regional dengan node pool multi-zona menggunakan Terraform, lihat contoh berikut:
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.
Langkah berikutnya
- Pelajari lebih lanjut jenis cluster yang dapat Anda buat.
- Membuat cluster zona.