Límites de recursos
SUSE® Rancher Prime Continuous Delivery admite la configuración de solicitudes y límites de recursos de CPU y memoria en dos lugares:
-
Controladores del clúster de gestión: configurado a través del campo
resourcesdel gráfico de Helm, como se describe en esta página. -
Agentes del clúster descendente: configurado por clúster a través del campo
agentResourcesen el recursoCluster.
|
Al ejecutar SUSE® Rancher Prime Continuous Delivery dentro de Rancher, utiliza el ConfigMap Para más información, consulta Configuración. |
Recursos predeterminados
Establece un valor predeterminado para todos los contenedores de controladores utilizando el campo resources de nivel superior:
resources:
limits:
cpu: 8000m
memory: 8Gi
requests:
cpu: 250m
memory: 768Mi
Pasa esto a Helm durante la instalación o durante la actualización de versión:
helm -n cattle-fleet-system upgrade --install fleet fleet/fleet \
--set resources.limits.cpu=8000m \
--set resources.limits.memory=8Gi \
--set resources.requests.cpu=250m \
--set resources.requests.memory=768Mi
Sobrescrituras por componente
Los contenedores de controladores individuales pueden sobrescribir el valor predeterminado con configuraciones específicas del componente. Las claves de componente admitidas son:
-
fleetController: el controlador principal de Fleet -
fleetCleanup: el controlador de limpieza -
fleetAgentmanagement: el controlador de gestión de agentes -
gitjob: el controlador de GitJob -
helmops: el controlador de HelmOps
Si una clave de componente está presente, su valor tiene prioridad sobre el predeterminado resources.limits y resources.requests.
Para eliminar las restricciones de recursos para un contenedor independientemente de la configuración predeterminada, establece un componente como un objeto vacío {}.
Ejemplo values.yaml utilizando sobreescrituras por componente:
resources:
limits:
cpu: 4000m
memory: 4Gi
requests:
cpu: 100m
memory: 256Mi
fleetController:
limits:
cpu: 8000m
memory: 8Gi
requests:
cpu: 250m
memory: 768Mi
gitjob: {} # no resource constraints for gitjob
helmops: {} # no resource constraints for helmops
En este ejemplo:
-
fleetControllerutiliza sus propios límites y solicitudes. -
gitjobyhelmopsno tienen restricciones de recursos aplicadas. -
fleetCleanupyfleetAgentmanagementvuelven al valor predeterminado de nivel superior.
Aplica la configuración con Helm:
helm -n cattle-fleet-system upgrade --install fleet fleet/fleet \
-f values.yaml
Recursos del Agente del Clúster Descendente
Para configurar límites y solicitudes de recursos para el agente de Fleet que se ejecuta en un clúster descendente específico, establece agentResources en el recurso correspondiente Cluster:
apiVersion: fleet.cattle.io/v1alpha1
kind: Cluster
metadata:
name: my-cluster
namespace: fleet-default
spec:
agentResources:
limits:
cpu: 1000m
memory: 512Mi
requests:
cpu: 100m
memory: 128Mi
Esto es independiente de la configuración del controlador del clúster de gestión anterior y se aplica solo al agente desplegado en ese clúster descendente.