Melihat status Config Sync dengan gcloud CLI

Halaman ini menjelaskan cara menggunakan perintah Google Cloud CLI untuk memantau Sinkronisasi Konfigurasi:

  • Gunakan gcloud alpha anthos config sync repo untuk mencantumkan status repositori Anda di beberapa cluster.

  • Gunakan gcloud alpha anthos config sync resources untuk melihat resource yang dikelola oleh Config Sync.

Anda juga dapat melihat informasi serupa di dasbor Config Sync.

Sebelum memulai

Sebelum menggunakan perintah di halaman ini, selesaikan langkah-langkah berikut:

  1. Update komponen Google Cloud CLI:

    gcloud components update
    
  2. Daftarkan cluster Anda jika belum. Jika Anda menginstal dan mengonfigurasi Config Sync melalui Google Cloud Console, Anda dapat melewati langkah ini.

  3. Jika cluster Anda bukan cluster GKE, administrator platform perlu menyiapkan Gateway Connect untuk cluster yang terdaftar.

  4. Tetapkan project Anda:

    gcloud config set project PROJECT_ID
    

    Ganti PROJECT_ID dengan project ID tempat Sinkronisasi Konfigurasi disiapkan dan dijalankan.

Melihat status Config Sync di beberapa cluster

Jika Anda menginstal dan mengonfigurasi Config Sync pada beberapa cluster terdaftar dalam sebuah project, Anda dapat menggunakan gcloud alpha anthos config sync repo untuk mencantumkan status repositori yang sedang disinkronkan di seluruh cluster dan masalah debug dengan Config Sync.

Dibandingkan dengan nomos status, gcloud alpha anthos config sync repo mengelompokkan status berdasarkan repositori, sedangkan perintah nomos status mengelompokkan status berdasarkan cluster.

Mencantumkan semua repositori

Untuk menampilkan daftar semua status repositori Git yang disinkronkan ke cluster terdaftar dalam project saat ini, jalankan perintah berikut:

gcloud alpha anthos config sync repo list

Outputnya mirip dengan hal berikut ini:

┌─────────────────────────────────────────────────────────────────┬───────┬────────┬─────────┬───────┬─────────┬─────────────┐
│                       SOURCE                                    │ TOTAL │ SYNCED │ PENDING │ ERROR │ STALLED │ RECONCILING │
├─────────────────────────────────────────────────────────────────┼───────┼────────┼─────────┼───────┼─────────┼─────────────┤
│ https://source.developers.google.com/p/test/r/test//@main       │ 2     │ 2      │ 0       │ 0     │ 0       │ 0           │
│ https://source.developers.google.com/p/test/r/dev//@main        │ 2     │ 1      │ 0       │ 0     │ 1       │ 0           │
│ https://source.developers.google.com/p/test/r/staging//@main    │ 1     │ 0      │ 0       │ 1     │ 0       │ 0           │
└─────────────────────────────────────────────────────────────────┴───────┴────────┴─────────┴───────┴─────────┴─────────────┘

Untuk setiap repositori, Anda dapat melihat status terkait di seluruh cluster:

  • TOTAL adalah jumlah cluster yang disinkronkan dengan repositori.
  • SYNCED adalah jumlah cluster tempat repositori ini berhasil disinkronkan.
  • PENDING adalah jumlah cluster dengan repositori ini yang menunggu untuk disinkronkan.
  • ERROR adalah jumlah cluster tempat repositori ini mengalami beberapa error selama sinkronisasi.
  • STALLED adalah jumlah cluster tempat Deployment yang menyinkronkan repositori ini terhenti.
  • RECONCILING adalah jumlah cluster tempat Deployment yang menyinkronkan repositori ini direkonsiliasi.

Mencantumkan repositori dengan status tertentu

Anda juga dapat mencantumkan repositori dengan status tertentu menggunakan flag --status. Nilai yang didukung adalah synced, pending, error, stalled, dan reconciling.

Misalnya, cantumkan repositori yang memiliki error dengan menjalankan perintah berikut:

gcloud alpha anthos config sync repo list --status=error

Outputnya mirip dengan hal berikut ini:

┌─────────────────────────────────────────────────────────────────┬───────┬────────┬─────────┬───────┬─────────┬─────────────┐
│                       SOURCE                                    │ TOTAL │ SYNCED │ PENDING │ ERROR │ STALLED │ RECONCILING │
├─────────────────────────────────────────────────────────────────┼───────┼────────┼─────────┼───────┼─────────┼─────────────┤
│ https://source.developers.google.com/p/test/r/staging//@main    │ 1     │ 0      │ 0       │ 1     │ 0       │ 0           │
└─────────────────────────────────────────────────────────────────┴───────┴────────┴─────────┴───────┴─────────┴─────────────┘

Menjelaskan repositori

Gunakan perintah deskripsi untuk melihat detail tentang status repositori Anda:

   gcloud alpha anthos config sync repo describe \
     --source URL

Ganti URL dengan URL dari output perintah repo list yang dijelaskan di bagian sebelumnya.

Anda juga dapat menggunakan --namespace dan --name untuk menentukan repositori yang ingin Anda deskripsikan.

   gcloud alpha anthos config sync repo describe \
     --sync-namespace config-management-system --sync-name root-sync

