Configurar réplicas e recursos de contêiner
Nesta página, descrevemos como configurar réplicas e recursos de contêiner para no Config Connector.
Configurar a alocação de recursos para um contêiner do controlador do Config Connector
No Config Connector versão 1.106 e posterior, é possível configurar recursos de memória (RAM) alocados para um contêiner em um controlador do Config Connector do pod. É possível configurar os seguintes controladores:
cnrm-webhook-manager
cnrm-controller-manager
cnrm-deletiondefender
cnrm-resource-stats-recorder
cnrm-unmanaged-detector
(Config Connector versão 1.108 e mais recentes)
Por exemplo, é possível configurar a solicitação de memória e o limite do contêiner webhook
do controlador cnrm-webhook-manager
criando e aplicando
o exemplo de arquivo YAML abaixo.
Crie um arquivo chamado
configure-webhook-manager.yaml
e copie o YAML a seguir: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
Usar
kubectl apply
para aplicar a configuração do recurso de contêiner ao cluster:kubectl apply -f configure-webhook-manager.yaml
Verifique se a configuração foi bem-sucedida executando o seguinte comando:
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
O campo
status.healthy
precisa ser definido comotrue
.Verifique se a nova configuração de recurso personalizado foi aplicada ao contêiner
webhook
.kubectl get deployment cnrm-webhook-manager -n cnrm-system -o jsonpath='{.spec.template.spec.containers[?(@.name=="webhook")].resources}'
A criação e a recriação dos pods pode levar alguns minutos.
Se o Config Connector estiver configurado para ser executado no
modo com namespace, é preciso
usar o recurso personalizado NamespacedControllerResource
para configurar o contêiner
recursos para o controlador cnrm-controller-manager
na sua rede
. A configuração de recursos de contêiner para um controlador com namespace
está ativado no Config Connector versão 1.108 e posterior. O arquivo YAML a seguir
mostra um exemplo de configuração:
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
Substitua NAMESPACE
pelo nome do namespace.
Configurar réplicas para um pod de controlador do Config Connector
No Config Connector versão 1.107 e posterior, é possível configurar o número de
réplicas de um controlador do Config Connector. Só é possível configurar
cnrm-webhook-manager
:
Por exemplo, as etapas a seguir mostram como configurar o número de réplicas
do controlador cnrm-webhook-manager
para 3
.
Crie um arquivo chamado
configure-webhook-manager.yaml
e copie o YAML a seguir nele: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
Use
kubectl apply
para aplicar a configuração modificada ao cluster:kubectl apply -f configure-webhook-manager.yaml
Para verificar se a configuração foi bem-sucedida, execute o comando a seguir.
kubectl get controllerresource cnrm-webhook-manager -o jsonpath='{.status.healthy}'
O campo
status.healthy
precisa ser definido comotrue
.Verifique se há três pods de webhook no cluster.
kubectl get pods -n cnrm-system -l cnrm.cloud.google.com/component=cnrm-webhook-manager
A criação e a recriação dos pods pode levar alguns minutos.
Reverter mudanças de configuração em recursos e réplicas de contêineres
Use kubectl
delete
para excluir os recursos personalizados ControllerResource
que você configurou. Após
a exclusão, o operador do Config Connector recria os controladores com os
recursos e as réplicas de contêiner padrão.
kubectl delete -f configure-webhook-manager.yaml