Pengantar pemecahan masalah

Jika Anda mengalami kesulitan dengan Config Sync, halaman ini akan memperkenalkan Anda pada beberapa alat dan prosedur umum yang dapat membantu Anda mengidentifikasi dan menyelesaikan masalah yang Anda alami.

Mengupgrade ke versi yang didukung

Sebaiknya upgrade Config Sync ke versi yang didukung. Mengupgrade sering kali menyelesaikan masalah umum dan memberi Anda akses ke fungsi terbaru.

Menggunakan alat command line nomos

Alat command line nomos memberikan insight penting tentang penyiapan Config Sync Anda. Perintah yang dijelaskan di bagian berikut sangat membantu saat Anda mencoba menentukan sumber masalah atau saat Anda perlu bekerja sama dengan Layanan Pelanggan Cloud.

Melihat status Config Sync

Perintah nomos status memberi Anda data dan error gabungan untuk membantu Anda memahami apa yang terjadi dengan penginstalan Config Sync Anda. Informasi berikut tersedia dengan nomos status:

  • Status penginstalan per cluster
  • Error sinkronisasi (baik membaca dari Git maupun merekonsiliasi perubahan)

Membuat laporan bug

Jika Anda memiliki masalah dengan Config Sync yang memerlukan bantuan dari Layanan Pelanggan Cloud, Anda dapat memberikan informasi proses debug yang berharga kepada mereka dengan menggunakan nomos bugreport perintah.

Perintah ini menghasilkan file zip dengan stempel waktu yang berisi informasi tentang set cluster Kubernetes dalam konteks kubectl Anda. File ini juga berisi log dari Pod Config Sync. File ini tidak berisi informasi dari resource yang disinkronkan dengan Config Sync.

Melihat dasbor ringkasan

Dasbor Config Sync memberi Anda ringkasan status paket yang dikelola Config Sync dan status resource dalam paket ini. Menjelajahi dasbor ini dapat membantu Anda mendapatkan ringkasan cepat tentang status penginstalan Config Sync dan menemukan paket yang memiliki masalah.

  • Untuk mengakses dasbor, di Cloud de Confiance konsol, buka halaman Config di bagian Features:

    Buka Config

Menggunakan pemantauan dan analisis log

Memantau Config Sync dan menjelajahi log-nya dapat membantu Anda menentukan sumber bug dan memahami perilaku yang tidak terduga dengan lebih baik.

Memahami metrik Config Sync

Gunakan metrik Config Sync untuk mendapatkan visibilitas tentang kesehatan Config Sync.

Memantau objek RootSync dan RepoSync

Saat Anda menginstal Config Sync menggunakan Cloud de Confiance konsol atau Google Cloud CLI, Config Sync akan otomatis membuat objek RootSync untuk Anda. Saat Anda Mengonfigurasi sinkronisasi dari beberapa repositori, Anda dapat membuat objek RepoSync yang berisi informasi konfigurasi tentang repositori namespace Anda.

Memantau objek ini dapat mengungkapkan informasi berharga tentang status Config Sync. Untuk mempelajari lebih lanjut, lihat Memantau objek RootSync dan RepoSync.

Menggunakan indikator tingkat layanan (SLI)

Untuk menerima notifikasi saat Config Sync tidak berfungsi seperti yang diharapkan, gunakan SLI Config Sync.

Log kueri

Anda dapat menggunakan Logs Explorer untuk mengambil, melihat, dan menganalisis data log untuk Config Sync. Log ini dapat berisi data historis berharga yang tidak diambil oleh nomos bugreport saat Pod operator atau rekonsiliasi dimulai ulang. Untuk contoh kueri yang mungkin membantu Anda mendiagnosis masalah, lihat Kueri log Config Sync.

Memeriksa resource dengan alat command line kubectl

Config Sync terdiri dari beberapa resource kustom yang dapat Anda kueri menggunakan perintah kubectl. Perintah ini membantu Anda memahami status setiap objek Config Sync.