Secara default, perintah ini mencetak status repositori serta semua resource terkelola yang diterapkan tetapi rekonsiliasi gagal. Contoh:

   [
     {
       "clusters": [
         "cluster-1",
         "cluster-2",
       ],
       "commit": "32293c90a63efba3121c7648048fcd3e85043a34",
       "errors": [],
       "source": "https://source.developers.google.com/p/test/r/test//@main",
       "status": "SYNCED"
     }
   ]

Anda juga dapat menggunakan tanda --managed-resources untuk mengontrol resource terkelola yang ingin Anda lihat. Nilai yang didukung adalah all, current, inprogress, notfound, failed (default), atau unknown. Anda dapat menggunakan perintah berikut untuk melihat semua resource terkelola:

   gcloud alpha anthos config sync repo describe \
     --namespace config-management-system --name root-sync \
     --managed-resources all

Outputnya mirip dengan hal berikut ini:

   [
     {
       "clusters": [
         "cluster-1",
         "cluster-2",
       ],
       "commit": "32293c90a63efba3121c7648048fcd3e85043a34",
       "errors": [],
       "source": "https://source.developers.google.com/p/test/r/test//@main",
       "status": "SYNCED"
     }
   ]
   ┌────────────────────────────────────────────────────────────────┐
   │                       managed_resources                        │
   ├───────┬───────────┬─────────┬───────────┬─────────┬────────────┤
   │ GROUP │    KIND   │   NAME  │ NAMESPACE │  STATUS │ CONDITIONS │
   ├───────┼───────────┼─────────┼───────────┼─────────┼────────────┤
   │       │ Namespace │ default │           │ Current │            │
   │       │ ConfigMap │ foo     │ default   │ Current │            │
   └───────┴───────────┴─────────┴───────────┴─────────┴────────────┘

Melihat resource terkelola Config Sync

Anda dapat menggunakan gcloud alpha anthos config sync resources untuk memfilter resource yang dikelola menurut cluster, grup, jenis, namespace, nama, status, atau kombinasi atribut ini.

Mencantumkan semua resource terkelola

   gcloud alpha anthos config sync resources list

Perintah ini mencantumkan semua resource terkelola yang disinkronkan ke cluster terdaftar pada project saat ini. Outputnya mirip dengan hal berikut ini:

┌───────────────────┬───────────────────────────┬──────────────────────────┬──────────────────┬───────────────────────────────────────────┬─────────┬───────────┐
│    CLUSTER_NAME   │           GROUP           │           KIND           │    NAMESPACE     │                    NAME                   │  STATUS │ CONDITION │
├───────────────────┼───────────────────────────┼──────────────────────────┼──────────────────┼───────────────────────────────────────────┼─────────┼───────────┤
│ cluster-1         │                           │ Namespace                │                  │ default                                   │ Current │           │
│ cluster-1         │ rbac.authorization.k8s.io │ RoleBinding              │ default          │ viewers                                   │ Current │           │
│ cluster-2         │                           │ Namespace                │                  │ gamestore                                 │ Current │           │
│ cluster-2         │ rbac.authorization.k8s.io │ RoleBinding              │ gamestore        │ gamestore-admin                           │ Current │           │
│ cluster-2         │ rbac.authorization.k8s.io │ RoleBinding              │ gamestore        │ gamestore-webstore-admin                  │ Current │           │
└───────────────────┴───────────────────────────┴──────────────────────────┴──────────────────┴───────────────────────────────────────────┴─────────┴───────────┘

Setiap baris output menjelaskan resource terkelola dan status terkaitnya:

  • CLUSTER_NAME adalah nama cluster tempat resource terkelola berasal.
  • GROUP adalah atribut kelompok resource terkelola.
  • KIND adalah atribut jenis dari resource terkelola.
  • NAMESPACE adalah namespace dari resource terkelola.
  • NAME adalah nama resource terkelola.
  • STATUS adalah status rekonsiliasi resource terkelola. Anda dapat menemukan daftar kemungkinan status di dokumentasi Kubernetes Sig.
  • CONDITION adalah pesan yang menjelaskan status resource terkelola.

Mencantumkan resource terkelola dari satu cluster

Anda dapat melihat resource terkelola per cluster dengan menggunakan perintah gcloud atau dengan melihatnya di Konsol Google Cloud.

Anda dapat mencantumkan resource terkelola dari cluster tertentu menggunakan flag --cluster. Misalnya, cantumkan resource terkelola dari cluster dengan nama cluster-1 menggunakan perintah berikut:

gcloud alpha anthos config sync resources list --cluster=cluster-1

Outputnya mirip dengan hal berikut ini:

┌───────────────────┬───────────────────────────┬──────────────────────────┬──────────────────┬───────────────────────────────────────────┬─────────┬───────────┐
│    CLUSTER_NAME   │           GROUP           │           KIND           │    NAMESPACE     │                    NAME                   │  STATUS │ CONDITION │
├───────────────────┼───────────────────────────┼──────────────────────────┼──────────────────┼───────────────────────────────────────────┼─────────┼───────────┤
│ cluster-1         │                           │ Namespace                │                  │ default                                   │ Current │           │
│ cluster-1         │ rbac.authorization.k8s.io │ RoleBinding              │ default          │ viewers                                   │ Current │           │
└───────────────────┴───────────────────────────┴──────────────────────────┴──────────────────┴───────────────────────────────────────────┴─────────┴───────────┘

Langkah selanjutnya