Mengonfigurasi resource dan replika penampung
Halaman ini menjelaskan cara mengonfigurasi resource dan replika penampung untuk pengontrol di Config Connector.
Mengonfigurasi alokasi resource untuk penampung pengontrol Config Connector
Di Config Connector versi 1.106 dan yang lebih baru, Anda dapat mengonfigurasi resource CPU dan memori (RAM) yang dialokasikan ke penampung di Pod pengontrol Config Connector. Anda dapat mengonfigurasi pengontrol berikut:
cnrm-webhook-manager
cnrm-controller-manager
cnrm-deletiondefender
cnrm-resource-stats-recorder
cnrm-unmanaged-detector
(Config Connector versi 1.108 dan yang lebih baru)
Misalnya, Anda dapat mengonfigurasi permintaan dan batas memori penampung webhook
pengontrol cnrm-webhook-manager
dengan membuat dan menerapkan
contoh file YAML berikut.
Buat file bernama
configure-webhook-manager.yaml
dan salin YAML berikut ke dalamnya:apiVersion: customize.core.cnrm.cloud.google.com/v1beta1 kind: ControllerResource metadata: name: cnrm-webhook-manager spec: containers: - name: webhook resources: limits: memory: 512Mi requests: memory: 256Mi
Gunakan
kubectl apply
untuk menerapkan konfigurasi resource penampung ke cluster Anda:kubectl apply -f configure-webhook-manager.yaml
Verifikasi konfigurasi yang berhasil dengan menjalankan perintah berikut:
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
Tindakan ini akan menampilkan kolom
status.healthy
yang ditetapkan ketrue
.Pastikan konfigurasi resource kustom baru telah diterapkan ke penampung
webhook
.kubectl get deployment cnrm-webhook-manager -n cnrm-system -o jsonpath='{.spec.template.spec.containers[?(@.name=="webhook")].resources}'
Pembuatan dan pembuatan ulang Pod dapat memerlukan waktu beberapa menit.
Jika Config Connector dikonfigurasi untuk berjalan dalam mode dengan namespace, Anda harus menggunakan resource kustom NamespacedControllerResource
untuk mengonfigurasi resource penampung untuk pengontrol cnrm-controller-manager
dalam namespace yang ditetapkan. Konfigurasi resource penampung untuk pengontrol dengan namespace
diaktifkan di Config Connector versi 1.108 dan yang lebih baru. File YAML berikut menunjukkan contoh konfigurasi:
apiVersion: customize.core.cnrm.cloud.google.com/v1beta1
kind: NamespacedControllerResource
metadata:
name: cnrm-controller-manager # name should not contain the namespace ID suffix
namespace: NAMESPACE
spec:
containers:
- name: manager
resources:
limits:
cpu: 200m
memory: 512Mi
requests:
cpu: 100m
memory: 256Mi
Ganti NAMESPACE
dengan nama namespace Anda.
Mengonfigurasi replika untuk Pod pengontrol Config Connector
Di Config Connector versi 1.107 dan yang lebih baru, Anda dapat mengonfigurasi jumlah replika untuk pengontrol Config Connector. Anda hanya dapat mengonfigurasi
cnrm-webhook-manager
.
Misalnya, langkah-langkah berikut menunjukkan cara mengonfigurasi jumlah replika
untuk pengontrol cnrm-webhook-manager
ke 3
.
Buat file bernama
configure-webhook-manager.yaml
dan salin YAML berikut ke dalamnya:apiVersion: customize.core.cnrm.cloud.google.com/v1beta1 kind: ControllerResource metadata: name: cnrm-webhook-manager spec: replicas: 3 containers: - name: webhook resources: limits: memory: 512Mi requests: memory: 256Mi
Gunakan
kubectl apply
untuk menerapkan konfigurasi yang diubah ke cluster Anda:kubectl apply -f configure-webhook-manager.yaml
Verifikasi konfigurasi yang berhasil dengan menjalankan perintah berikut.
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
Tindakan ini akan menampilkan kolom
status.healthy
yang ditetapkan ketrue
.Verifikasi keberadaan 3 Pod webhook dalam cluster Anda.
kubectl get pods -n cnrm-system -l cnrm.cloud.google.com/component=cnrm-webhook-manager
Pembuatan dan pembuatan ulang Pod dapat memerlukan waktu beberapa menit.
Mengembalikan perubahan konfigurasi di resource dan replika penampung
Gunakan kubectl
delete
untuk menghapus resource kustom ControllerResource
yang Anda konfigurasi. Setelah penghapusan, operator Config Connector akan membuat ulang pengontrol dengan resource dan replika penampung default.
kubectl delete -f configure-webhook-manager.yaml