Mengonfigurasi Config Sync dengan perintah kubectl
Halaman ini menjelaskan cara mengonfigurasi Config Sync menggunakan perintah kubectl
setelah Anda menginstal Config Sync menggunakan Konsol Google Cloud atau Google Cloud CLI.
Meskipun Anda dapat membuat banyak perubahan konfigurasi menggunakan konsol atau CLI, Anda harus menggunakan perintah kubectl
untuk mengganti beberapa default Config Sync, mengontrol verifikasi sertifikat SSL, dan menggunakan certificate authority.
Membuat dan mengedit file konfigurasi RootSync
Untuk mengonfigurasi Config Sync menggunakan perintah kubectl
, Anda perlu mengedit objek RootSync dengan membuat file YAML.
Saat Anda menginstal Config Sync menggunakan Google Cloud Console atau Google Cloud CLI, Config Sync otomatis membuat objek RootSync yang bernama root-sync
. Objek ini berisi informasi konfigurasi terbaru untuk
Sinkronisasi Konfigurasi. Setiap kali Anda melakukan perubahan pada konsol Google Cloud atau Google Cloud CLI, root-sync
akan diperbarui.
Pelajari kolom yang dapat Anda edit menggunakan kubectl
Anda dapat membuat perubahan lanjutan pada root-sync
menggunakan perintah kubectl
untuk kolom yang tidak didukung di Google Cloud Console atau Google Cloud CLI. Jika Anda ingin
membuat dan mengupdate objek RootSync atau RepoSync secara langsung menggunakan perintah
kubectl
, lihat
kolom RootSync dan RepoSync.
Sebelum membuat perubahan pada file YAML yang Anda buat di bagian berikut, pahami tabel berikut. Tabel ini mencantumkan kolom yang dapat Anda edit dan tambahkan. Jika Anda mengedit kolom yang tidak tercantum dalam tabel ini, Config Sync akan otomatis mengembalikan perubahan ke nilai yang Anda tetapkan saat terakhir kali Anda mengonfigurasi Config Sync di Google Cloud Console atau Google Cloud CLI.
Kunci | Deskripsi |
---|---|
spec.git.noSSLVerify |
noSSLVerify menentukan apakah akan mengaktifkan atau menonaktifkan verifikasi sertifikat SSL. Default: false .Jika noSSLVerify disetel ke true , fungsi ini akan memberi tahu Git untuk melewati verifikasi sertifikat
SSL. |
spec.git.caCertSecretRef.name |
Nama Rahasia yang berisi sertifikat certificate authority (CA). Jika kolom ini disediakan, server Git harus menggunakan sertifikat yang diterbitkan oleh CA ini. Sertifikat CA harus disimpan dalam Rahasia di bawah kunci bernama `cert`. |
spec.override.resources |
Daftar permintaan resource penampung dan penggantian batas. Opsional. Setiap item dalam daftar berisi tiga kolom:
Jika nilai penggantian untuk permintaan atau batas resource tidak diberikan, nilai resource default untuk permintaan atau batas akan digunakan. |
spec.override.gitSyncDepth |
gitSyncDepth memungkinkan Anda mengganti jumlah commit Git yang akan diambil.Tidak boleh kurang dari 0. Config Sync melakukan clone penuh jika kolom ini bernilai 0, dan melakukan clone yang dangkal jika kolom ini bernilai lebih besar dari 0. Jika kolom ini tidak disediakan, Config Sync akan otomatis mengonfigurasinya. |
spec.override.statusMode |
statusMode memungkinkan Anda mengaktifkan atau menonaktifkan perekaman status
level resource.Defaultnya adalah enabled .Untuk menonaktifkan pengambilan status tingkat resource, tetapkan kolom ini ke disabled .
|
spec.override.reconcileTimeout |
reconcileTimeout memungkinkan Anda mengganti nilai minimum untuk durasi tunggu resource dalam grup penerapan untuk direkonsiliasi sebelum berhenti. Semua resource dalam commit dapat berada dalam beberapa grup penerapan berdasarkan dependensi.Waktu tunggu default adalah 5m .Gunakan string untuk menentukan nilai kolom ini, misalnya 30s ,
5m .
|
spec.override.enableShellInRendering |
enableShellInRendering menentukan apakah akan mengaktifkan atau menonaktifkan
akses shell dalam proses rendering. Kustomisasi basis jarak jauh memerlukan akses shell. Menetapkan kolom ini ke true akan mengaktifkan akses shell
dalam proses rendering dan mendukung penarikan basis jarak jauh dari
repositori publik.Defaultnya adalah false . |
Membuat file
Guna membuat dan mengedit file konfigurasi untuk root-sync
, selesaikan
langkah-langkah berikut:
Untuk memastikan bahwa Anda mengambil informasi konfigurasi untuk cluster yang benar, konfigurasikan akses command line
kubectl
:gcloud container clusters get-credentials CLUSTER_NAME \ --zone ZONE \ --project PROJECT_ID
Ganti kode berikut:
CLUSTER_NAME
: nama cluster yang memiliki konfigurasi Config Sync yang ingin Anda ubahZONE
: zona tempat Anda membuat clusterPROJECT_ID
: project ID Anda
Salin informasi konfigurasi dari objek RootSync yang dibuat Config Sync ke dalam file YAML:
kubectl get rootsync root-sync -n config-management-system -o yaml > FILE_NAME.yaml
Ganti
FILE_NAME
dengan nama untuk file konfigurasi Anda.Buka file YAML yang Anda buat dan buat perubahan konfigurasi yang diperlukan. Misalnya, untuk mengganti batas memori penampung
git-sync
, tambahkan kolom berikut dengan huruf tebal:apiVersion: v1 items: - apiVersion: configsync.gke.io/v1beta1 kind: RootSync metadata: annotations: configmanagement.gke.io/managed-by-hub: "true" configmanagement.gke.io/update-time: "1644945169" creationTimestamp: "2022-02-15T17:12:52Z" generation: 1 name: root-sync namespace: config-management-system resourceVersion: "211980457" uid: aa30a94b-2825-4590-ad30-5af848403502 spec: git: auth: none branch: main dir: /quickstart/config-sync period: 15s repo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples revision: HEAD secretRef: {} override: resources: - containerName: "git-sync" memoryLimit: "400Mi" sourceFormat: unstructured # Remainder of RootSync omitted
Terapkan perubahan pada file YAML:
kubectl apply -f FILE_NAME.yaml
Untuk memastikan bahwa Config Sync telah menerapkan perubahan Anda, lihat objek RootSync:
kubectl describe rootsync root-sync -n config-management-system
Untuk memastikan bahwa perubahan Anda tidak menimbulkan error, gunakan perintah
nomos status
:nomos status
Menghapus objek RootSync
Untuk menghapus root-sync
, jalankan perintah berikut:
kubectl delete -f FILE_NAME
Ganti FILE_NAME
dengan nama file konfigurasi RootSync Anda. Contoh, root-sync.yaml
.
Menghapus objek RootSync atau RepoSync tidak akan membersihkan anotasi dan label Config Sync. Untuk membersihkan resource terkelola, sinkronkan dari direktori Git yang kosong.
Langkah selanjutnya
- Pelajari kolom RootSync dan RepoSync lebih lanjut.
- Temukan cara Memantau objek RootSync dan RepoSync.