Configuring Agents with the connectware-agent Helm Chart
Prerequisites
Helm V3 installed (Helm | Installing Helm).
kubectl
installed (Install Tools).kubectl
configured with the current context pointing to your target cluster (Configure Access to Multiple Clusters).
You can configure your Connectware agents deployed through the connectware-agent
Helm chart by adjusting Helm values in your values.yaml file and re-applying it using a Helm upgrade.
Example
If you need help starting out with a values.yaml file, follow the Installing Connectware agents using the connectware-agent Helm chart article.
In our examples we will explain the parameters in the protocolMapperAgents
Helm context, but unless otherwise noted they are also available to configure through protocolMapperAgentDefaults
as mentioned in Configuration principles for the connectware-agent Helm chart.
Connectware’s agents are part of a Kubernetes StatefulSet. If any of them are not in the state “running” when you execute helm upgrade
, you will need to manually delete the pod afterwards, for an updated pod to be scheduled.
Available Helm Values
Root-Level Helm Values
These values are on the root level of your values.yaml file.
licenseKey
A valid license for Cybus Connectware
protocolMapperAgentDefaults
This set of configuration values is applied to all agents, unless they override specific values
protocolMapperAgents
A collection of Connectware agents to be deployed. Each collection entry can contain configuration to override the defaults
fullnameOverride
Override the full name of this installation, which is used as a name prefix. Use „“ to remove prefixing
nameOverride
Override the chart name of this installation, which is used as part of the name prefix
protocolMapperAgentDefaults Helm Values
These values are within the protocolMapperAgentDefaults
section and control the behavior of all deployed agents.
connectwareHost
DNS name under which the Connectware installation is available to the agent
controlPlaneBrokerEnabled
Define if the Connectware installation uses the separate control-plane-broker feature
image.name
The name of the container image used for the agent
image.version
Container version or tag used for the agent
image.registry
Container image registry to be used for the agent. Set to „“ to not specify a registry
image.pullPolicy
Kubernetes imagePullPolicy used for the agent. One of: Always, Never, IfNotPresent
image.pullSecrets
A collection of objects containing Kubernetes imagePullSecrets with a name
attribute, to be used by the agent
mTLS.enabled
Define if mTLS (Certificate Authentication) is enabled
mTLS.caChain.cert
The Certificate Authority certificate chain as a literal PEM encoded string
mTLS.caChain.existingConfigMap
An existing Kubernetes ConfigMap containing the Certificate Authority certificate chain in a file named ca-chain.pem
mqtt.tls
Define if TLS (Transport Encryption) is enabled
mqtt.controlHost
Override the default host for the control-plane MQTT connection
mqtt.dataHost
Override the default host for the data MQTT connection
mqtt.controlPort
Override the default port for the control-plane MQTT connection
mqtt.dataPort
Override the default port for the data MQTT connection
persistence.accessMode
The Kubernetes AccessMode to request for the persistent volume. One of: ReadWriteOnce, ReadWriteMany, ReadWriteOncePod
persistence.size
A Kubernetes Quantity to request as size for the persistent volume
persistence.storageClassName
The name of the Kubernetes StorageClass to request for the persistent volume
podAntiAffinity
Define what type of podAntiAffinity to use for the agent. One of: none, soft, hard
podAntiAffinityOptions
Define configuration values specific to podAntiAffinity
resources.requests.cpu
Kubernetes Quantity that describes the agents CPU requests
resources.requests.memory
Kubernetes Quantity that describes the agents memory requests
resources.limits.cpu
Kubernetes Quantity that describes the agents CPU limits
resources.limits.memory
Kubernetes Quantity that describes the agents memory limits
env
A collection of objects with name
and value
describing environment variables passed to the agent
annotations
A set of Kubernetes annotations to be added to all agent resources
labels
A set of Kubernetes labels to be added to all agent resources
podAnnotations
A set of Kubernetes annotations to be added to the agent pod only
podLabels
A set of Kubernetes labels to be added to the agent pod only
nodeSelector
A set of Kubernetes labels a node must have for the agent to be scheduled on it
securityContext
Define the Kubernetes SecurityContext for the agent
podSecurityContext
Define the Kubernetes SecurityContext for the agents pod
service.annotations
A set of Kubernetes annotations to be added to the agents service only
service.labels
A set of Kubernetes labels to be added to the agents service only
protocolMapperAgents Helm Values
These values are within the protocolMapperAgents
section, which is a list of agents you want to deploy and are configured per entry for an agent. See Configuration principles for the connectware-agent Helm chart for details. Additionally to the values listed here, all values under protocolMapperAgentDefaults
are available per-agent.
name
The name of the Connectware agent. If you use mTLS this must match the certificates CN/SAN
mTLS.keyPair.cert
The mTLS certificate chain as a literal PEM encoded string
mTLS.keyPair.key
The mTLS private key as a literal PEM encoded string
mTLS.existingSecret
An existing Kubernetes Secret containing the mTLS certificate and key in files named tls.crt and tls.key
Last updated
Was this helpful?