Anda harus mengetahui informasi berikut tentang resource Kubernetes yang dikelola Config Sync:

  • config-management-system adalah namespace yang kami gunakan untuk menjalankan semua komponen sistem inti Config Sync.
  • configmanagement.gke.io dan configsync.gke.io adalah grup API yang kami gunakan untuk semua resource kustom.

Contoh

Bagian berikut menunjukkan cara Anda dapat menggunakan perintah kubectl untuk memeriksa Config Sync.

Mencantumkan resource kustom

  • Anda bisa mendapatkan daftar lengkap resource kustom dengan menjalankan perintah berikut:

    kubectl api-resources | grep -E "configmanagement.gke.io|configsync.gke.io"
    
  • Resource kustom individual dapat digunakan dengan menjalankan perintah berikut:

    kubectl get RESOURCE -o yaml.
    

    Ganti RESOURCE dengan nama resource yang ingin Anda kueri.

    Misalnya, output dari perintah berikut memungkinkan Anda memeriksa status objek RootSync:

    kubectl get rootsync -n config-management-system -o yaml
    

Memeriksa anotasi token objek

Anda mungkin ingin mengetahui kapan terakhir kali objek Kubernetes terkelola diperbarui oleh Config Sync. Setiap objek terkelola diberi anotasi dengan hash commit Git saat terakhir kali diubah, dan jalur ke konfigurasi yang berisi modifikasi.

Misalnya, untuk mendapatkan anotasi ClusterRoleBinding bernama namespace-readers, jalankan perintah berikut:

kubectl get clusterrolebinding namespace-readers

Outputnya mirip dengan hal berikut ini:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  annotations:
    configmanagement.gke.io/source-path: cluster/namespace-reader-clusterrolebinding.yaml
    configmanagement.gke.io/token: bbb6a1e2f3db692b17201da028daff0d38797771
  name: namespace-readers
...

Untuk mengetahui informasi selengkapnya, lihat label dan anotasi.

Mempercepat diagnosis dengan Gemini Cloud Assist

Terkadang, penyebab masalah Anda tidak langsung terlihat, bahkan setelah menggunakan alat yang dibahas di bagian sebelumnya. Menyelidiki kasus yang kompleks dapat menghabiskan waktu dan memerlukan keahlian mendalam. Untuk skenario seperti ini, Gemini Cloud Assist dapat membantu. Gemini Cloud Assist dapat otomatis mendeteksi pola tersembunyi, menampilkan anomali, dan memberikan ringkasan untuk membantu Anda dengan cepat menentukan kemungkinan penyebabnya.

Mengakses Gemini Cloud Assist

Untuk mengakses Gemini Cloud Assist, selesaikan langkah-langkah berikut:

  1. Di Cloud de Confiance konsol, buka halaman mana pun.
  2. Di Cloud de Confiance toolbar konsol, klik Open or close Gemini Cloud Assist chat.

    Panel Cloud Assist akan terbuka. Anda dapat mengklik contoh perintah jika ditampilkan, atau Anda dapat memasukkan perintah di kolom Enter a prompt.

Mempelajari contoh perintah

Untuk membantu Anda memahami cara Gemini Cloud Assist dapat membantu Anda, berikut beberapa contoh perintah:

Tema Skenario Contoh perintah Cara Gemini Cloud Assist dapat membantu
Penyiapan awal Engineer platform menyiapkan Config Sync untuk pertama kalinya agar dapat mengelola cluster GKE dari repositori Git. Bagaimana cara menyiapkan Config Sync untuk menyinkronkan manifes dari repositori GitHub ke cluster GKE saya? Gemini Cloud Assist memberikan panduan langkah demi langkah untuk menyiapkan Config Sync, yang mencakup pendaftaran fleet dan mengaktifkan fitur, serta menjelaskan detail seperti URL repositori, cabang, jalur, dan metode autentikasi (misalnya, public, token, atau ssh).
Memecahkan masalah error sinkronisasi Developer melakukan commit manifes baru, tetapi resource gagal diterapkan ke cluster, dan status sinkronisasi menampilkan kode error. Objek RootSync Config Sync saya menampilkan "KNV2009: the server could not find the requested resource". Apa artinya dan bagaimana cara memperbaikinya? Gemini Cloud Assist menganalisis kode error, yang menjelaskan bahwa kode tersebut umumnya menunjukkan bahwa Config Sync tidak dapat menemukan atau berinteraksi dengan resource Kubernetes yang diharapkan. Kemudian, Gemini Cloud Assist menjelaskan penyebab umum, termasuk izin RBAC yang tidak ada, melebihi batas ukuran objek resource, jalur direktori yang salah, konflik inventaris eksternal, dan masalah dengan resource yang tidak dikelola, serta memberikan langkah-langkah pemecahan masalah khusus untuk setiap penyebab.
Mengelola beberapa tim Organisasi perlu mengizinkan tim aplikasi mengelola konfigurasi mereka sendiri di namespace tertentu tanpa memberi mereka akses ke repositori platform pusat. Apa perbedaan antara objek RootSync dan RepoSync di Config Sync? Kapan saya harus menggunakan RepoSync?

