Halaman ini menjelaskan kolom dalam file konfigurasi cluster admin untuk GKE di VMware.
Membuat template untuk file konfigurasi Anda
Jika Anda menggunakan gkeadm
untuk membuat workstation admin, gkeadm
akan membuat
template untuk file konfigurasi cluster admin Anda. Selain itu, gkeadm
telah mengisi beberapa kolom untuk Anda.
Jika gkeadm
tidak digunakan untuk membuat workstation admin, Anda dapat menggunakan
gkectl
untuk membuat template file konfigurasi cluster admin.
Untuk membuat template bagi file konfigurasi cluster admin Anda:
gkectl create-config admin --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION
Ganti OUTPUT_FILENAME
dengan jalur pilihan Anda untuk template yang dihasilkan. Jika Anda menghapus flag ini, gkectl
akan memberi nama file
admin-cluster.yaml
dan menempatkannya di direktori saat ini.
Ganti VERSION
dengan nomor versi yang diinginkan, yang harus sama dengan atau kurang dari versi gkectl
Anda. Misalnya: gkectl create-config admin --gke-on-prem-version=1.6.2-gke.0
Jika Anda menghapus tanda ini, template konfigurasi yang dihasilkan akan diisi dengan nilai berdasarkan versi cluster terbaru.
Template
Mengisi file konfigurasi Anda
Di file konfigurasi Anda, masukkan nilai kolom seperti yang dijelaskan di bagian berikut.
name
Opsional
String
Default: Nama acak dengan awalan "gke-admin-"
Nama cluster pilihan Anda.
Contoh:
name: "my-admin-cluster"
bundlePath
Wajib
Dapat diubah
String
Jalur GKE Anda pada file paket VMware.
File paket lengkap GKE di VMware berisi semua komponen dalam rilis GKE tertentu di VMware. Saat Anda membuat workstation admin, paket lengkap akan tersedia di:
/var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz
Contoh:
bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.10.0-gke.8.full.tgz"
preparedSecrets.enabled
Pratinjau
Opsional
Tidak dapat diubah
Boolean
Terisi otomatis: false
Default: false
Tetapkan ini ke true
jika Anda ingin menggunakan
kredensial yang telah disiapkan
di cluster admin. Jika tidak, tetapkan ke false
.
Contoh:
preparedSecrets: enabled: true
vCenter
Wajib
Tidak dapat diubah
Bagian ini menyimpan informasi tentang lingkungan vSphere dan koneksi Anda ke Server vCenter.
vCenter.address
Wajib
String
yang tidak dapat diubah
Alamat IP atau nama host server vCenter Anda.
Untuk mengetahui informasi selengkapnya, lihat Menemukan alamat server vCenter Anda.
Contoh:
vCenter: address: "203.0.113.100"
vCenter: address: "my-vcenter-server.my-domain.example"
vCenter.datacenter
Wajib
String
yang tidak dapat diubah
Jalur relatif pusat data vSphere.
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-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-1"
vCenter.cluster
Wajib
String
yang tidak dapat diubah
Jalur relatif dari cluster vSphere yang mewakili host ESXi tempat VM cluster admin Anda akan dijalankan. Cluster vSphere ini merepresentasikan subset host ESXi fisik di pusat data vCenter Anda.
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-vsphere-cluster"
Jika tidak, nilainya adalah jalur relatif yang mencakup satu atau beberapa folder beserta nama cluster vSphere.
Contoh:
vCenter: cluster: "clusters/vsphere-cluster-1"
vCenter.resourcePool
Wajib
String
yang tidak dapat diubah
Kumpulan resource vCenter untuk VM cluster admin Anda.
Jika Anda ingin menggunakan kumpulan resource default, tetapkan ini ke
VSPHERE_CLUSTER/Resources
.
Contoh:
vCenter: resourcePool: "my-vsphere-cluster/Resources"
Jika ingin menggunakan kumpulan resource yang telah Anda buat, tetapkan ini ke jalur relatif kumpulan resource Anda.
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-resource-pool"
Jika kumpulan resource Anda disusun bertingkat dalam kumpulan resource lain, tetapkan ini ke jalur lengkap ke kumpulan resource Anda.
Contoh:
vCenter: resourcePool: "my-vsphere-cluster/Resources/parent-resource-pool/child-resource-pool"
vCenter.datastore
Wajib
String
yang tidak dapat diubah
Nama datastore vSphere untuk cluster admin Anda.
Nilai yang Anda tentukan harus berupa nama, bukan jalur. Jangan sertakan folder apa pun di dalam nilai.
Contoh:
vCenter: datastore: "my-datastore"
vCenter.caCertPath
Wajib
Dapat diubah
String
Jalur sertifikat CA untuk server vCenter Anda.
Untuk informasi selengkapnya, lihat Mendapatkan sertifikat CA vCenter.
Untuk mengetahui informasi tentang cara memperbarui kolom ini untuk cluster yang ada, lihat Memperbarui referensi sertifikat vCenter.
Contoh:
vCenter: caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"
vCenter.credentials.fileRef.path
String
yang diperlukan
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
untuk memperbarui kolom ini di cluster yang ada.
Untuk mengetahui informasi tentang cara memperbarui kredensial vCenter, lihat Memperbarui kredensial cluster.
Contoh:
vCenter: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
vCenter.credentials.fileRef.entry
String
yang diperlukan
Nama blok kredensial, di file konfigurasi kredensial, yang berisi nama pengguna dan sandi akun pengguna vCenter Anda.
Anda dapat menggunakan gkectl update
untuk memperbarui kolom ini di cluster yang ada.
Untuk mengetahui informasi tentang cara memperbarui kredensial vCenter, lihat Memperbarui kredensial cluster.
Contoh:
vCenter: credentials: fileRef: entry: "vcenter-creds"
vCenter.folder
Opsional
Tidak dapat diubah
String
Default: Folder lebar pusat data
Jalur relatif folder vSphere yang telah Anda buat. Folder ini akan menyimpan VM cluster admin Anda.
Jika Anda tidak menentukan nilai, VM cluster admin Anda akan ditempatkan ke dalam /.../DATA_CENTER/vm/
.
Jika Anda menentukan nilai, nilai tersebut akan relatif terhadap /.../DATA_CENTER/vm/
.
Nilainya dapat berupa nama folder.
Contoh:
vCenter: folder: "my-folder"
Jika folder vm Anda berada di folder vm lain, tetapkan ini ke jalur lengkap ke folder vm Anda.
Contoh:
vCenter: folder: "/my-datacenter/vm/vm-folder/nested-vm-folder"
Perhatikan bahwa Anda harus menyertakan "/" pertama di jalur lengkap folder vm Anda.
vCenter.dataDisk
Wajib
String
yang tidak dapat diubah
GKE di VMware membuat disk virtual machine (VMDK) untuk menyimpan
data objek Kubernetes. Penginstal akan membuat VMDK untuk Anda, tetapi Anda harus
memberikan jalur relatif untuk VMDK di kolom vCenter.dataDisk
.
Nilai yang Anda tentukan bersifat relatif terhadap /.../DATA_CENTER/datastore/
.
Jika Anda ingin VMDK berada dalam
folder /.../DATA_CENTER/datastore/
, nilainya adalah
nama VMDK.
Jika Anda menetapkan adminMaster.replicas
ke 3
, Anda TIDAK boleh menetapkan kolom ini. Untuk
cluster admin dengan ketersediaan tinggi (HA), jalur disk data untuk 3 mesin bidang kontrol admin
akan dibuat secara otomatis di bagian /anthos/ADMIN_CLUSTER/default/
`.
Contoh:
vCenter: dataDisk: "my-disk.vmdk"
Jika tidak, nilai adalah jalur relatif yang mencakup satu atau beberapa folder beserta nama VMDK.
Contoh:
vCenter: dataDisk: "data-disks/data-disk-1.vmdk"
Jika Anda menggunakan datastore vSAN, VMDK harus berada di folder yang telah Anda buat.
Anda dapat menggunakan govc
untuk membuat folder:
govc datastore.mkdir -namespace=true data-disks
network
Wajib
Tidak dapat diubah
Bagian ini menyimpan informasi tentang jaringan cluster admin Anda.
network.hostConfig
Tidak dapat diubah
Bagian ini wajib ada jika satu atau beberapa kondisi berikut terpenuhi:
network.ipMode.type
disetel ke"static"
loadBalancer.kind
disetel ke"Seesaw"
adminMaster.replicas
disetel ke3
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.
network.hostConfig.dnsServers
Wajib diisi jika bagian network.hostConfig
terisi.
Array string yang tidak dapat diubah
Array string.
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 diisi jika bagian network.hostConfig
terisi.
Array string yang 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 VM. Domain ini digunakan sebagai bagian dari daftar penelusuran 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/admin-cluster-ipblock.yaml"
network.serviceCIDR
Wajib
Tidak dapat diubah
String
Rentang terkecil yang mungkin: /24
Rentang terbesar yang mungkin: /12
Sudah diisi sebelumnya: "10.96.232.0/24"
Default: "10.96.232.0/24"
Rentang alamat IP, dalam format CIDR, yang akan digunakan untuk Layanan di cluster Anda.
Contoh:
network: serviceCIDR: "10.96.232.0/24"
network.podCIDR
Wajib
Tidak dapat diubah
String
Rentang terkecil yang memungkinkan: /18
Rentang terbesar yang mungkin: /8
Sudah diisi sebelumnya: "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.
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
String
yang tidak dapat diubah
Nama jaringan vSphere untuk node cluster 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: "/data-centers/data-center-1/network/my-network"
network.controlPlaneIPBlock
Jika Anda ingin membuat cluster admin dengan ketersediaan tinggi, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
Cluster admin dengan ketersediaan tinggi memiliki tiga node yang menjalankan komponen bidang kontrol.
Jika mengisi bagian ini, Anda juga harus menetapkan
adminMaster.replicas
ke 3
.
network.controlPlaneIPBlock.netmask
Diperlukan untuk bidang kontrol ketersediaan tinggi
Tidak dapat diubah
String
Netmask untuk jaringan yang memiliki node bidang kontrol Anda.
Contoh:
network: controlPlaneIPBlock: netmask: "255.255.255.0"
network.controlPlaneIPBlock.gateway
Diperlukan untuk bidang kontrol ketersediaan tinggi
Tidak dapat diubah
String
Alamat IP gateway default untuk node bidang kontrol Anda.
Contoh:
network: controlPlaneIPBlock: gateway: "172.16.22.1"
network.controlPlaneIPBlock.ips
Diperlukan untuk bidang kontrol dengan ketersediaan tinggi
Array yang tidak dapat diubah
Array yang terdiri dari tiga objek, yang masing-masing memiliki alamat IP dan nama host opsional.
Ini adalah alamat IP yang akan ditetapkan ke node bidang kontrol.
Contoh:
network: controlPlaneIPBlock: ips: - ip: "172.16.22.6" hostname: "admin-cp-vm-1" - ip: "172.16.22.7" hostname: "admin-cp-vm-2" - ip: "172.16.22.8" hostname: "admin-cp-vm-3"
loadBalancer
Bagian ini menyimpan informasi tentang load balancer untuk cluster admin.
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 admin.
Contoh:
loadBalancer: vips: controlplaneVIP: "203.0.113.3"
loadBalancer.kind
Wajib
Tidak dapat diubah
String
Diisi otomatis: "MetalLB"
String. Tetapkan ini ke "ManualLB"
, "F5BigIP"
, "Seesaw"
, atau "MetalLB"
Jika adminMaster.replicas
ditetapkan ke 3
, Anda tidak dapat menggunakan load balancer Seesaw.
Contoh:
loadBalancer: kind: "MetalLB"
loadBalancer.manualLB
Jika Anda menetapkan loadbalancer.kind
ke "ManualLB"
, isi bagian ini. Jika tidak,
hapus bagian ini.
Tidak dapat diubah
loadBalancer.manualLB.ingressHTTPNodePort
Hapus kolom ini dari file konfigurasi Anda. Nama ini tidak digunakan di cluster admin.
loadBalancer.manualLB.ingressHTTPSNodePort
Hapus kolom ini dari file konfigurasi Anda. Nama ini tidak digunakan di cluster admin.
loadBalancer.manualLB.konnectivityServerNodePort
Hapus kolom ini dari file konfigurasi Anda. Nama ini tidak digunakan di cluster admin.
loadBalancer.manualLB.controlPlaneNodePort
Wajib ada jika loadBalancer.kind
= "ManualLB"
dan adminMaster.replicas
= 1
Tidak dapat diubah
Bilangan bulat
Diisi otomatis: 30968
Server Kubernetes API di cluster admin diekspos oleh Layanan Kubernetes. Anda harus memilih nilai nodePort
untuk Layanan.
Tetapkan kolom ini ke nilai nodePort
.
Contoh:
loadBalancer: manualLB: controlPlaneNodePort: 30968
loadBalancer.f5BigIP
Jika Anda menetapkan loadbalancer.kind
ke "f5BigIP"
, isi bagian ini. Jika tidak,
hapus bagian ini.
loadBalancer.f5BigIP.address
Wajib jika loadBalancer.kind
= "f5BigIp"
Tidak dapat diubah
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"
Dapat Diubah
String
Jalur file konfigurasi 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.
Anda dapat menggunakan gkectl update
untuk memperbarui kolom ini di cluster yang ada.
Untuk mengetahui informasi tentang cara memperbarui kredensial BIG-IP F5, lihat Memperbarui kredensial cluster.
Contoh:
loadBalancer: f5BigIP: credentials: fileRef: path: ""my-config-folder/admin-creds.yaml"
loadBalancer.f5BigIP.credentialsfileRef.entry
Wajib jika loadBalancer.kind
= "f5BigIp"
Dapat Diubah
String
Nama blok kredensial, di file konfigurasi kredensial, yang berisi nama pengguna dan sandi akun Big-IP F5 Anda.
Anda dapat menggunakan gkectl update
untuk memperbarui kolom ini di cluster yang ada.
Untuk mengetahui informasi tentang cara memperbarui kredensial BIG-IP F5, lihat Memperbarui kredensial cluster.
Contoh:
loadBalancer: f5BigIP: credentials: fileRef: entry: "f5-creds"
loadBalancer.f5BigIP.partition
Wajib jika loadBalancer.kind
= "f5BigIp"
Tidak dapat diubah
String
Nama partisi BESAR-IP yang Anda buat untuk cluster admin.
Contoh:
loadBalancer: f5BigIP: partition: "my-f5-admin-partition"
loadBalancer.f5BigIP.snatPoolName
Opsional
Relevan jika loadBalancer.kind
= "f5BigIp"
Tidak dapat diubah
String
Jika Anda menggunakan SNAT, nama kumpulan SNAT Anda. Jika tidak menggunakan SNAT, hapus kolom ini.
Contoh:
loadBalancer: f5BigIP: snatPoolName: "my-snat-pool"
loadBalancer.seesaw
Jika Anda menetapkan loadbalancer.kind
ke "Seesaw"
, isi bagian ini. Jika tidak,
hapus bagian ini.
Tidak dapat diubah
Untuk mengetahui informasi tentang cara menyiapkan load balancer Seesaw, lihat Paket load balancing 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/admin-seesaw-ipblock.yaml"
loadBalancer.seesaw.vrid
Wajib jika loadBalancer.kind
= "Seesaw"
Tidak dapat diubah
Bilangan bulat
Nilai yang memungkinkan: 1 - 255
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 ada jika loadBalancer.kind
= "Seesaw"
Tidak dapat diubah
Bilangan bulat
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"
Mutable
Integer
Terisi otomatis: 2
Default:
Jumlah CPU untuk setiap VM Seesaw.
Contoh:
loadBalancer: seesaw: cpus: 8
loadBalancer.seesaw.memoryMB
Wajib jika loadBalancer.kind
= "Seesaw"
Dapat Diubah
Bilangan Bulat
Diisi otomatis: 3072
Default: 1024
Jumlah mebibyte memori untuk setiap Seesaw VM.
Contoh:
loadBalancer: seesaw: memoryMB: 8192
loadBalancer.seesaw.vCenter.networkName
Opsional
Relevan jika loadBalancer.kind
= "Seesaw"
Tidak dapat diubah
String
Nama jaringan vCenter yang berisi VM Seesaw Anda.
Contoh:
loadBalancer: seesaw: vCenter: networkName: "my-seesaw-network"
loadBalancer.seesaw.enableHA
Opsional
Relevan jika loadBalancer.kind
= "Seesaw"
Tidak dapat diubah
Boolean
Terisi otomatis: false
Default: false
Jika Anda ingin membuat load balancer Seesaw yang sangat tersedia (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
Relevan jika loadBalancer.kind
= "Seesaw"
Tidak dapat diubah
Boolean
Prapopulatd: false
Default: false
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
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 admin 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. Tindakan ini akan melindungi Anda agar tidak kehilangan bidang kontrol cluster admin. Misalnya, Anda hanya memiliki tiga host ESXi, dan node bidang kontrol cluster admin Anda berada di host ESXi yang gagal. Aturan DRS akan mencegah node bidang kontrol ditempatkan pada salah satu dari dua host ESXi yang tersisa.
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
.
adminMaster
Pratinjau
Opsional
Tidak dapat diubah
Edit bagian ini jika Anda ingin melakukan salah satu hal berikut:
- Tentukan CPU untuk node bidang kontrol dari cluster admin
- Menentukan memori untuk node bidang kontrol dari cluster admin
- Membuat cluster admin dengan ketersediaan tinggi
Jika tidak, biarkan nilai yang telah diisi otomatis.
adminMaster.cpus
Pratinjau
Opsional
Tidak dapat diubah
Bilangan bulat
Diisi otomatis: 4
Default: 4
Jumlah vCPU untuk setiap node bidang kontrol di cluster admin.
Contoh:
adminMaster: cpus: 4
adminMaster.memoryMB
Pratinjau
Opsional
Tidak dapat diubah
Bilangan bulat
Diisi otomatis: 16384
Default: 16384
Jumlah mebibyte memori untuk setiap node bidang kontrol di cluster admin.
Contoh:
adminMaster: memoryMB: 16384
adminMaster.replicas
Opsional
Tidak dapat diubah
Bilangan bulat
Nilai yang memungkinkan: 1 atau 3
Terisi otomatis: 1
Default: 1
Jumlah node bidang kontrol di cluster admin. Tetapkan atribut ini ke 3
jika Anda
ingin membuat cluster admin dengan ketersediaan tinggi. Jika tidak, tetapkan ke 1
.
Jika menetapkannya ke 3
, Anda juga harus mengisi
bagian network.controlPlaneIPBlock
dan
bagian network.hostConfig
.
Jika ditetapkan ke 3
, Anda tidak dapat menggunakan load balancer Seesaw.
Contoh:
adminMaster: replicas: 3
addonNode.autoResize.enabled
Opsional
Dapat diubah
Boolean
Terisi otomatis: false
Default: false
Tetapkan string ini ke true
untuk mengaktifkan pengubahan ukuran otomatis node add-on di
cluster admin. Lainnya menetapkannya ke false
.
Untuk memperbarui nilai kolom ini, gunakan gkectl update admin
.
Contoh:
addonNode: autoResize: enabled: true
proxy
Jika jaringan Anda berada di belakang server proxy, isi bagian ini. Jika tidak,
hapus bagian ini atau biarkan sebagai komentar. Server proxy yang Anda tentukan
di sini digunakan oleh cluster pengguna yang dikelola cluster admin ini.
Tidak dapat diubah
proxy.url
Wajib diisi jika bagian proxy
terisi.
String yang tidak dapat diubah
Alamat HTTP server proxy Anda. Sertakan nomor port meskipun nomor port sama dengan port default skema.
Contoh:
proxy: url: "http://my-proxy.example.local:80"
Server proxy yang Anda tentukan di sini digunakan oleh GKE Anda di cluster
VMWare. Selain itu, workstation admin Anda akan otomatis dikonfigurasi untuk menggunakan server proxy yang sama ini, kecuali jika Anda menetapkan variabel lingkungan HTTPS_PROXY
di workstation admin.
Jika menentukan proxy.url
, Anda juga harus menentukan proxy.noProxy
.
Setelah ditetapkan, konfigurasi proxy untuk cluster admin tidak dapat diubah atau dihapus, kecuali jika cluster dibuat ulang.
proxy.noProxy
Opsional
String yang tidak dapat diubah
String
Daftar alamat IP, rentang alamat IP, nama host, dan nama domain yang dipisahkan koma yang tidak boleh melalui server proxy. Saat GKE di VMware mengirim permintaan ke salah satu alamat, host, atau domain tersebut, permintaan tersebut akan dikirim secara langsung.
Contoh:
proxy: noProxy: "10.151.222.0/24,my-host.example.local,10.151.2.1"
privateRegistry
Jika Anda memiliki registry container pribadi, isi bagian ini. Jika tidak, hapus bagian ini atau biarkan sebagai komentar.
privateRegistry.address
Diperlukan untuk registry pribadi
Tidak dapat diubah
String
Alamat IP atau FQDN (Fully Qualified Domain Name) komputer yang menjalankan registry 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
Jalur file konfigurasi kredensial yang menyimpan nama pengguna dan sandi akun yang dapat digunakan GKE di VMware untuk mengakses registry pribadi Anda.
Contoh:
privateRegistry: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
privateRegistry.credentials.fileRef.entry
Diperlukan untuk registry pribadi
Dapat diubah
String
Nama blok kredensial, di file konfigurasi kredensial, yang berisi nama pengguna dan sandi akun registry pribadi Anda.
privateRegistry: credentials: fileRef: entry: "private-registry-creds"
privateRegistry.caCertPath
Diperlukan untuk registry pribadi
Dapat diubah
String
Saat runtime container mengambil image dari registry pribadi Anda, registry harus membuktikan identitasnya dengan memberikan sertifikat. Sertifikat registry ditandatangani oleh certificate authority (CA). Runtime container menggunakan sertifikat CA untuk memvalidasi sertifikat registry.
Tetapkan kolom ini ke jalur sertifikat CA.
Contoh:
privateRegistry: caCertPath: "my-cert-folder/registry-ca.crt"
componentAccessServiceAccountKeyPath
Wajib
Dapat diubah
String
Jalur file kunci JSON untuk akun layanan akses komponen Anda.
Contoh:
componentAccessServiceAccountKeyPath: "my-key-folder/access-key.json"
gkeConnect
Wajib
Dapat diubah
Saat Anda mengisi bagian gkeConnect
, cluster admin akan otomatis
terdaftar ke fleet setelah
dibuat. Bagian ini menyimpan informasi tentang project Google Cloud dan akun layanan yang diperlukan untuk mendaftarkan cluster.
Selama pembuatan atau update cluster, beberapa kebijakan RBAC dikonfigurasi di cluster admin. Kebijakan RBAC ini diperlukan agar Anda dapat membuat cluster pengguna di Konsol 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.registerServiceAccountKeyPath
Wajib
Dapat diubah
String
Jalur file kunci JSON untuk akun layanan connect-register Anda.
Contoh:
gkeConnect: registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"
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 admin di GKE On-Prem API, Anda dapat menggunakan alat
standar—Google Cloud Console, Google Cloud CLI, atau
Terraform—untuk mengupgrade
cluster pengguna yang dikelola cluster admin. Dengan mendaftarkan cluster, Anda juga dapat menjalankan perintah gcloud
untuk
mendapatkan informasi tentang cluster Anda.
Setelah Anda menambahkan bagian ini dan membuat atau mengupdate cluster admin, 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
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 stackdriver.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.
Bagian ini wajib ada secara default. Artinya, jika tidak menyertakan bagian ini,
Anda harus menyertakan flag --skip-validation-stackdriver
saat menjalankan
gkectl create admin
.
Bagian ini diperlukan dalam cluster admin jika Anda ingin mengelola siklus proses cluster pengguna menggunakan klien GKE On-Prem API.
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 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 mengetahui informasi tentang cara memperbarui kolom ini di cluster yang ada, lihat Merotasi kunci akun layanan.
Contoh:
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.disableVsphereResourceMetrics
Opsional
Dapat diubah
Relevan untuk Logging dan Pemantauan
Boolean
Terisi otomatis: false
Default: false
Tetapkan ini ke true
untuk menonaktifkan pengumpulan metrik dari vSphere.
Jika tidak, tetapkan ke false
.
Bagian ini diperlukan dalam cluster admin jika Anda ingin mengelola siklus proses cluster pengguna di konsol Google Cloud.
Contoh:
stackdriver: disableVsphereResourceMetrics: 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.
Dapat diubah
Bagian ini diperlukan dalam cluster admin jika Anda ingin mengelola siklus proses cluster pengguna dalam menggunakan klien GKE On-Prem API.
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 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 mengetahui informasi tentang cara memperbarui kolom ini di cluster yang ada, lihat Merotasi kunci akun layanan.
Contoh:
cloudAuditLogging: serviceAccountKeyPath: "my-key-folder/audit-log-key.json"
clusterBackup.datastore
Pratinjau
Opsional
Dapat Diubah
String
Jika Anda ingin mengaktifkan pencadangan cluster admin, tetapkan ini ke datastore vSphere tempat Anda ingin menyimpan cadangan cluster.
Contoh:
clusterBackup: datastore: "my-datastore"
autoRepair.enabled
Opsional
Dapat diubah
Boolean
Terisi otomatis: benar
Tetapkan string ini ke true
untuk mengaktifkan
perbaikan otomatis node.
Jika tidak, tetapkan ini ke false
.
Untuk memperbarui nilai kolom ini, gunakan gkectl update admin
.
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.
Tidak dapat diubah
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
.
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
.
Contoh:
secretsEncryption: generatedKey: disabled: false
osImageType
Opsional
String
Nilai yang mungkin: "ubuntu_containerd" atau "cos"
Diisi otomatis: "ubuntu_containerd"
Default: "ubuntu_containerd"
Jenis OS image yang akan dijalankan di node cluster admin.
Contoh:
osImageType: "cos"