For the complete documentation index, see llms.txt. This page is also available as Markdown.

Configuring Compute Resources

Configure Kubernetes CPU and memory requests and limits for Connectware components and Connectware agents.

Kubernetes uses compute resource requests to schedule workloads onto nodes with sufficient capacity, and limits to cap how much a workload can consume. Configure requests and limits for both the components deployed with the connectware Helm chart and the agents deployed with the connectware-agent Helm chart.

By default, Connectware is configured with requests only and no limits, which allows it to burst and use available node resources when needed. Required resources depend heavily on the protocols, services, message rates, and payload sizes in your deployment. Monitor actual resource usage and adjust these values accordingly. For guidance on measuring usage and identifying bottlenecks, see Right-Sizing Kubernetes Resources for Connectware.

Configuration Values

The following Helm value controls compute resources. Set it per component in the connectware Helm chart, or per agent in the connectware-agent Helm chart, to override the chart's defaults.

Helm chart
Value
Description

connectware

<component>.resources.requests.cpu

CPU the scheduler reserves for the pod's containers.

connectware

<component>.resources.requests.memory

Memory the scheduler reserves for the pod's containers.

connectware

<component>.resources.limits.cpu

CPU ceiling for the pod's containers. When reached, the kernel throttles the container.

connectware

<component>.resources.limits.memory

Memory ceiling for the pod's containers. When exceeded, the container is OOMKilled and restarted.

connectware-agent

protocolMapperAgentDefaults.resources.requests.cpu

CPU the scheduler reserves for the pod's containers, for all agents.

connectware-agent

protocolMapperAgentDefaults.resources.requests.memory

Memory the scheduler reserves for the pod's containers, for all agents.

connectware-agent

protocolMapperAgentDefaults.resources.limits.cpu

CPU ceiling for the pod's containers, for all agents. When reached, the kernel throttles the container.

connectware-agent

protocolMapperAgentDefaults.resources.limits.memory

Memory ceiling for the pod's containers, for all agents. When exceeded, the container is OOMKilled and restarted.

connectware-agent

protocolMapperAgents[].resources.requests.cpu

CPU the scheduler reserves for the pod's containers, for a single agent.

connectware-agent

protocolMapperAgents[].resources.requests.memory

Memory the scheduler reserves for the pod's containers, for a single agent.

connectware-agent

protocolMapperAgents[].resources.limits.cpu

CPU ceiling for the pod's containers, for a single agent. When reached, the kernel throttles the container.

connectware-agent

protocolMapperAgents[].resources.limits.memory

Memory ceiling for the pod's containers, for a single agent. When exceeded, the container is OOMKilled and restarted.

cpu and memory accept any Kubernetes Quantity.

The two charts configure resources differently. Select the tab for the chart you use.

You configure each Connectware component separately. There is no global key to apply resources to all components at once.

Default Values

Every component comes with default CPU and memory requests and no limits. To see the default request values for every component, extract the chart's default values:

The resources entry under each component in the resulting default-values.yaml file shows its default requests.

Configuring Resources for a Component

To configure a component, set its resources, for example broker.resources, with requests and limits as Kubernetes quantities. Components you do not list keep their default requests.

To configure several components, list each one. To run a component without limits, set only its requests.

Reference

For the full list of resource-related Helm values, see the Connectware Helm Chart Values Reference and the Connectware-Agent Helm Chart Values Reference.

Last updated

Was this helpful?