Pengantar pemecahan masalah

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

Upgrade ke versi yang didukung

Pertimbangkan untuk mengupgrade 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 menghubungi Cloud Customer Care.

Melihat status Config Sync

Perintah nomos status memberikan 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 saat membaca dari Git maupun saat menyelaraskan perubahan)

Buat laporan bug

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

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

Melihat dasbor ringkasan

Dasbor Config Sync memberikan 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 bermasalah.

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

    Buka Config

Menggunakan analisis log dan pemantauan

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

Memahami metrik Config Sync

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

Memantau objek RootSync dan RepoSync

Saat Anda menginstal Config Sync menggunakan konsol Google Cloud 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.

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 sebagaimana mestinya, 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 dicatat oleh nomos bugreport saat Pod operator atau reconciler dimulai ulang. Untuk contoh kueri yang dapat 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 dengan 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 kita 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 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"
    
  • Setiap resource kustom dapat digunakan dengan menjalankan perintah berikut:

    kubectl get RESOURCE -o yaml.
    

    Ganti RESOURCE dengan nama resource yang ingin Anda kueri.

    Misalnya, output 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 objek Kubernetes terkelola terakhir diperbarui oleh Config Sync. Setiap objek terkelola diberi anotasi dengan hash commit Git saat terakhir kali diubah, dan jalur ke konfigurasi yang berisi perubahan.

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 memakan waktu dan memerlukan keahlian yang mendalam. Untuk skenario seperti ini, Gemini Cloud Assist dapat membantu. Fitur ini dapat mendeteksi pola tersembunyi secara otomatis, memunculkan anomali, dan memberikan ringkasan untuk membantu Anda dengan cepat menunjukkan kemungkinan penyebab.

Mengakses Gemini Cloud Assist

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

  1. Di konsol Google Cloud , buka halaman mana pun.
  2. Di toolbar konsol Google Cloud , 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 Masukkan perintah.

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 Seorang 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 saya ke cluster GKE saya? Gemini Cloud Assist memberikan panduan langkah demi langkah untuk menyiapkan Config Sync, yang mencakup pendaftaran armada dan pengaktifan 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 Config Sync RootSync saya menampilkan "KNV2009: the server could not find the requested resource". Apa artinya dan bagaimana cara memperbaikinya? Gemini Cloud Assist menganalisis kode error, menjelaskan bahwa kode tersebut umumnya menunjukkan bahwa Config Sync tidak dapat menemukan atau berinteraksi dengan resource Kubernetes yang diharapkan. Kemudian, dokumen ini menjelaskan penyebab umum, termasuk izin RBAC yang tidak ada, melampaui batas ukuran objek resource, jalur direktori yang salah, konflik inventaris eksternal, dan masalah pada 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 guna mengelola resource dalam namespace tertentu, sehingga mempromosikan pendelegasian dan multitenancy.

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

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 mengetahui apakah ada kesalahan Config Sync di komputer lokal sebelum saya mengirimkannya ke repositori Git? Gemini Cloud Assist menjelaskan cara memeriksa manifes Kubernetes untuk mengetahui error Config Sync menggunakan alat command line nomos. Bagian ini 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 melakukan push ke Git.

Untuk informasi selengkapnya, lihat referensi berikut:

Menggunakan Investigasi Gemini Cloud Assist

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

Saat Anda memulai penyelidikan dari error atau resource tertentu, Gemini Cloud Assist menganalisis log, konfigurasi, dan metrik. Alat ini menggunakan data ini untuk menghasilkan pengamatan dan hipotesis yang diberi peringkat tentang kemungkinan penyebab utama, lalu memberikan langkah selanjutnya yang direkomendasikan kepada Anda. Anda juga dapat mentransfer hasil ini ke Google Cloud kasus dukungan untuk memberikan konteks berharga yang dapat membantu Anda menyelesaikan masalah lebih cepat.

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

Baca dokumentasi pemecahan masalah tambahan

Jika Anda masih mengalami masalah, referensi berikut mungkin bermanfaat:

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

  • 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 Memecahkan masalah menurut jenis masalah dalam daftar isi dapat membantu.

Langkah berikutnya

  • Jika Anda tidak dapat menemukan solusi untuk masalah Anda dalam dokumentasi, lihat Mendapatkan dukungan untuk mendapatkan bantuan lebih lanjut, termasuk saran tentang topik berikut: