Jika Anda mengalami masalah saat mengupdate Google Distributed Cloud, bagian berikut dapat membantu Anda memecahkan masalah tersebut. Untuk mengetahui informasi selengkapnya tentang setelan yang dapat diupdate, lihat Hal yang dapat dan tidak dapat diupdate di cluster.
Batas waktu update
Batas waktu update dihitung secara dinamis berdasarkan resource yang akan diupdate. Namun, perhitungan ini tidak selalu akurat. Saat update mencapai batas waktu, error yang mirip dengan berikut akan ditampilkan:
Di cluster pengguna:
Failed to update the cluster:...timed out waiting for the condition...Di cluster admin:
Failed to update the admin cluster:...timed out waiting for the condition...
Error batas waktu ini dapat diabaikan dengan aman dan Anda dapat mencoba kembali perintah update. Jika Anda mencoba kembali perintah dan perintah tersebut mencapai batas waktu lagi dengan pesan error yang sama, hubungi Cloud Customer Care.
Update berisi beberapa perubahan
Perintah gkectl update admin dan gkectl update cluster tidak mengizinkan update beberapa setelan dalam satu perintah. Jika konfigurasi berisi perbedaan dengan beberapa setelan yang diubah, dan error yang mirip dengan contoh berikut ditampilkan:
Update summary for cluster X:
antiAffinityGroups: enabled to be set to true from false &config.AAGSpec{
- Enabled: false,
+ Enabled: true,
}
user master cpu to be set to 5 from 4 config.NodePoolProps{
Role: "master",
MachineType: "standard-master",
- CPUs: 4,
+ CPUs: 5,
MemoryMB: 8192,
Replicas: 3,
... // 2 identical fields
Labels: nil,
NodeTaints: nil,
- Vsphere: nil,
&config.NodePoolVsphereSpec{Datastore: "lifecycle-workloads1-datastore1"},
+ Vsphere: nil,
BootDiskSizeGB: nil,
OSImageType: "",
... // 5 identical fields
}
Exit with error:
Failed to update the cluster: the update contains multiple changes. Please
update only one feature at a time
Error ini dapat terjadi karena berbagai alasan, termasuk alasan berikut:
- Kesalahan atau konfigurasi yang salah.
- Anda menjalankan
gkectl upgradesebelumnya dengan perbedaan konfigurasi, dan mengharapkan perubahan diterapkan.gkectl upgradetidak menerapkan perbedaan konfigurasi apa pun kecuali peningkatan versi.
- Anda mengedit konfigurasi untuk update fitur lain sebelumnya, tetapi lupa menjalankan perintah
gkectl update.
Jika Anda mengalami perilaku ini, tinjau perbedaan dalam pesan error dan update setelan yang diperlukan satu per satu dengan beberapa perintah gkectl update. Untuk membantu
mengidentifikasi perubahan, Anda dapat menggunakan gkectl get-config untuk
membuat file konfigurasi dari cluster
dan melihat status serta konfigurasi yang ada.
Perubahan yang tidak didukung
Perintah gkectl update cluster dan gkectl update admin mengabaikan perubahan yang tidak didukung, dan menampilkan pesan error yang mirip dengan contoh berikut:
detected unsupported changes: (-current +desired)
...
- AdvancedNetworking: &true,
+ AdvancedNetworking: &false,
...
, which will be ignored
Jika Anda mengalami perilaku ini, tinjau perbedaan dalam pesan error dan lakukan tindakan berikut:
- Jika perubahan tidak diinginkan, edit file YAML konfigurasi dan update hanya dengan perubahan yang benar dan diinginkan.
- Dalam contoh sebelumnya, jika Anda tidak ingin menonaktifkan
AdvancedNetworking, tetapkanadvancedNetworking: truedi file YAML konfigurasi.
- Dalam contoh sebelumnya, jika Anda tidak ingin menonaktifkan
- Jika perubahan diinginkan, error menunjukkan bahwa perubahan tersebut tidak didukung. Lakukan salah satu tindakan berikut:
- Buat ulang cluster jika berlaku.
- Hubungi Dukungan Google.
Image OS tidak ada
Perintah gkectl update cluster dan gkectl update admin mungkin gagal dengan kegagalan pemeriksaan awal OS Images yang mirip dengan contoh berikut:
Di cluster pengguna:
- Validation Category: OS Images - [FAILURE] User cluster OS images exist: os images [xxxx] don't exist, please run `gkectl prepare` to upload os images.Di cluster admin:
- Validation Category: OS Images - [FAILURE] Admin cluster OS images exist: os images [xxxx] don't exist, please run `gkectl prepare` to upload os images.
Error ini dapat terjadi jika image OS dihapus secara tidak terduga di lingkungan vCenter Anda, misalnya oleh tugas pembersihan berkala.
Untuk mengimpor ulang image OS impor, jalankan perintah gkectl prepare, sebagai berikut:
gkectl prepare \
--bundle-path /var/lib/gke/bundles/gke-onprem-vsphere-TARGET_VERSION.tgz \
--kubeconfig ADMIN_CLUSTER_KUBECONFIG \
--skip-upload-container-images
Ruang kosong datastore tidak cukup untuk node pool baru
Saat Anda menambahkan node pool baru, perintah gkectl update cluster mungkin gagal dengan error pemeriksaan awal VSphere Datastore FreeSpace yang mirip dengan contoh berikut:
- [FAILURE] VSphere Datastore FreeSpace: vCenter datastore: xxxx insufficient
FreeSpace, requires at least xxx GB
Kegagalan ini menunjukkan bahwa datastore tidak memiliki ruang kosong yang cukup untuk menjalankan node pool baru. Menggunakan salah satu opsi berikut akan membantu menyediakan ruang agar operasi berhasil:
- Kosongkan ruang dari datastore.
- Konfigurasi datastore
nodePools[].vsphere.datastoreyang berbeda untuk node pool.
Langkah berikutnya
Jika Anda memerlukan bantuan tambahan, hubungi Cloud Customer Care.
Anda juga dapat melihat Mendapatkan dukungan untuk mengetahui informasi selengkapnya tentang resource dukungan, termasuk hal berikut:
- Persyaratan untuk membuka kasus dukungan.
- Alat untuk membantu Anda memecahkan masalah, seperti log dan metrik.
- Komponen,versi, danfitur Google Distributed Cloud untuk VMware (khusus software) yang didukung.