Mengonfigurasi resource dan replika container
Halaman ini menjelaskan cara mengonfigurasi resource container dan replika untuk pengontrol di Config Connector.
Mengonfigurasi alokasi resource untuk container pengontrol Config Connector
Pada Config Connector versi 1.106 dan yang lebih baru, Anda dapat mengkonfigurasi CPU dan resource memori (RAM) yang dialokasikan ke container di pengontrol Config Connector Pod. 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 memori dan batas webhook
container pengontrol cnrm-webhook-manager
dengan membuat dan menerapkan
contoh file YAML berikut.
Buat file bernama
configure-webhook-manager.yaml
, lalu salin berikut YAML 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 container ke cluster Anda:kubectl apply -f configure-webhook-manager.yaml
Verifikasi bahwa konfigurasi berhasil dengan menjalankan perintah berikut:
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
Seharusnya Anda akan menampilkan kolom
status.healthy
yang disetel ketrue
.Verifikasi bahwa konfigurasi resource kustom yang baru telah diterapkan ke Penampung
webhook
.kubectl get deployment cnrm-webhook-manager -n cnrm-system -o jsonpath='{.spec.template.spec.containers[?(@.name=="webhook")].resources}'
Membuat dan membuat ulang Pod dapat memerlukan waktu beberapa menit.
Jika Config Connector dikonfigurasi untuk dijalankan di
mode namespace, Anda harus
gunakan resource kustom NamespacedControllerResource
untuk mengonfigurasi container
resource untuk pengontrol cnrm-controller-manager
dalam setelan
namespace. Konfigurasi resource container 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
Pada Config Connector versi 1.107 dan yang lebih baru, Anda dapat mengonfigurasi jumlah
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
menjadi 3
.
Buat file bernama
configure-webhook-manager.yaml
dan salin perintah berikut YAML 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 dimodifikasi ke cluster Anda:kubectl apply -f configure-webhook-manager.yaml
Verifikasi bahwa konfigurasi berhasil dengan menjalankan perintah berikut.
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
Seharusnya Anda akan menampilkan kolom
status.healthy
yang disetel ketrue
.Verifikasi keberadaan 3 Pod webhook dalam cluster Anda.
kubectl get pods -n cnrm-system -l cnrm.cloud.google.com/component=cnrm-webhook-manager
Membuat dan membuat ulang Pod dapat memerlukan waktu beberapa menit.
Mengembalikan perubahan konfigurasi di resource dan replika container
Gunakan kubectl
delete
untuk menghapus resource kustom ControllerResource
yang telah Anda konfigurasi. Sesudah
operator Config Connector akan membuat ulang pengontrol dengan
resource dan replika container default.
kubectl delete -f configure-webhook-manager.yaml