Halaman ini menjelaskan kolom dalam file konfigurasi cluster pengguna GKE pada VMware.
Membuat template untuk file konfigurasi Anda
Jika Anda menggunakan gkeadm
untuk membuat workstation admin, gkeadm
akan membuat
template untuk file konfigurasi cluster pengguna Anda. Dan gkeadm
telah mengisi beberapa {i>field<i} untuk Anda.
Jika gkeadm
tidak digunakan untuk membuat workstation admin, Anda dapat menggunakan
gkectl
untuk membuat template file konfigurasi cluster pengguna.
Untuk membuat template bagi file konfigurasi cluster pengguna Anda:
gkectl create-config cluster --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION
Ganti kode berikut:
OUTPUT_FILENAME
: jalur pilihan Anda untuk
template yang dihasilkan. Jika Anda menghapus flag ini, gkectl
akan memberi nama file
user-cluster.yaml
dan menempatkannya di direktori saat ini.
VERSION
: nomor versi yang diinginkan. Contoh: gkectl create-config cluster --gke-on-prem-version=1.10.0-gke.8
.
Template
Mengisi file konfigurasi Anda
Di file konfigurasi Anda, masukkan nilai kolom seperti yang dijelaskan di bagian berikut.
name
String
yang diperlukan
Nama pilihan Anda untuk cluster pengguna. Namanya harus:
- berisi maksimal 40 karakter
- hanya berisi karakter alfanumerik huruf kecil atau tanda hubung (
-
) - diawali dengan karakter alfabet
- diakhiri dengan karakter alfanumerik
Contoh:
name: "my-user-cluster"
gkeOnPremVersion
Wajib
Dapat diubah
String
GKE pada versi VMware untuk cluster pengguna Anda.
Contoh:
gkeOnPremVersion: "1.14.0-gke.1"
preparedSecrets.namespace
Jika Anda ingin menggunakan kredensial yang telah disiapkan, isi kolom ini. Jika tidak, hapus kolom ini atau biarkan sebagai komentar.
Opsional
Tidak dapat diubah
String
Nilai yang mungkin: String yang diawali dengan "gke-onprem-secrets-"
Nama namespace Kubernetes di cluster admin tempat Secret yang telah disiapkan disimpan untuk cluster pengguna ini.
Contoh:
preparedSecrets: namespace: "gke-onprem-secrets-alice"
enableControlplaneV2
Opsional
Boolean
yang tidak dapat diubah
Terisi otomatis: true
Default: true
Jika Anda ingin membuat cluster pengguna yang mengaktifkan Controlplane V2, tetapkan nilainya ke true
. Jika tidak, tetapkan ke false
.
Contoh:
enableControlplaneV2: true
vCenter
Bagian ini menyimpan informasi tentang lingkungan vSphere dan koneksi Anda ke Server vCenter.
Jika Anda ingin kolom di bagian ini sama dengan yang Anda tentukan untuk cluster admin, hapus kolom tersebut atau biarkan sebagai komentar.
Jika Anda ingin kolom yang berbeda dari yang Anda tentukan untuk cluster
admin, isi di sini. Setiap kolom yang Anda isi di sini di bagian vCenter
akan menggantikan kolom terkait di file konfigurasi cluster admin.
vCenter.address
Opsional
Tidak dapat diubah
String
Default: Mewarisi dari cluster admin
Alamat IP atau nama host instance Server vCenter yang ingin Anda gunakan untuk cluster pengguna ini.
Untuk mengetahui informasi selengkapnya, lihat Menemukan alamat server vCenter Anda.
Jika Anda menentukan nilai yang berbeda dari instance Server vCenter
yang digunakan oleh cluster admin, Controlplane V2
harus diaktifkan, dan Anda harus memberikan nilai untuk
network.vCenter.networkName
dan semua
kolom yang wajib diisi di bagian vCenter
.
Contoh:
vCenter: address: "203.0.113.101"
vCenter: address: "my-vcenter-server-2.my-domain.example"
vCenter.datacenter
Opsional
Tidak dapat diubah
String
Default: Mewarisi dari cluster admin
Jalur relatif pusat data vSphere.
Jika Anda menentukan nilai untuk kolom ini, Anda juga harus menentukan:
vCenter.networkName
- Berupa
vCenter.datastore
atauvCenter.storagePolicyName
- Berupa
vCenter.cluster
atauvCenter.resourcePool
Nilai yang Anda tentukan akan relatif terhadap folder root yang bernama /
.
Jika pusat data Anda berada di folder root, nilainya adalah nama pusat data tersebut.
Contoh:
vCenter: datacenter: "my-uc-data-center"
Jika tidak, nilai adalah jalur relatif yang mencakup satu atau beberapa folder beserta nama pusat data.
Contoh:
vCenter: datacenter: "data-centers/data-center-2"
vCenter.cluster
Opsional
Tidak dapat diubah
String
Default: Mewarisi dari cluster admin
Jalur relatif dari cluster vSphere yang mewakili host ESXi tempat VM cluster pengguna Anda akan dijalankan. Cluster vSphere ini merepresentasikan subset host ESXi fisik di pusat data vCenter Anda.
Jika Anda menentukan nilai untuk kolom ini, Anda juga harus menentukan:
vCenter.networkName
vCenter.datacenter
- Berupa
vCenter.datastore
atauvCenter.storagePolicyName
Nilai yang Anda tentukan bersifat relatif terhadap /.../DATA_CENTER/vm/
.
Jika cluster vSphere Anda berada di folder /.../DATA_CENTER/vm/
, nilainya adalah nama cluster vSphere
Contoh:
vCenter: cluster: "my-uc-vsphere-cluster"
Jika tidak, nilainya adalah jalur relatif yang mencakup satu atau beberapa folder beserta nama cluster vSphere.
Contoh:
vCenter: cluster: "clusters/vsphere-cluster-2"
vCenter.resourcePool
Opsional
Tidak dapat diubah
String
Default: Mewarisi dari cluster admin
Kumpulan resource vCenter untuk VM cluster pengguna Anda.
Jika Anda ingin menggunakan kumpulan resource default, tetapkan ini ke
VSPHERE_CLUSTER/Resources
.
Contoh:
vCenter: resourcePool: "my-uc-vsphere-cluster/Resources"
Nilai yang Anda tentukan bersifat relatif terhadap /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
Jika kumpulan resource Anda adalah turunan langsung dari
/.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
,
nilainya adalah nama kumpulan resource tersebut.
Contoh:
vCenter: resourcePool: "my-uc-resource-pool"
Jika tidak, nilainya adalah jalur relatif yang memiliki dua atau beberapa kumpulan resource.
Contoh:
vCenter: resourcePool: "uc-resource-pool-1/uc-resource-pool-2"
vCenter.datastore
Opsional
Tidak dapat diubah
String
Default: Mewarisi dari cluster admin
Nama datastore vSphere untuk cluster pengguna Anda.
Nilai yang Anda tentukan harus berupa nama, bukan jalur. Jangan sertakan folder apa pun di dalam nilai.
Contoh:
vCenter: datastore: "my-uc-datastore"
Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk
vCenter.storagePolicyName
.
vCenter.storagePolicyName
Opsional
String
Nama kebijakan penyimpanan VM untuk node cluster.
Anda juga dapat menentukan kebijakan penyimpanan VM untuk node dalam kumpulan node tertentu. Namun, kebijakan yang ditentukan di sini berlaku untuk setiap kumpulan node yang tidak memiliki kebijakannya sendiri.
Untuk informasi selengkapnya, lihat Mengonfigurasi kebijakan penyimpanan.
Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk
vCenter.datastore
.
vCenter.caCertPath
Opsional
Dapat diubah
String
Default: Mewarisi dari cluster admin
Jalur sertifikat CA untuk server vCenter Anda. Untuk informasi selengkapnya, lihat Mendapatkan sertifikat CA vCenter.
Contoh:
vCenter: caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert-2.pem"
Untuk informasi tentang cara memperbarui kolom ini, lihat Memperbarui referensi sertifikat vCenter.
vCenter.credentials.fileRef.path
Opsional
Dapat diubah
String
Default: Mewarisi dari cluster admin
Jika Anda memberikan nilai untuk preparedSecrets.namespace, jangan berikan nilai untuk kolom ini. Sebagai gantinya, berikan nilai untuk vCenter.credentials.secretRef.version.
Jalur file konfigurasi kredensial yang menyimpan nama pengguna dan sandi akun pengguna vCenter Anda. Akun pengguna harus memiliki peran Administrator atau hak istimewa yang setara. Lihat persyaratan vSphere.
Anda dapat menggunakan gkectl update credentials
untuk memperbarui kolom ini di cluster
yang ada. Untuk mengetahui informasi selengkapnya, lihat
Merotasi kunci akun layanan.
Untuk mengetahui informasi tentang cara memperbarui kredensial vCenter, lihat Memperbarui kredensial cluster.
Contoh:
vCenter: credentials: fileRef: path: "my-config-directory/my-credentials-2.yaml"
vCenter.credentials.fileRef.entry
Opsional
Dapat diubah
String
Default: Mewarisi dari cluster admin
Nama blok kredensial, di file konfigurasi kredensial, yang berisi nama pengguna dan sandi akun pengguna vCenter Anda.
Contoh:
vCenter: credentials: fileRef: entry: "vcenter-credentials-2"
vCenter.credentials.secretRef.version
Wajib jika Anda memberikan nilai untuk
preparedSecrets.namespace
String
Nilai yang mungkin: String bilangan bulat atau "latest"
Nilai default: "latest"
Jika Anda memberikan nilai untuk preparedSecrets.namespace, isi kolom ini. Jika tidak, hapus kolom ini atau biarkan sebagai komentar.
Versi Secret yang disiapkan di cluster admin yang menyimpan nama pengguna dan sandi untuk instance Server vCenter yang ingin Anda gunakan untuk cluster pengguna ini.
Contoh:
vCenter: credentials: secretRef: version: "1"
vCenter.folder
Opsional
Tidak dapat diubah
String
Default: Mewarisi dari cluster admin
Jalur relatif folder vSphere yang telah Anda buat. Folder ini akan menyimpan VM cluster pengguna Anda.
Jika Anda tidak menentukan nilai, VM cluster pengguna Anda akan ditempatkan di /.../DATA_CENTER/vm/
.
Jika Anda menentukan nilai, nilai tersebut akan relatif terhadap /.../DATA_CENTER/vm/
.
Nilainya dapat berupa nama folder.
Contoh:
vCenter: folder: "my-uc-folder"
Atau, nilainya dapat berupa jalur relatif yang mencakup lebih dari satu folder.
Contoh:
vCenter: folder: "folders/folder-2"
componentAccessServiceAccountKeyPath
Opsional
Dapat diubah
String
Default: Mewarisi dari cluster admin
Jalur file kunci JSON untuk akun layanan akses komponen Anda.
Contoh:
componentAccessServiceAccountKeyPath: "my-key-folder/uc-access-key.json"
componentAccessServiceAccountKey.secretRef.version
Opsional
Dapat diubah
String
Nilai yang mungkin: String bilangan bulat atau "terbaru"
Nilai default: "latest"
Versi Secret yang disiapkan di cluster admin yang menyimpan kunci JSON untuk akun layanan akses komponen Anda.
Contoh:
componentAccessServiceAccountKey: secretRef: version: "1"
privateRegistry
Isi bagian ini hanya jika cluster admin Anda menggunakan registry pribadi dan Anda ingin cluster pengguna menggunakan registry pribadi yang berbeda. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
Jika Anda ingin menerapkan beberapa setelan yang berbeda dari setelan cluster admin:
Nama pengguna, sandi, sertifikat yang berbeda
(Hanya tersedia untuk Control Plane V2) Alamat registry pribadi yang berbeda
Isi kolom privateRegistry
di sini. Setelan baru akan diterapkan selama pembuatan dan update cluster.
privateRegistry.address
Diperlukan untuk registry pribadi
Tidak dapat diubah
String
Default: Mewarisi dari cluster admin
Alamat IP atau FQDN (Fully Qualified Domain Name) mesin yang menjalankan registry Docker pribadi Anda.
Contoh:
privateRegistry: address: "203.0.113.10"
privateRegistry: address: "fqdn.example.com"
privateRegistry.credentials.fileRef.path
Diperlukan untuk registry pribadi
Dapat diubah
String
Default: Mewarisi dari cluster admin
Jika Anda berencana menggunakan secret yang sudah disiapkan untuk registry pribadi, jangan berikan nilai untuk kolom ini. Sebagai gantinya, berikan nilai untuk privateRegistry.credentials.secretRef.version.
Jalur file konfigurasi kredensial yang menyimpan nama pengguna dan sandi akun yang dapat digunakan GKE di VMware untuk mengakses registry Docker pribadi Anda.
Contoh:
privateRegistry: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
privateRegistry.credentials.fileRef.entry
Diperlukan untuk registry pribadi
Dapat diubah
String
Default: Mewarisi dari cluster admin
Nama blok kredensial, di file konfigurasi kredensial, yang berisi nama pengguna dan sandi akun registry Docker pribadi Anda.
privateRegistry: credentials: fileRef: entry: "private-registry-creds"
privateRegistry.credentials.secretRef.version
Wajib jika Anda ingin menggunakan secret yang sudah disiapkan untuk registry pribadi
String
Nilai yang mungkin: String bilangan bulat atau "latest"
Nilai default: "latest"
Jika Anda memberikan nilai untuk preparedSecrets.namespace dan ingin menggunakan secret yang sudah disiapkan untuk registry pribadi, isi kolom ini. Jika tidak, hapus kolom ini atau biarkan kolomnya sebagai komentar.
Versi Secret yang disiapkan di cluster admin yang menyimpan nama pengguna dan sandi untuk instance Server vCenter yang ingin Anda gunakan untuk cluster pengguna ini.
Contoh:
privateRegistry: credentials: secretRef: version: "1"
privateRegistry.caCertPath
Diperlukan untuk registry pribadi
Dapat diubah
String
Default: Mewarisi dari cluster admin
Saat Docker mengambil image dari registry pribadi Anda, registry harus membuktikan identitasnya dengan memberikan sertifikat. Sertifikat registry ditandatangani oleh certificate authority (CA). Docker menggunakan sertifikat CA untuk memvalidasi sertifikat registry.
Tetapkan kolom ini ke jalur sertifikat CA.
Contoh:
privateRegistry: caCertPath: "my-cert-folder/registry-ca.crt"
network
Bagian ini menyimpan informasi tentang jaringan cluster pengguna Anda.
network.hostConfig
Bagian ini menyimpan informasi tentang server NTP, server DNS, dan domain penelusuran DNS yang digunakan oleh VM yang merupakan node cluster Anda. Jika Anda menggunakan load balancer Seesaw, informasi ini juga berlaku untuk VM Seesaw.
Bagian ini wajib ada jika satu atau beberapa kondisi berikut terpenuhi:
network.ipMode.type
disetel kestatic
enableControlplaneV2
disetel ketrue
atau diizinkan ke default ketrue
.loadBalancer.kind
disetel ke"Seesaw"
network.hostConfig.dnsServers
Array string yang tidak dapat diubah
Tidak dapat diubah
.
Jumlah maksimum elemen dalam array adalah tiga.
Alamat server DNS untuk VM.
Contoh:
network: hostConfig: dnsServers: - "172.16.255.1" - "172.16.255.2"
network.hostConfig.ntpServers
Wajib
Tidak dapat diubah
Array string
Alamat server waktu yang akan digunakan oleh VM.
Contoh:
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Opsional
Array string yang tidak dapat diubah
Array string
domain penelusuran DNS untuk digunakan oleh {i>host<i}. Domain ini digunakan sebagai bagian dari daftar pencarian domain.
Contoh:
network: hostConfig: searchDomainsForDNS: - "my.local.com"
network.ipMode.type
Wajib
Tidak dapat diubah
String
Diisi otomatis: "dhcp"
Default: "dhcp"
Jika Anda ingin node cluster mendapatkan alamat IP dari server DHCP, tetapkan parameter ini ke "dhcp"
. Jika Anda ingin node cluster Anda memilih alamat IP statis dari daftar yang Anda berikan, tetapkan ini ke "static"
.
Contoh:
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Wajib jika network.ipMode.type
= static
Tidak dapat diubah
String
Jalur file blok IP untuk cluster Anda.
Contoh:
network: ipMode: ipBlockFilePath: "/my-config-folder/user-cluster-ipblock.yaml"
network.serviceCIDR
Wajib
Tidak dapat diubah
String
Diisi otomatis: "10.96.0.0/20"
Rentang alamat IP, dalam format CIDR, yang akan digunakan untuk Layanan di cluster Anda. Minimal rentang /24.
Contoh:
network: serviceCIDR: "10.96.0.0/20"
network.podCIDR
Wajib
Tidak dapat diubah
String
Terisi otomatis: "192.168.0.0/16"
Default: "192.168.0.0/16"
Rentang alamat IP, dalam format CIDR, yang akan digunakan untuk Pod di cluster Anda. Minimal rentang /18.
Contoh:
network: podCIDR: "192.168.0.0/16"
Rentang Service tidak boleh tumpang tindih dengan rentang Pod.
Rentang Service dan Pod tidak boleh tumpang-tindih dengan alamat apa pun di luar cluster yang ingin Anda jangkau dari dalam cluster.
Misalnya, rentang Service Anda adalah 10.96.232.0/24, dan rentang Pod Anda adalah 192.168.0.0/16. Setiap traffic yang dikirim dari Pod ke alamat di salah satu rentang tersebut akan diperlakukan sebagai dalam cluster dan tidak akan mencapai tujuan apa pun di luar cluster.
Secara khusus, Service dan rentang Pod tidak boleh tumpang-tindih dengan:
Alamat IP node di cluster mana pun
Alamat IP yang digunakan oleh mesin load balancer
VIP yang digunakan oleh node bidang kontrol dan load balancer
Alamat IP server vCenter, server DNS, dan server NTP
Sebaiknya Service dan rentang Pod Anda berada dalam ruang alamat RFC 1918.
Berikut adalah salah satu alasan rekomendasi untuk menggunakan alamat RFC 1918. Misalnya Pod atau rentang Service Anda berisi alamat IP eksternal. Setiap traffic yang dikirim dari Pod ke salah satu alamat eksternal tersebut akan diperlakukan sebagai traffic dalam cluster dan tidak akan mencapai tujuan eksternal.
network.vCenter.networkName
Wajib diisi jika
vCenter.address
berbeda dengan alamat vCenter yang Anda gunakan untuk cluster admin.
String yang tidak dapat diubah
Nama jaringan vSphere untuk node cluster pengguna Anda.
Contoh:
network: vCenter: networkName: "my-network"
Jika nama berisi karakter khusus, Anda harus menggunakan urutan escape untuk karakter tersebut.
Karakter khusus | Urutan escape |
---|---|
Garis miring (/ ) |
%2f |
Garis miring terbalik (\ ) |
%5c |
Tanda persen (% ) |
%25 |
Jika nama jaringan tidak unik di pusat data, Anda dapat menentukan jalur lengkapnya.
Contoh:
network: vCenter: networkName: "/my-uc-datacenter/network/my-network"
network.additionalNodeInterfaces
Jika Anda menetapkan multipleNetworkInterfaces
ke true
, isi bagian ini.
Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
Tidak dapat diubah
Array objek, yang masing-masing menjelaskan antarmuka jaringan yang dapat digunakan pada semua atau beberapa node cluster Anda.
network.additionalNodeInterfaces[i].networkName
Wajib jika multipleNetworkInterfaces
= true
Tidak dapat diubah
String
Nama jaringan vSphere yang akan terhubung dengan antarmuka node tambahan ini.
Contoh:
network: additionalNodeInterfaces: - networkName: "my-node-interface-1"
network.additionalNodeInterfaces[i].type
Wajib jika multipleNetworkInterfaces
= true
Tidak dapat diubah
String
Contoh:
network: additionalNodeInterfaces: - name: "my-node-interface-1" type: "static"
network.additionalNodeInterfaces[i].ipBlockFilePath
Wajib jika network.additionalNodeInterfaces[i].type
= static
Tidak dapat diubah
String
Jalur file blok IP yang menyimpan alamat IP yang akan digunakan untuk antarmuka jaringan ini pada node yang memiliki antarmuka jaringan ini.
Contoh:
network: additionalNodeInterfaces: - name: "my-node-interface-1" type: "static" ipBlockFilePath: "my-ipblock-file-1"
network.controlPlaneIPBlock
Jika Anda menetapkan enableControlplaneV2
ke true
, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
network.controlPlaneIPBlock.netmask
Wajib jika enableControlplaneV2
= true
Tidak dapat diubah
String
Contoh:
network: controlPlaneIPBlock: netmask: "255.255.255.0"
network.controlPlaneIPBlock.gateway
Wajib jika enableControlplaneV2
= true
Tidak dapat diubah
String
Contoh:
network: controlPlaneIPBlock: gateway: "172.16.21.1"
network.controlPlaneIPBlock.ips
Wajib jika enableControlplaneV2
= true
Tidak dapat diubah
Array objek, yang masing-masing memiliki alamat IP dan nama host opsional.
Untuk cluster pengguna dengan ketersediaan tinggi (HA), array memiliki tiga elemen. Untuk cluster pengguna non-HA, array memiliki satu elemen.
Contoh:
network: controlPlaneIPBlock: ips: - ip: "172.16.21.6" hostname: "cp-vm-1" - ip: "172.16.21.7" hostname: "cp-vm-2" - ip: "172.16.21.8" hostname: "cp-vm-3"
loadBalancer
Bagian ini berisi informasi tentang load balancer untuk cluster pengguna Anda.
loadBalancer.vips.controlPlaneVIP
Wajib
String
yang tidak dapat diubah
Alamat IP yang telah Anda pilih untuk dikonfigurasi pada load balancer untuk server Kubernetes API cluster pengguna.
Contoh:
loadBalancer: vips: controlplaneVIP: "203.0.113.3"
loadBalancer.vips.ingressVIP
Wajib
String
yang tidak dapat diubah
Alamat IP yang telah Anda pilih untuk dikonfigurasi pada load balancer untuk proxy ingress.
Contoh:
loadBalancer: vips: ingressVIP: "203.0.113.4"
loadBalancer.kind
Wajib
Tidak dapat diubah
String
Diisi otomatis: "MetalLB"
Tetapkan ini ke "ManualLB"
, "F5BigIP"
, "Seesaw"
, atau "MetalLB"
.
Contoh:
loadBalancer: kind: "MetalLB"
loadBalancer.manualLB
Jika Anda menetapkan loadbalancer.kind
ke "manualLB"
, isi bagian ini. Jika tidak,
hapus bagian ini atau biarkan sebagai komentar.
loadBalancer.manualLB.ingressHTTPNodePort
Wajib jika loadBalancer.kind
= ManualLB
Tidak dapat diubah
Bilangan bulat
Diisi otomatis: 30243
Proxy masuk di cluster pengguna diekspos oleh Layanan Kubernetes jenis LoadBalancer
.
Layanan memiliki ServicePort untuk HTTP. Anda harus memilih nilai nodePort
untuk HTTP ServicePort.
Tetapkan kolom ini ke nilai nodePort
.
Contoh:
loadBalancer: manualLB: ingressHTTPNodePort: 32527
loadBalancer.manualLB.ingressHTTPSNodePort
Wajib jika loadBalancer.kind
= ManualLB
Tidak dapat diubah
Bilangan bulat
Diisi otomatis: 30879
Proxy masuk di cluster pengguna diekspos oleh Layanan
jenis LoadBalancer. Layanan memiliki ServicePort untuk HTTPS. Anda harus memilih
nilai nodePort
untuk HTTPS ServicePort.
Tetapkan kolom ini ke nilai nodePort
.
Contoh:
loadBalancer: manualLB: ingressHTTPSNodePort: 30139
loadBalancer.manualLB.controlPlaneNodePort
Wajib jika loadBalancer.kind
= ManualLB
dan
enableControlplaneV2
= false
Tidak dapat diubah
Bilangan bulat
Terisi otomatis: 30562
Server Kubernetes API cluster pengguna berjalan di cluster admin, dan diekspos oleh Layanan jenis LoadBalancer
. Anda harus memilih nilai nodePort
untuk Layanan.
Tetapkan kolom ini ke nilai nodePort
.
Contoh:
loadBalancer: manualLB: controlPlaneNodePort: 30968
loadBalancer.manualLB.konnectivityServerNodePort
Wajib jika loadBalancer.kind
= ManualLB
dan
enableControlplaneV2
= false
Tidak dapat diubah
Bilangan bulat
Terisi otomatis: 30563
Server Kubernetes API dari cluster pengguna yang menggunakan kubeception berjalan di cluster admin, dan diekspos oleh Layanan jenis LoadBalancer
. Server
Konnectivity menggunakan kembali layanan ini dengan nilai nodePort
yang berbeda. Anda
harus memilih nilai nodePort
untuk server Konnectivity.
Tetapkan kolom ini ke nilai nodePort
untuk server Konnectivity.
Contoh:
loadBalancer: manualLB: konnectivityServerNodePort: 30969
loadBalancer.f5BigIP
Jika Anda menetapkan loadbalancer.kind
ke "f5BigIP"
, isi bagian ini. Jika tidak,
hapus bagian ini atau biarkan sebagai komentar.
loadBalancer.f5BigIP.address
Wajib jika loadBalancer.kind
= "f5BigIP"
String
Alamat load balancer Big-IP F5.
Contoh:
loadBalancer: f5BigIP: address: "203.0.113.2"
loadBalancer.f5BigIP.credentials.fileRef.path
Wajib jika loadBalancer.kind
= "f5BigIP"
String
Jalur file kredensial yang menyimpan nama pengguna dan sandi akun yang dapat digunakan GKE di VMware untuk terhubung ke load balancer BIG-IP F5 F5.
Akun pengguna harus memiliki peran pengguna yang memiliki izin memadai untuk menyiapkan dan mengelola load balancer. Peran Administrator atau peran Resource Administrator saja sudah cukup.
Untuk mengetahui informasi tentang cara memperbarui kredensial Big-IP F5, lihat Memperbarui kredensial cluster.
Contoh:
loadBalancer: f5BigIP: credentials: fileRef: path: ""my-config-folder/user-creds.yaml"
loadBalancer.f5BigIP.credentials.fileRef.entry
Wajib jika loadBalancer.kind
= "f5BigIP"
String
Nama blok kredensial, di file konfigurasi kredensial, yang berisi nama pengguna dan sandi akun Big-IP F5 Anda.
Contoh:
loadBalancer: f5BigIP: credentials: fileRef: entry: "f5-creds"
loadBalancer.f5BigIP.partition
Wajib jika loadBalancer.kind
= "f5BigIP"
String
Nama partisi BESAR-IP yang Anda buat untuk cluster pengguna.
Contoh:
loadBalancer: f5BigIP: partition: "my-f5-user-partition"
loadBalancer.f5BigIP.snatPoolName
Wajib jika loadBalancer.kind
= "f5BigIP"
dan Anda menggunakan String SNAT
Nama kumpulan SNAT Anda.
Contoh:
loadBalancer: f5BigIP: snatPoolName: "my-snat-pool"
loadBalancer.seesaw
Jika Anda menetapkan loadbalancer.kind
ke "Seesaw"
, isi bagian ini. Jika tidak,
hapus bagian ini atau biarkan sebagai komentar.
Perhatikan batasan berikut:
- Jika cluster admin ketersediaan tinggi mengelola cluster pengguna ini, cluster pengguna ini tidak dapat menggunakan load balancer Seesaw.
- Cluster pengguna dengan Controlplane V2 diaktifkan tidak dapat menggunakan load balancer Seesaw.
Untuk mengetahui informasi tentang cara menyiapkan load balancer Seesaw, lihat Panduan memulai load balancer Seesaw dan Load balancing paket dengan Seesaw.
loadBalancer.seesaw.ipBlockFilePath
Wajib jika loadBalancer.kind
= Seesaw
Tidak dapat diubah
String
Jalur file blok IP untuk Seesaw VM Anda.
Contoh:
loadBalancer: seesaw: ipBlockFilePath: "config-folder/user-seesaw-ipblock.yaml"
loadBalancer.seesaw.vrid
Wajib jika loadBalancer.kind
= Seesaw
Tidak dapat diubah
Bilangan bulat
Nilai yang memungkinkan: 1 - 255
Terisi otomatis: 0
ID router virtual dari Seesaw VM. ID ini, yang merupakan bilangan bulat pilihan Anda, harus unik di VLAN.
Contoh:
loadBalancer: seesaw: vrid: 125
loadBalancer.seesaw.masterIP
Wajib jika loadBalancer.kind
= Seesaw
Tidak dapat diubah
String
Alamat IP virtual yang dikonfigurasi di Master Seesaw VM.
Contoh:
loadBalancer: seesaw: masterIP: 172.16.20.21
loadBalancer.seesaw.cpus
Wajib jika loadBalancer.kind
= Seesaw
Dapat Diubah
Bilangan Bulat
Terisi otomatis: 4
Jumlah CPU untuk setiap VM Seesaw.
Contoh:
loadBalancer: seesaw: cpus: 8
loadBalancer.seesaw.memoryMB
Wajib jika loadBalancer.kind
= Seesaw
Dapat Diubah
Bilangan Bulat
Terisi otomatis: 3072
Jumlah mebibyte memori untuk setiap Seesaw VM Anda.
Contoh:
loadBalancer: seesaw: memoryMB: 8192
Catatan: Kolom ini menentukan jumlah mebibyte memori, bukan jumlah megabyte. Satu mebibyte adalah 2^20 = 1.048.576 byte. Satu megabita adalah 10^6 = 1.000.000 byte.
loadBalancer.seesaw.vCenter.networkName
Opsional
Tidak dapat diubah
String
Default: Sama seperti node cluster
Nama jaringan vCenter yang berisi VM Seesaw Anda.
Contoh:
loadBalancer: seesaw: vCenter: networkName: "my-seesaw-network"
loadBalancer.seesaw.enableHA
Opsional
Tidak dapat diubah
Relevan jika loadBalancer.kind
= Seesaw
Boolean
Diisi otomatis: false
Default: false
Jika Anda ingin membuat load balancer Seesaw dengan ketersediaan tinggi (HA), tetapkan ini
ke true
. Jika tidak, tetapkan ini ke false
. Load balancer Seesaw dengan ketersediaan tinggi (HA) menggunakan pasangan VM (Master, Backup).
Contoh:
loadBalancer: seesaw: enableHA: true
loadBalancer.seesaw.disableVRRPMAC
Opsional
Tidak dapat diubah
Relevan jika loadBalancer.kind
= Seesaw
Boolean
Diisi otomatis: benar
Default: benar
Jika Anda menetapkannya ke true
, load balancer Seesaw tidak akan menggunakan MAC learning untuk failover. Sebagai gantinya, sistem ini menggunakan
ARP yang serampangan.
Jika Anda menetapkannya ke false
, load balancer Seesaw akan menggunakan pembelajaran MAC. Sebaiknya
tetapkan setelan ini ke true
. Jika menggunakan vSphere 7 atau yang lebih baru, dan memiliki load balancer Seesaw yang memiliki ketersediaan tinggi, Anda harus menetapkannya ke
true
.
Contoh:
loadBalancer: seesaw: disableVRRPMAC: true
loadBalancer.metalLB
Jika Anda menetapkan loadbalancer.kind
ke "MetalLB"
, isi bagian ini. Jika tidak,
hapus bagian ini atau biarkan sebagai komentar.
Untuk informasi selengkapnya, lihat Load balancing yang dipaketkan dengan MetalLB.
loadBalancer.metalLB.addressPools
Wajib ada jika loadBalancer.kind
= 'MetalLB`
Dapat Berubah
Array objek, yang masing-masing menyimpan informasi tentang kumpulan alamat yang akan digunakan oleh load balancer MetalLB.
loadBalancer.metalLB.addressPools[i].name
Wajib jika loadBalancer.kind
= MetalLB
Dapat Diubah
String
Nama pilihan Anda untuk kumpulan alamat.
Contoh:
loadBalancer: metalLB: addressPools: - name: "my-address-pool-1"
loadBalancer.metalLB.addressPools[i].addresses
Wajib jika loadBalancer.kind
= MetalLB
Dapat Berubah
Array string, yang masing-masing merupakan rentang alamat. Setiap rentang harus memiliki format CIDR atau rentang dengan tanda hubung.
Contoh:
loadBalancer: metalLB: addressPools: - name: "my-address-pool-1" addresses: - "192.0.2.0/26" - "192.0.2.64-192.0.2.72"
loadBalancer.metalLB.addressPools[i].avoidBuggyIPs
Opsional
Relevan jika loadBalancer.kind
= MetalLB
Dapat diubah
Boolean
Terisi otomatis: false
Default: false
Jika Anda menetapkannya ke true
, pengontrol MetalLB tidak akan menetapkan alamat IP yang diakhiri dengan .0 atau .255 ke Layanan. Hal ini untuk menghindari masalah perangkat konsumen yang berisi bug
yang secara keliru menjatuhkan traffic yang dikirim ke alamat IP khusus tersebut.
Contoh:
loadBalancer: metalLB: addressPools: - name: "my-address-pool-1" - "192.0.2.0/26" - "192.0.2.64-192.0.2.72" avoidBuggyIPs: true
loadBalancer.metalLB.addressPools[i].manualAssign
Opsional
Relevan jika loadBalancer.kind
= MetalLB
Dapat diubah
Boolean
Terisi otomatis: false
Default: false
Jika Anda tidak ingin pengontrol MetalLB menetapkan alamat IP secara otomatis dari kumpulan ini ke Service, tetapkan ini ke true
. Kemudian, developer dapat membuat Layanan dengan jenis LoadBalancer
dan secara manual menentukan salah satu alamat dari kumpulan tersebut.
Jika tidak, tetapkan ini ke false
.
Contoh:
loadBalancer: metalLB: addressPools: - name: "my-address-pool-1" manualAssign: true
enableDataplaneV2
Opsional
Boolean
yang tidak dapat diubah
Diisi otomatis: benar
Default: false
Jika Anda ingin mengaktifkan Dataplane V2,
atau jika ingin menggunakan
Controlplane V2,
tetapkan ini ke true
. Jika tidak, tetapkan ini ke false
.
Contoh:
enableDataplaneV2: true
Lihat Pemecahan Masalah Dataplane V2 untuk mengetahui langkah-langkah pemecahan masalah.
dataplaneV2.forwardMode
Opsional
Tidak dapat diubah
String
Nilai yang mungkin: "snat", "dsr"
Terisi otomatis: "snat"
Default: "snat"
Mode penerusan untuk cluster yang mengaktifkan Dataplane V2.
Dengan mode penafsiran alamat jaringan (SNAT) sumber, paket diterjemahkan ke SNAT saat diteruskan dari node load balancer ke Pod backend. Pod tidak dapat melihat alamat IP sumber asli, dan paket yang ditampilkan harus melewati node load balancer.
Dengan mode return server langsung (DSR), paket mempertahankan alamat IP sumber aslinya saat diteruskan dari node load balancer ke Pod backend. Pod dapat melihat alamat IP sumber asli, dan paket yang dikembalikan akan langsung dikirim ke klien tanpa melewati node load balancer.
Contoh:
dataplaneV2: forwardMode: "dsr"
multipleNetworkInterfaces
Opsional
Boolean
yang tidak dapat diubah
Terisi otomatis: false
Default: false
Jika ingin mengaktifkan beberapa antarmuka jaringan untuk Pod, tetapkan parameter ini
ke true
. Jika tidak, tetapkan ini ke false
.
Untuk mengetahui informasi selengkapnya, baca Mengonfigurasi beberapa antarmuka jaringan untuk Pod.
Contoh:
multipleNetworkInterfaces: true
advancedNetworking
Opsional
Boolean
yang tidak dapat diubah
Diisi otomatis: salah
Default: false
Jika Anda berencana untuk membuat gateway NAT keluar, tetapkan ini ke true
. Atau, tetapkan ke false
.
Jika Anda menetapkan kolom ini ke true
, Anda juga harus menetapkan enableDataplaneV2
ke true
.
Contoh:
advancedNetworking: true
disableBundledIngress
Tetapkan ini ke true
jika Anda ingin menonaktifkan ingress yang dipaketkan untuk cluster. Jika tidak, tetapkan ke false
.
Opsional
Boolean
Dapat diubah
Terisi otomatis: false
Default: false
Contoh:
disableBundledIngress: true
storage.vSphereCSIDisabled
Jika ingin menonaktifkan deployment komponen CSI vSphere, tetapkan ini ke
true
. Jika tidak, tetapkan ke false
.
Opsional
Dapat diubah
Boolean
Terisi otomatis: false
Default: false
Contoh:
storage: vSphereCSIDisabled: false
masterNode
Bagian ini menyimpan informasi tentang node yang berfungsi sebagai node bidang kontrol untuk cluster pengguna ini.
masterNode.cpus
Opsional
Dapat diubah
Bilangan bulat
Diisi otomatis: 4
Default: 4
Jumlah CPU untuk setiap node yang berfungsi sebagai bidang kontrol untuk cluster pengguna ini.
Contoh:
masterNode: cpus: 8
masterNode.memoryMB
Opsional
Dapat diubah
Bilangan bulat
Diisi otomatis: 8192
Default: 8192
Mebibyte memori untuk setiap node yang berfungsi sebagai bidang kontrol untuk cluster pengguna ini. Harus kelipatan dari 4.
Contoh:
masterNode: memoryMB: 8192
Catatan: Kolom ini menentukan jumlah mebibyte memori, bukan jumlah megabyte. Satu mebibyte adalah 2^20 = 1.048.576 byte. Satu megabita adalah 10^6 = 1.000.000 byte.
masterNode.replicas
Opsional
Tidak dapat diubah
Bilangan bulat
Nilai yang memungkinkan: 1 atau 3
Terisi otomatis: 1
Default: 1
Jumlah node bidang kontrol untuk cluster pengguna ini. Angka ini tidak dapat diubah setelah cluster dibuat. Jika ingin memperbarui jumlah replika nanti, Anda harus membuat ulang cluster pengguna.
Contoh:
masterNode: replicas: 3
masterNode.autoResize.enabled
Opsional
Dapat diubah
Boolean
Terisi otomatis: false
Default: false
Tetapkan string ini ke true
untuk mengaktifkan pengubahan ukuran otomatis node bidang kontrol untuk cluster pengguna. Jika tidak, tetapkan ini ke false
.
Untuk informasi selengkapnya, lihat Mengaktifkan perubahan ukuran node untuk node bidang kontrol cluster pengguna.
Contoh:
masterNode: autoResize: enabled: true
masterNode.vsphere.datastore
Opsional
Tidak dapat diubah
String
Default: Nilai vCenter.datastore
Datastore tempat node bidang kontrol untuk cluster pengguna ini akan dibuat.
Contoh:
masterNode: vSphere: datastore: "control-plane-datastore"
Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk
masterNode.vsphere.storagePolicyName
.
masterNode.vsphere.storagePolicyName
Opsional
Tidak dapat diubah
String
Default: Nilai vCenter.storagePolicyName
Nama kebijakan penyimpanan VM untuk node bidang kontrol.
Untuk informasi selengkapnya, lihat Mengonfigurasi kebijakan penyimpanan.
Contoh:
masterNode: vSphere: storagePolicyName: "control-plane-storage-policy"
Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk
masterNode.vsphere.datastore
.
nodePools
Wajib
Dapat diubah
Array objek, yang masing-masing menjelaskan kumpulan node.
Untuk mengetahui informasi selengkapnya, lihat Membuat dan mengelola node pool.
nodePools[i].name
Wajib
String
yang tidak dapat diubah
Nama pilihan Anda untuk kumpulan node. Namanya harus:
- berisi maksimal 40 karakter
- hanya berisi karakter alfanumerik huruf kecil atau tanda hubung (
-
) - diawali dengan karakter alfabet
- diakhiri dengan karakter alfanumerik
Contoh:
nodePools: - name: "my-node-pool-1"
nodePools[i].gkeOnPremVersion
Saat mengupgrade cluster pengguna, Anda dapat menentukan bahwa kumpulan node yang dipilih tetap pada versi sebelumnya.
Jika Anda ingin kumpulan node ini tetap pada versi sebelumnya, tetapkan ini ke versi sebelumnya. Jika tidak, hapus kolom ini atau setel ke string kosong. Untuk mengetahui informasi selengkapnya, lihat Mengupgrade kumpulan node.
Opsional
Dapat diubah
String
Default: Cluster gkeOnPremVersion
Contoh:
nodePools: - name: "my-node-pool" gkeOnPremVersion: "1.13.0-gke.16"
nodePools[i].cpus
Wajib
Dapat Diubah
Bilangan bulat
Diisi otomatis: 4
Jumlah vCPU untuk setiap node dalam kumpulan.
Contoh:
nodePools" - name: "my-node-pool" cpus: 8
nodePools[i].memoryMB
Wajib
Dapat Diubah
Bilangan bulat
Diisi otomatis: 8192
Mebibyte memori untuk setiap node dalam kumpulan. Harus kelipatan dari 4.
Contoh:
nodePools" - name: "my-node-pool" memoryMB: 8192
Catatan: Kolom ini menentukan jumlah mebibyte memori, bukan jumlah megabyte. Satu mebibyte adalah 2^20 = 1.048.576 byte. Satu megabita adalah 10^6 = 1.000.000 byte.
nodePools[i].replicas
Wajib
Dapat diubah
Bilangan bulat
Terisi otomatis: 3
Nilai yang mungkin: Jumlah total node yang belum tersentuh di semua kumpulan node dalam
cluster harus minimal 3.
Jumlah node dalam kumpulan.
Contoh:
nodePools: - name: "my-node-pool" replicas: 5
nodePools[i].bootDiskSizeGB
Opsional
Dapat diubah
Bilangan bulat
Diisi otomatis: 40
Default: 40
Ukuran boot disk dalam gigabyte untuk setiap node di kumpulan.
Contoh:
nodePools - name: "my-node-pool" bootDiskSizeGB: 40
nodePools[i].osImageType
Opsional
Dapat diubah
String
Nilai yang mungkin: "ubuntu_containerd", "cos", "ubuntu_cgv2", "cos_cgv2", "windows"
Terisi otomatis: "ubuntu_containerd"
Default: "ubuntu_containerd"
Jenis OS image yang akan dijalankan pada VM di kumpulan node.
Jika menentukan ubuntu_cgv2
atau cos_cgv2
, Anda harus menjalankan gkectl prepare --extra-os-image-types=cgroupv2
sebelum membuat/mengupdate cluster.
Contoh:
nodePools - name: "my-node-pool" osImageType: "ubuntu_cgv2"
nodePools[i].osImage
Wajib jika nodePools[i].osImageType
= windows
Dapat Diubah
String
Nama template VM Windows. Template harus didasarkan pada ISO Windows Server 2019 yang memiliki tag bahasa/wilayah en-US.
Untuk informasi selengkapnya, lihat Panduan pengguna untuk kumpulan node OS Windows Server.
nodePools[i].labels
Opsional
Dapat Diubah
Pemetaan
Label untuk diterapkan ke setiap objek Node Kubernetes dalam kumpulan.
Contoh:
nodePools: - name: "my-node-pool" labels: environment: "production" tier: "cache"
Untuk alasan keamanan, kubelet tidak dapat menerapkan label ke dirinya sendiri dalam namespace tertentu.
Namespace label node yang dicadangkan adalah : kubernetes.io
, k8s.io
, googleapis.com
.
nodePools[i].taints
Opsional
Dapat diubah
Array objek, yang masing-masing menjelaskan
taint Kubernetes yang diterapkan ke setiap
node dalam kumpulan. Taint adalah pasangan nilai kunci yang terkait dengan effect
. Taint
digunakan dengan toleransi untuk penjadwalan Pod. Tentukan salah satu dari hal berikut untuk effect
: NoSchedule
, PreferNoSchedule
, NoExecute
.
Contoh:
nodePools: - name: "my-node-pool" taints: - key: "staging" value: "true" effect: "NoSchedule"
nodePools[i].vsphere.datastore
Opsional
Dapat diubah
String
Default: Nilai vCenter.datastore
Nama datastore vCenter tempat node akan dibuat.
Contoh:
nodePools: - name: "my-node-pool" vsphere: datastore: "my-datastore"
Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk
nodePools[i].vsphere.storagePolicyName
.
nodePools[i].vsphere.storagePolicyName
Opsional
Dapat diubah
String
Default: Nilai vCenter.storagePolicyName
Nama kebijakan penyimpanan VM untuk node di dalam kumpulan.
Untuk informasi selengkapnya, lihat Mengonfigurasi kebijakan penyimpanan.
Contoh:
nodePools: - name: "my-node-pool" vsphere: storagePolicyName: "my-storage-policy"
Jika Anda menentukan nilai untuk kolom ini, jangan tentukan nilai untuk
nodePools[i].vsphere.datastore
.
nodePools[i].vsphere.hostgroups
Isi bagian ini jika Anda ingin mengonfigurasi cluster untuk menggunakan afinitas VM-Host.
Opsional
Dapat diubah
Array string, yang masing-masing merupakan nama
grup DRS host.
Array hanya boleh memiliki satu elemen.
Contoh:
nodePools: - name: "my-node-pool" vsphere: hostgroups: - "my-hostgroup"
nodePools[i].vsphere.tags
Opsional
Dapat diubah
Array objek, yang masing-masing menjelaskan
tag vSphere
untuk ditempatkan pada VM di kumpulan node.
Setiap tag memiliki kategori dan nama.
Contoh:
nodePools: - name: "my-node-pool" vsphere: tags: - category: "purpose" name: "testing"
Jika Anda ingin menambahkan tag ke semua VM di kumpulan node, akun pengguna vCenter Anda harus memiliki hak istimewa pemberian tag vSphere berikut:
- Pemberian Tag vSphere.Tetapkan atau Batalkan Penetapan Tag vSphere
- Pemberian Tag vSphere.Tetapkan atau Batalkan Penetapan Tag vSphere pada Objek (vSphere 7)
nodePools[i].autoscaling
Opsional
Dapat diubah
Jika Anda ingin mengaktifkan penskalaan otomatis untuk kumpulan node, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
nodePools[i].autoscaling.minReplicas
Opsional
Dapat diubah
Bilangan bulat
Nilai yang memungkinkan: Lebih besar dari atau sama dengan 1
Terisi otomatis: 0
Jumlah minimum node yang dapat ditetapkan oleh penskala otomatis untuk kumpulan.
Contoh:
nodePools: - name: "my-node-pool" autoscaling: minReplicas: 5
nodePools[i].autoscaling.maxReplicas
Opsional
Dapat diubah
Bilangan bulat
Diisi otomatis: 0
Jumlah maksimum node yang dapat ditetapkan oleh penskala otomatis untuk kumpulan.
Contoh:
nodePools: - name: "my-node-pool" autoscaling: maxReplicas: 10
nodePools[i].enableLoadBalancer
Opsional
Relevan jika loadBalancer.kind
= "MetalLB"
Dapat diubah
Boolean
Terisi otomatis: benar
Default: false
Tetapkan ini ke true
jika Anda ingin mengizinkan speaker MetalLB berjalan pada node
dalam kumpulan. Jika tidak, tetapkan ke false
.
Untuk informasi selengkapnya, lihat Load balancing yang dipaketkan dengan MetalLB.
Contoh:
nodePools: - name: "my-node-pool" enableLoadBalancer: true
nodePools[i].updateStrategy.rollingUpdate.maxSurge
Pratinjau
Opsional
Dapat diubah
Integer
Default: 1
Jumlah maksimum mesin dalam kumpulan node yang dapat diupdate secara bersamaan selama update atau upgrade.
nodePools: - name: "my-node-pool" updateStrategy: rollingUpdate: maxSurge: 3
antiAffinityGroups.enabled
Opsional
Dapat diubah
Boolean
Terisi otomatis: benar
Tetapkan string ini ke true
untuk mengaktifkan pembuatan aturan DRS. Jika tidak, tetapkan ini ke
false
.
Contoh:
antiAffinityGroups: enabled: true
Jika kolom ini adalah true
, GKE di VMware akan membuat aturan anti-afinitas
Distributed Resource Scheduler
(DRS) VMware untuk node cluster pengguna Anda, yang menyebabkan node tersebut
disebarkan di setidaknya tiga host ESXi fisik di pusat data Anda.
Fitur ini mengharuskan lingkungan vSphere Anda memenuhi kondisi berikut:
DRS VMware diaktifkan. VMware DRS memerlukan edisi lisensi vSphere Enterprise Plus.
Akun pengguna vSphere Anda memiliki hak istimewa
Host.Inventory.Modify cluster
.Ada setidaknya empat host ESXi yang tersedia.
Meskipun aturan ini mengharuskan node cluster tersebar di tiga host ESXi, sebaiknya Anda memiliki minimal empat host ESXi.
Ingat bahwa jika Anda memiliki lisensi Standar vSphere, Anda tidak dapat mengaktifkan DRS VMware.
Jika Anda tidak mengaktifkan DRS, atau tidak memiliki setidaknya empat host tempat VM vSphere dapat dijadwalkan, tetapkan antiAffinityGroups.enabled
ke false
.
enableVMTracking
Pratinjau
Opsional
Tidak dapat diubah
Diisi otomatis: false
Tetapkan string ini ke true
untuk mengaktifkan pelacakan VM dengan tag vSphere. Jika tidak, tetapkan
ke false
.
Untuk mengetahui informasi lebih lanjut, lihat Mengaktifkan pelacakan VM.
Contoh:
enableVMTracking: true
nodePoolUpdatePolicy.maximumConcurrentNodePoolUpdate
Opsional
Bilangan bulat
Nilai yang memungkinkan: 0 atau 1
Terisi otomatis: 0
Jumlah kumpulan node yang akan diperbarui pada satu waktu. Nilai 1
menentukan bahwa satu
kumpulan node dapat diupdate dalam satu waktu. Nilai 0
menentukan bahwa jumlah node pool yang tidak terbatas dapat diperbarui dalam satu waktu.
Contoh:
nodePoolUpdatePolicy: maximumConcurrentNodePoolUpdate: 1
nodePoolUpdatePolicy.updateStrategy.rollingUpdate.maxSurge
Pratinjau
Opsional
Dapat diubah
Integer
Default: 1
Jumlah maksimum mesin dalam kumpulan node yang dapat diupdate secara bersamaan selama update atau upgrade. Berlaku untuk kumpulan node yang tidak menentukan strategi update-nya sendiri.
nodePools: - name: "my-node-pool" updateStrategy: rollingUpdate: maxSurge: 3
authentication
Bagian ini menyimpan informasi tentang cara pengguna cluster diautentikasi dan diberi otorisasi.
authentication.oidc
Jangan gunakan bagian ini. Sebagai gantinya, setelah pembuatan cluster, edit resource kustom ClientConfig seperti yang dijelaskan dalam Mengonfigurasi cluster untuk Anthos Identity Service dengan OIDC .
authentication.sni
Opsional
Jika Anda ingin memberikan sertifikat penyajian tambahan untuk server Kubernetes API cluster, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
authentication.sni.certPath
Opsional
String
Jalur sertifikat penayangan untuk server Kubernetes API.
Contoh:
authentication: sni: certPath: "my-cert-folder/example.com.crt"
authentication.sni.keyPath
Opsional
String
Jalur file kunci pribadi sertifikat.
Contoh:
authentication: sni: keyPath: "my-cert-folder/example.com.key"
gkeConnect
Wajib
Tidak dapat diubah
Bagian ini berisi informasi tentang project Google Cloud dan akun layanan yang ingin Anda gunakan untuk mendaftarkan cluster Anda ke fleet Google Cloud.
gkeConnect.projectID
Wajib
String
yang tidak dapat diubah
ID
project host fleet.
Untuk cluster baru, project ID ini harus sama dengan ID yang ditetapkan di
stackdriver.projectID
dan cloudAuditLogging.projectID
. Jika project ID tidak sama, pembuatan cluster akan gagal. Persyaratan ini tidak berlaku untuk
cluster yang ada.
Contoh:
gkeConnect: projectID: "my-fleet-host-project"
gkeConnect.location
Opsional
Tidak dapat diubah
String
Default: global
Setiap keanggotaan fleet cluster dikelola oleh layanan Armada
(gkehub.googleapis.com
) dan layanan Connect
(gkeconnect.googleapis.com
). Lokasi layanan dapat bersifat global
atau regional. Pada versi 1.28 dan yang lebih baru, Anda dapat secara opsional menentukan region Google Cloud tempat Fleet dan layanan Connect dijalankan. Jika tidak ditentukan, instance global layanan akan digunakan. Perhatikan hal-hal berikut:
Cluster pengguna yang dibuat sebelum versi 1.28 dikelola oleh layanan Fleet and Connect global.
Cluster baru yang dibuat menggunakan klien GKE On-Prem API—Google Cloud Console, Google Cloud CLI, atau Terraform—menggunakan region yang sama dengan yang Anda tentukan untuk GKE On-Prem API.
Untuk cluster baru, jika Anda menyertakan kolom ini, region yang Anda tentukan harus sama dengan region yang dikonfigurasi di
cloudAuditLogging.clusterLocation
,stackdriver.clusterLocation
, dangkeOnPremAPI.location
. Jika region tidak sama, pembuatan cluster akan gagal.
Contoh:
gkeConnect: location: "us-central1"
gkeConnect.registerServiceAccountKeyPath
Wajib
Dapat diubah
String
Jalur file kunci JSON untuk akun layanan connect-register Anda.
Untuk memperbarui nilai kolom ini, gunakan gkectl update cluster
.
Untuk mengetahui informasi cara mengubah kunci akun layanan koneksi pendaftaran, lihat Merotasi kunci akun layanan.
Contoh:
gkeConnect: registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"
gkeConnect.registerServiceAccountKey.secretRef.version
Wajib jika menggunakan kredensial yang disiapkan
Dapat Diubah
String
Nilai yang mungkin: String bilangan bulat atau "terbaru"
Nilai default: "latest"
Versi Secret yang disiapkan di cluster admin yang menyimpan kunci JSON untuk akun layanan koneksi register Anda.
Contoh:
gkeConnect: registerServiceAccountKey: secretRef: version: "1"
gkeOnPremAPI
Opsional
Pada versi 1.16 dan yang lebih baru, jika GKE On-Prem API diaktifkan di project Google Cloud Anda, semua cluster dalam project akan terdaftar di GKE On-Prem API secara otomatis di region yang dikonfigurasi di stackdriver.clusterLocation
.
Jika ingin mendaftarkan semua cluster dalam project di GKE On-Prem API, pastikan Anda melakukan langkah-langkah di Sebelum memulai untuk mengaktifkan dan menggunakan GKE On-Prem API dalam project.
Jika Anda tidak ingin mendaftarkan cluster di GKE On-Prem API, sertakan bagian ini dan tetapkan
gkeOnPremAPI.enabled
kefalse
. Jika Anda tidak ingin mendaftarkan cluster apa pun dalam project, nonaktifkangkeonprem.googleapis.com
(nama layanan untuk GKE On-Prem API) di project tersebut. Untuk mengetahui petunjuknya, lihat Menonaktifkan layanan.
Dengan mendaftarkan cluster pengguna di GKE On-Prem API, Anda dapat menggunakan
alat standar—Google Cloud Console, Google Cloud CLI, dan
Terraform—untuk mengelola
siklus proses cluster. Selain itu, dengan mendaftarkan cluster, Anda dapat menggunakan konsol atau gcloud CLI untuk melihat detail cluster. Misalnya, Anda dapat menjalankan perintah gcloud
untuk
mendapatkan informasi tentang cluster pengguna.
Setelah Anda menambahkan bagian ini dan membuat atau mengupdate cluster, jika kemudian Anda menghapus bagian tersebut dan mengupdate cluster, update akan gagal.
gkeOnPremAPI.enabled
Wajib jika bagian gkeOnPremAPI
disertakan.
Dapat diubah
Boolean
Default: true
Secara default, cluster terdaftar di GKE On-Prem API jika GKE On-Prem API diaktifkan di project Anda. Tetapkan ke false
jika Anda tidak ingin mendaftarkan cluster.
Setelah cluster didaftarkan di GKE On-Prem API, jika Anda perlu membatalkan pendaftaran cluster, buat perubahan berikut, lalu update cluster:
gkeOnPremAPI: enabled: false
gkeOnPremAPI.location
Wajib jika bagian gkeOnPremAPI
disertakan.
Tidak dapat diubah
String
Default: stackdriver.clusterLocation
Region Google Cloud tempat GKE On-Prem API menjalankan dan menyimpan metadata cluster. Pilih salah satu wilayah yang didukung.
Anda harus menggunakan region yang sama dengan yang dikonfigurasi di gkeConnect.location
, stackdriver.clusterLocation
, dan cloudAuditLogging.clusterLocation
. Jika gkeOnPremAPI.enabled
adalah false
, jangan sertakan kolom ini.
stackdriver
Wajib secara default
Dapat diubah
Jika ingin mengaktifkan Cloud Logging dan Cloud Monitoring untuk cluster Anda, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
Bagian ini wajib ada secara default. Artinya, jika tidak menyertakan bagian ini,
Anda harus menyertakan flag --skip-validation-stackdriver
saat menjalankan
gkectl create cluster
.
Bagian ini diperlukan dalam cluster pengguna jika Anda ingin mengelola siklus proses cluster pengguna di konsol Google Cloud.
stackdriver.projectID
Diperlukan untuk Logging dan Pemantauan
String yang Tidak Dapat Diubah
ID
project host fleet.
Untuk cluster baru, project ID ini harus sama dengan ID yang ditetapkan di
gkeConnect.projectID
dan cloudAuditLogging.projectID
. Jika project ID tidak sama, pembuatan cluster akan gagal. Persyaratan ini tidak berlaku untuk
cluster yang ada.
Jika perlu, Anda dapat mengonfigurasi router log dalam project ini untuk merutekan log ke dalam bucket log dalam project lain. Untuk mengetahui informasi tentang cara mengonfigurasi router log, lihat Tujuan yang didukung.
Contoh:
stackdriver: projectID: "my-fleet-host-project"
stackdriver.clusterLocation
Diperlukan untuk Logging dan Pemantauan
Tidak dapat diubah
String
Terisi otomatis: "us-central1"
Region Google Cloud tempat Anda ingin menyimpan log. Sebaiknya pilih region yang dekat dengan pusat data lokal Anda.
Untuk cluster baru, jika Anda menyertakan bagian gkeOnPremAPI
dan cloudAuditLogging
dalam file konfigurasi, region yang Anda tetapkan di sini harus
merupakan region yang sama dengan yang Anda tetapkan di gkeConnect.location
, gkeOnPremAPI.location
,
dan cloudAuditLogging.clusterLocation
. Jika region tidak sama,
pembuatan cluster akan gagal.
Contoh:
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
Opsional
Tidak dapat diubah
Boolean
Diisi otomatis: false
Jika jaringan cluster Anda dikontrol oleh VPC, setel ini ke true
.
Tindakan ini memastikan bahwa semua telemetri mengalir melalui alamat IP yang dibatasi Google.
Jika tidak, tetapkan ini ke false
.
Contoh:
stackdriver: enableVPC: false
stackdriver.serviceAccountKeyPath
Diperlukan untuk Logging dan Pemantauan
Dapat Diubah
String
Jalur file kunci JSON untuk akun layanan pemantauan logging Anda.
Untuk memperbarui nilai kolom ini, gunakan gkectl update cluster
.
Untuk mengetahui informasi tentang cara mengubah kunci akun layanan pemantauan logging, lihat Merotasi kunci akun layanan.
Contoh:
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.serviceAccountKey.secretRef.version
Wajib jika menggunakan kredensial yang disiapkan
Dapat Diubah
String
Nilai yang mungkin: String bilangan bulat atau "terbaru"
Nilai default: "latest"
Versi Secret yang disiapkan di cluster admin yang menyimpan kunci JSON untuk akun layanan pemantauan logging Anda.
Contoh:
stackdriver: serviceAccountKey: secretRef: version: "1"
stackdriver.disableVsphereResourceMetrics
Opsional
Dapat diubah
Boolean
Terisi otomatis: false
Default: false
Tetapkan ini ke true
untuk menonaktifkan pengumpulan metrik dari vSphere.
Jika tidak, tetapkan ke false
.
Contoh:
stackdriver: disableVsphereResourceMetrics: true
usageMetering
Pratinjau
Tidak dapat diubah
Opsional
Jika ingin mengaktifkan pengukuran penggunaan untuk cluster Anda, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
usageMetering.bigQueryProjectID
Pratinjau
Diperlukan untuk pengukuran penggunaan
Tidak dapat diubah
String
ID project Google Cloud tempat Anda ingin menyimpan data pengukuran penggunaan.
Contoh:
usageMetering: bigQueryProjectID: "my-bq-project"
usageMetering.bigQueryDatasetID
Pratinjau
Diperlukan untuk pengukuran penggunaan
Tidak dapat diubah
String
ID set data BigQuery tempat Anda ingin menyimpan data pengukuran penggunaan. Contoh:
usageMetering: bigQueryDatasetID: "my-bq-dataset"
usageMetering.bigQueryServiceAccountKeyPath
Pratinjau
Diperlukan untuk pengukuran penggunaan
String yang tidak dapat diubah
.
Jalur file kunci JSON untuk akun layanan BigQuery Anda.
Untuk memperbarui nilai kolom ini, gunakan gkectl update cluster
.
Untuk mengetahui informasi tentang cara mengubah kunci akun layanan BigQuery, lihat Merotasi kunci akun layanan.
Contoh:
usageMetering: bigQueryServiceAccountKeyPath: "my-key-folder/bq-key.json"
usageMetering.bigQueryServiceAccountKey.secretRef.version
Wajib jika menggunakan kredensial yang disiapkan
Dapat Diubah
String
Nilai yang mungkin: String bilangan bulat atau "terbaru"
Nilai default: "latest"
Versi Secret yang disiapkan di cluster admin yang menyimpan kunci JSON untuk akun layanan BigQuery Anda.
Contoh:
gkeConnect: bigQueryServiceAccountKey: secretRef: version: "1"
usageMetering.enableConsumptionMetering
Pratinjau
Diperlukan untuk pengukuran penggunaan
Tidak dapat diubah
Boolean
Diisi otomatis: false
Tetapkan ini ke true
jika Anda ingin mengaktifkan pengukuran berbasis konsumsi.
Jika tidak, tetapkan ini ke false.
Contoh:
usageMetering: enableConsumptionMetering: true
cloudAuditLogging
Jika Anda ingin mengintegrasikan log audit dari server Kubernetes API cluster dengan Cloud Audit Logs, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
cloudAuditLogging.projectID
Diperlukan untuk Cloud Audit Logs
Tidak dapat diubah
String
ID project fleet host Anda.
Untuk cluster baru, project ID ini harus sama dengan ID yang ditetapkan di
gkeConnect.projecID
dan stackdriver.projectID
. Jika project ID tidak sama, pembuatan cluster akan gagal. Persyaratan ini tidak berlaku untuk
cluster yang ada.
Jika perlu, Anda dapat mengonfigurasi router log dalam project ini untuk merutekan log ke dalam bucket log dalam project lain. Untuk mengetahui informasi tentang cara mengonfigurasi router log, lihat Tujuan yang didukung.
Contoh:
cloudAuditLogging: projectID: "my-fleet-host-project"
cloudAuditLogging.clusterLocation
Diperlukan untuk Cloud Audit Logs
Tidak dapat diubah
String
Region Google Cloud tempat Anda ingin menyimpan log audit. Sebaiknya pilih region yang dekat dengan pusat data lokal Anda
Untuk cluster baru, jika Anda menyertakan bagian gkeOnPremAPI
dan stackdriver
dalam file konfigurasi, region yang Anda tetapkan di sini harus
merupakan region yang sama dengan yang Anda tetapkan di gkeConnect.location
,
gkeOnPremAPI.location
, dan stackdriver.clusterLocation
. Jika region tidak sama, pembuatan cluster akan gagal.
Contoh:
cloudAuditLogging: clusterLocation: "us-central1"
cloudAuditLogging.serviceAccountKeyPath
Diperlukan untuk Cloud Audit Logs
Dapat Diubah
String
Jalur file kunci JSON untuk akun layanan logging audit Anda.
Untuk memperbarui nilai kolom ini, gunakan gkectl update cluster
.
Untuk mengetahui informasi tentang cara mengubah kunci akun layanan logging audit, lihat Merotasi kunci akun layanan.
Contoh:
cloudAuditLogging: serviceAccountKeyPath: "my-key-folder/audit-log-key.json"
cloudAuditLogging.serviceAccountKey.secretRef.version
Opsional
Dapat diubah
String
Nilai yang mungkin: String bilangan bulat atau "terbaru"
Nilai default: "latest"
Versi Secret yang disiapkan di cluster admin yang menyimpan kunci JSON untuk akun layanan logging audit Anda.
Contoh:
cloudAuditLogging: serviceAccountKey: secretRef: version: "1"
autoRepair.enabled
Opsional
Dapat diubah
Boolean
Terisi otomatis: benar
Setel ini ke true
untuk mengaktifkan perbaikan otomatis node. Jika tidak, tetapkan ke false
.
Contoh:
autoRepair: enabled: true
secretsEncryption
Jika Anda ingin mengenkripsi Secret tanpa memerlukan KMS (Key Management Service) eksternal, atau dependensi lainnya, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
secretsEncryption.mode
Diperlukan untuk enkripsi Secret
Tidak dapat diubah
String
Nilai yang mungkin: "GeneratedKey"
Diisi otomatis: "GeneratedKey"
Mode enkripsi Rahasia.
secretsEncryption: mode: "GeneratedKey"
secretsEncryption.generatedKey.keyVersion
Diperlukan untuk enkripsi Secret
Dapat Diubah
Bilangan bulat
Terisi otomatis: 1
Bilangan bulat pilihan Anda untuk digunakan untuk nomor versi kunci. Sebaiknya
mulai dengan 1
.
Untuk mengetahui informasi tentang cara memperbarui kolom ini untuk cluster yang ada, lihat Enkripsi Secret yang Selalu Aktif.
Contoh:
secretsEncryption: generatedKey: keyVersion: 1
secretsEncryption.generatedKey.disabled
Opsional untuk enkripsi Secret
Dapat diubah
Boolean
Terisi otomatis: false
Setel ini ke true
untuk menonaktifkan enkripsi Secrets. Atau, tetapkan ke false
.
Untuk mengetahui informasi tentang cara memperbarui kolom ini untuk cluster yang ada, lihat Enkripsi Secret yang Selalu Aktif.
Contoh:
secretsEncryption: generatedKey: disabled: false