Configurare risorse e repliche container
In questa pagina viene descritto come configurare le risorse e le repliche dei container per in Config Connector.
Configura l'allocazione delle risorse per un container controller Config Connector
In Config Connector versione 1.106 e successive, puoi configurare la CPU e di risorse di memoria (RAM) allocate a un container in un controller Config Connector all'interno del pod. Puoi configurare i seguenti controller:
cnrm-webhook-manager
cnrm-controller-manager
cnrm-deletiondefender
cnrm-resource-stats-recorder
cnrm-unmanaged-detector
(Config Connector versione 1.108 e successive)
Ad esempio, puoi configurare la richiesta e il limite di memoria del contenitore webhook
del controller cnrm-webhook-manager
creando e applicando il seguente file YAML di esempio.
Crea un file denominato
configure-webhook-manager.yaml
e copia seguenti YAML al suo interno: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
Utilizza
kubectl apply
per applicare la configurazione della risorsa contenitore al cluster:kubectl apply -f configure-webhook-manager.yaml
Verifica la corretta configurazione eseguendo questo comando:
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
Dovrebbe essere visualizzato il campo
status.healthy
impostato sutrue
.Verifica che la nuova configurazione della risorsa personalizzata sia stata applicata al file
webhook
contenitore.kubectl get deployment cnrm-webhook-manager -n cnrm-system -o jsonpath='{.spec.template.spec.containers[?(@.name=="webhook")].resources}'
La creazione e la nuova creazione dei pod potrebbe richiedere alcuni minuti.
Se Config Connector è configurato per l'esecuzione in
con spazio dei nomi, devi
usa la risorsa personalizzata NamespacedControllerResource
per configurare il container
per il controller cnrm-controller-manager
all'interno delle risorse
nello spazio dei nomi. La configurazione delle risorse container per un controller con spazio dei nomi
è abilitato in Config Connector versione 1.108 e successive. Il seguente file YAML
mostra una configurazione di esempio:
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
Sostituisci NAMESPACE
con il nome del tuo spazio dei nomi.
Configura le repliche per un pod del controller Config Connector
In Config Connector versione 1.107 e successive, puoi configurare il numero di
per un controller Config Connector. Puoi configurare solo il
cnrm-webhook-manager
.
Ad esempio, i passaggi seguenti mostrano come configurare il numero di repliche
per il controller cnrm-webhook-manager
a 3
.
Crea un file denominato
configure-webhook-manager.yaml
e copia quanto segue YAML: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
Utilizza
kubectl apply
per applicare la configurazione modificata al cluster:kubectl apply -f configure-webhook-manager.yaml
Verifica la corretta configurazione eseguendo questo comando.
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
Dovrebbe essere visualizzato il campo
status.healthy
impostato sutrue
.Verifica la presenza di tre pod webhook all'interno del cluster.
kubectl get pods -n cnrm-system -l cnrm.cloud.google.com/component=cnrm-webhook-manager
La creazione e la nuova creazione dei pod potrebbe richiedere alcuni minuti.
Ripristinare le modifiche alla configurazione nelle risorse e nelle repliche dei contenitori
Utilizza kubectl
delete
per eliminare le risorse personalizzate ControllerResource
che hai configurato. Dopo il giorno
l'operatore di Config Connector ricrea i controller con
le risorse e le repliche predefinite del container.
kubectl delete -f configure-webhook-manager.yaml