Gemini Cloud Assist menjelaskan perbedaan inti antara objek RootSync dan RepoSync: Objek RootSync memiliki cakupan cluster dan biasanya digunakan oleh administrator untuk konfigurasi di seluruh cluster, sedangkan objek RepoSync memiliki cakupan namespace dan dirancang untuk tim aplikasi mengelola resource dalam namespace tertentu, sehingga mendorong delegasi dan multi-tenancy.

Gemini Cloud Assist juga menjelaskan skenario saat objek RepoSync harus digunakan, dengan menekankan manfaatnya untuk multi-tenancy dan mengurangi area miskonfigurasi yang terpengaruh.

Validasi proaktif Developer ingin memastikan manifes barunya valid sebelum melakukan commit ke repositori untuk menghindari gangguan sinkronisasi dalam produksi. Bagaimana cara memeriksa manifes Kubernetes untuk error Config Sync di mesin lokal sebelum saya mengirimkannya ke repositori Git? Gemini Cloud Assist menjelaskan cara memeriksa manifes Kubernetes untuk error Config Sync menggunakan alat command line nomos. Gemini Cloud Assist menjelaskan cara menggunakan perintah nomos vet untuk validasi sintaksis dan perintah nomos hydrate untuk melihat pratinjau konfigurasi yang dirender dari Kustomize atau Helm. Gemini Cloud Assist juga menguraikan alur kerja yang direkomendasikan untuk mengintegrasikan pemeriksaan ini sebelum mengirim ke Git.

Untuk informasi selengkapnya, lihat referensi berikut:

Menggunakan Investigasi Gemini Cloud Assist

Selain chat interaktif, Gemini Cloud Assist dapat melakukan analisis yang lebih otomatis dan mendalam melalui Investigasi Gemini Cloud Assist. Fitur ini terintegrasi langsung ke dalam alur kerja seperti Logs Explorer, dan merupakan alat analisis akar masalah yang canggih.

Saat Anda memulai investigasi dari error atau resource tertentu, Gemini Cloud Assist akan menganalisis log, konfigurasi, dan metrik. Gemini Cloud Assist menggunakan data ini untuk menghasilkan pengamatan dan hipotesis yang diberi peringkat tentang kemungkinan akar masalah, lalu memberikan langkah-langkah berikutnya yang direkomendasikan.

Untuk mengetahui informasi selengkapnya, lihat Investigasi Gemini Cloud Assist dalam dokumentasi Gemini.

Membaca dokumentasi pemecahan masalah tambahan

Jika Anda masih mengalami masalah, referensi berikut mungkin bermanfaat:

  • Jika Anda telah menerima pesan error, lihat halaman referensi error untuk mendapatkan saran tentang cara mengatasi error.

  • Periksa apakah masalah yang Anda alami disebabkan oleh masalah umum.

  • Jika Anda mengalami kesulitan di area tertentu, salah satu panduan pemecahan masalah yang ditargetkan yang tercantum di bagian Troubleshoot by issue type pada daftar isi mungkin dapat membantu.

Langkah berikutnya

Jika Anda tidak dapat menemukan solusi untuk masalah Anda dalam dokumentasi, lihat referensi berikut untuk mendapatkan bantuan lebih lanjut: