TELEMETRY PIPELINE
Helm configuration

Configure Telemetry Pipeline using Helm

If you used Helm to install Core Operators and create Core Instances, you can also use Helm to configure your Chronosphere Telemetry Pipeline installation and to perform various pipeline operations.

Specify configurations

You can use the helm upgrade -i shell command to specify your configuration by passing a YAML file or specific flags to the command.

Provide a YAML file that specifies the values of parameters while installing the chart. For example:

helm upgrade -i core-instance calyptia/core-instance --values FILE

Replace FILE with the name of your YAML file.

Container image configuration

Telemetry Pipeline uses Bitnami (opens in a new tab) conventions to configure container images.

Global settings

To set global settings for your container images, use the global.imageRegistry parameter:

global:
  imageRegistry: ""
  imagePullSecrets: []
  storageClass: ""
  pullPolicy: IfNotPresent

If the global container registry requires authentication, you can provide pull secrets in the global.imagePullSecrets parameter.

Individual settings

To set individual settings for your container images, find that image’s key nested under the images key. For example, you can modify the fromCloud image using the parameters in images.fromCloud:

images:
  fromCloud:
    registry: ghcr.io
    repository: calyptia/core-operator/sync-from-cloud
    tag: 3.23.0
    pullSecrets: []

If a container image requires authentication, you can provide pull secrets in that image’s pullSecrets parameter. that image’s pullSecrets parameter. For example, to include pull secrets in the fromCloud container, store their values in images.fromCloud.pullSecrets.

Services and ports

The Helm chart for Telemetry Pipeline provides the following Kubernetes Services:

  • cloud-api: Corresponds to the Telemetry Pipeline backend (cloud-api.calyptia.com). Default port: 5000.
  • core: Corresponds to the Telemetry Pipeline web interface (core.calyptia.com). Default port: 3000.

Both of these Kubernetes Services use the LoadBalancer Service type by default.

Troubleshooting

If you need assistance, contact Chronosphere Support. As part of the support process, Chronosphere recommends downloading and running the support.sh (opens in a new tab) script, which gathers information about your Telemetry Pipeline installation and packages this information into an archive that you can attach to your ticket.

However, be aware that the output generated by the support.sh script can include any information related to your Telemetry Pipeline installation, including the values of secrets or authentication credentials you’ve stored. Before sending this output to Chronosphere, be sure to redact any sensitive information accordingly.

Parameter details

The following sections list the configuration parameters of the Telemetry Pipeline Helm charts and their default values. A default value of "" indicates an empty string.

There are three Helm charts that govern different aspects of Telemetry Pipeline:

core-crd parameters

The core-crd chart packages the Custom Resource Definitions (CRDs) used by the Telemetry Pipeline operator, also known as a Core Operator.

Common

These parameters configure general settings:

ParameterDescriptionDefault value
enabledIf true, enables this chart. If false, disables this chart.true
pipelineServiceTypeSpecifies the default Service type to use for new pipelines.LoadBalancer

Images

The parameters in this table configure the default images for pipelines and ingest checks:

ParameterDescriptionDefault value
images.hotReload.registryThe registry that stores the container image to use for pipelines during a hot reload.ghcr.io
images.hotReload.repositoryThe repository that stores the container image to use for pipelines during a hot reload.calyptia/configmap-reload
images.hotReload.tagThe tag associated with the container image to use for pipelines during a hot reload.latest version
images.fluentBit.registryThe registry that stores the standard container image to use for pipelines.ghcr.io
images.fluentBit.repositoryThe repository that stores the standard container image to use for pipelines.calyptia/core/calyptia-fluent-bit
images.fluentBit.tagThe tag associated with the standard container image to use for pipelines.latest version
images.ingestCheck.registryThe registry that stores the container image to use for ingest checks.ghcr.io
images.ingestCheck.repositoryThe repository that stores the container image to use for ingest checks.calyptia/core/ingest-check
images.ingestCheck.tagThe tag associated with the container image to use for ingest checks.latest version

core-operator parameters

The core-operator chart packages the Telemetry Pipeline operator, also known as a Core Operator.

Global image

The parameters in this table configure the settings for pipeline images:

ParameterDescriptionDefault value
global.imageRegistryThe registry that stores pipeline images. This value overrides any registries set within associated Core Instances.""
global.imagePullSecretsAn array of the key names for pull secrets to use across all images. Any values in this array are added to the list of pull secret names specified in each image’s pullSecrets parameter; they don’t override per-image settings.["regcreds"]
global.pullPolicySets the pull policy used by Kubernetes. If a value is specified, this setting overrides the associated pullPolicy in any per-image settings.""

Deployment

The parameters in this table configure the Core Operator:

ParameterDescriptionDefault value
enabledIf true, enables this chart. If false, disables this chart.true
images.operator.registryThe registry that stores the operator image. This value can be overridden by global.imageRegistry.ghcr.io
images.operator.repositoryThe repository that stores the operator image.calyptia/core-operator
images.operator.tagThe tag associated with the operator image.latest version
images.operator.pullSecretsAn array of the key names for pull secrets to use in the specified image. Any values in this array are added to the list of pull secret names specified in global.image.pullSecrets.[]
images.operator.pullPolicySets the pull policy used by Kubernetes for the specified image. This value can be overwritten by a value set in global.image.pullPolicy.IfNotPresent
commonAnnotationsSpecifies annotations to add to all resources, with the exception of the Core Operator Pod.{}
podAnnotationsSpecifies annotations to add to the Core Operator Pod.{}
namespaceOverrideIf a value is set, this parameter overrides the namespace specified by the .Release.Namespace variable.""
calyptiaTolerationsSpecifies tolerations to add to the Core Operator Pod.""
restartPolicySets the restart policy for the Core Operator Pod.Always

Resources

The parameters in this table define resources (opens in a new tab) for the Core Operator:

ParameterDescriptionDefault value
resources.limits.cpuSets the Core Operator’s CPU limit.500m
resources.limits.memorySets the Core Operator’s memory limit.512Mi
resources.requests.cpuSets the Core Operator’s CPU request.10m
resources.requests.memorySets the Core Operator’s memory limit.64Mi

Probes

The parameters in this table configure probes to check the health of the Core Operator:

ParameterDescriptionDefault value
readinessProbe.httpGet.pathThe HTTP path of the readiness probe./readyz
readinessProbe.httpGet.portThe port associated with the readiness probe.8081
readinessProbe.initialDelaySecondsThe initial delay for the readiness probe, in seconds.5
readinessProbe.periodSecondsSpecifies how often to run the readiness probe, in seconds.10
livenessProbe.httpGet.pathThe HTTP path of the liveness probe./healthz
livenessProbe.httpGet.portThe port associated with the liveness probe.8081
livenessProbe.initialDelaySecondsSpecifies the initial delay for the liveness probe, in seconds.15
livenessProbe.periodSecondsSpecifies how often to run the liveness probe, in seconds.20

RBAC

The parameters in this table configure role-based access control (RBAC) (opens in a new tab) settings:

ParameterDescriptionDefault value
rbac.createSpecifies whether to create RBAC resources.true
serviceAccount.createIf true, create a ServiceAccount for the operator. If false, don’t create a ServiceAccount.true
serviceAccount.nameIf serviceAccount.create is true, specifies the name to give that ServiceAccount.""
serviceAccount.annotationsSpecifies annotations to add to the ServiceAccount.{}
fullnameOverrideIf set, overrides the default value of the serviceAccount.name parameter.""
nameOverrideIf set, overrides the default value of the fullnameOverride parameter.""

Pull secrets

The parameters in this table configure the secrets used to pull images from a private registry:

ParameterDescriptionDefault value
imageCredentials.secretNameThe name of the secret. This value must refer to an existing pullSecret.none
imageCredentials.registryThe image registry. This value must match the registry value of the images you’re trying to pull.none
imageCredentials.usernameThe username to sign in to the registry.none
imageCredentials.passwordThe password to sign in to the registry.none
imageCredentials.emailThe email address to sign in to the registry.none

core-instance parameters

The core-instance chart governs an associated Core Instance, which syncs Telemetry Pipeline between your local environment and the Telemetry Pipeline backend.

Global image

The parameters in this table configure the settings for pipeline images:

ParameterDescriptionDefault value
global.imageRegistryThe registry that stores pipeline images. This value overrides any registries set within associated Core Instances.""
global.imagePullSecretsAn array of the key names for pull secrets to use across all images. Any values in this array are added to the list of pull secret names specified in each image’s pullSecrets parameter; they don’t override per-image settings.["regcreds"]
global.pullPolicySets the pull policy used by Kubernetes. If a value is specified, this setting overrides the associated pullPolicy in any per-image settings.""

Deployment

The parameters in this table configure the Core Instance:

ParameterDescriptionDefault value
enabledIf true, enables this chart. If false, disables this chart.true
coreInstanceSets the name of the Core Instance.""
cloudTokenYour Telemetry Pipeline API token in plain text. Only use this parameter if cloudTokenSec.name and cloudTokenSec.key aren’t set.""
cloudTokenSec.nameThe name of the Kubernetes secret (opens in a new tab) that stores your Telemetry Pipeline API token. Only use this parameter if cloudToken isn’t set.nil
cloudTokenSec.keyThe key of the Kubernetes secret that stores your Telemetry Pipeline API token. Only use this parameter if cloudToken isn’t set.nil
cloudUrlThe URL of the Telemetry Pipeline backend.https://cloud-api.calyptia.com
images.fromCloud.registryThe registry that stores the fromCloud container image, which is a synchronization container that communicates with the Telemetry Pipeline backend. This value can be overridden by global.imageRegistry.ghcr.io
images.fromCloud.repositoryThe repository that stores the fromCloud container image.calyptia/core-operator/sync-from-cloud
images.fromCloud.tagThe tag associated with the fromCloud container image.latest version
images.fromCloud.pullSecretsThe names of the pull secrets to use to fetch the fromCloud image. Any values in this array are added to the list of pull secret names specified in global.image.pullSecrets.[]
images.fromCloud.pullPolicySets the pull policy for the fromCloud container image. This value can be overridden by global.image.pullPolicy.IfNotPresent
images.toCloud.registryThe registry that stores the toCloud container image, which is a synchronization container that communicates with the Telemetry Pipeline backend. This value can be overridden by global.imageRegistry.ghcr.io
images.toCloud.repositoryThe repository that stores the fromCloud container image.calyptia/core-operator/sync-to-cloud
images.toCloud.tagThe tag associated with the toCloud container image.latest version
images.toCloud.pullSecretsThe names of the pull secrets to use to fetch the toCloud image. Any values in this array are added to the list of pull secret names specified in global.image.pullSecrets.[]
images.toCloud.pullPolicySets the pull policy for the toCloud container image. This value can be overridden by global.image.pullPolicy.IfNotPresent
images.hotReload.registryThe registry that stores the container image to use for pipelines during a hot reload. This value can be overridden by global.imageRegistry.ghcr.io
images.hotReload.repositoryThe repository that stores the container image to use for pipelines during a hot reload.calyptia/configmap-reload
images.hotReload.tagThe tag associated with the container image to use for pipelines during a hot reload.latest version
images.ingestCheck.registryThe registry that stores the container image to use for ingest checks. This value can be overridden by global.imageRegistry.ghcr.io
images.ingestCheck.repositoryThe repository that stores the container image to use for ingest checks.calyptia/core/ingest-check
images.ingestCheck.tagThe tag associated with the container image to use for ingest checks.latest version
intervalSpecifies how often to sync data to and from the Telemetry Pipeline backend. Possible units of measurement are ns (nanoseconds), us or µs (microseconds), ms (milliseconds), s (seconds), m (minutes), and h (hours).15s
probeIntervalSecSpecifies how often to run liveness and readiness probes, in seconds. If set to 0, both probes are disabled.5
commonAnnotationsSpecifies annotations to add to the Core Instance Pods created by this chart, but not to pipeline Pods. To add annotations to pipeline Pods, use calyptiaAnnotations. This value must follow annotation1=value1,annotation2=value2 syntax.{}
namespaceOverrideIf a value is set, this parameter overrides the namespace specified by the .Release.Namespace variable.""
fromCloud.debugPortThe debug port for the fromCloud container.5334
fromCloud.resourcesThe resources for the fromCloud container.{}
toCloud.debugPortThe debug port for the toCloud container.15334
toCloud.resourcesThe resources for the toCloud container.{}
cloudTimeoutSpecifies the HTTP timeout for requests to the Telemetry Pipeline backend, in seconds. If set to 0, the timeout is disabled.0

Pipeline

The parameters in this table configure pipelines deployed within the associated Core Instance:

ParameterDescriptionDefault value
clusterLoggingIf true, enables automated Kubernetes logging. If false, disables automated Kubernetes logging.false
calyptiaAnnotationsSpecifies annotations to add to pipeline Pods. This value must follow annotation1=value1,annotation2=value2 syntax.""
calyptiaTolerationsSpecifies tolerations to add to pipeline Pods. Only use this setting if you haven’t already configured per-pipeline tolerations. This value must follow the toleration string syntax.""
enableHealthCheckPipelineIf true, creates a health check pipeline in the Core Instance. If false, doesn’t create a health check pipeline.false
healthCheckPipelinePortThe frontend port for the health check pipeline.2020
healthCheckPipelineServiceTypeThe Service type to use for the health check pipeline.LoadBalancer
skipServiceCreationIf true, no Service is created for the pipeline. If false, creates a Service for the pipeline.false
notlsIf true, disables TLS verification for pipeline configuration settings. If false, enables TLS verification for pipeline configuration settings.true
httpProxySets the HTTP_PROXY environment variable for pipeline containers.""
httpsProxySets the HTTPS_PROXY environment variable for pipeline containers.""
noProxySets the NO_PROXY environment variable for pipeline containers.""
cloudProxySpecifies the HTTP proxy to use when connecting to the Telemetry Pipeline backend.""

RBAC

The parameters in this table configure role-based access control (RBAC) (opens in a new tab) settings:

ParameterDescriptionDefault value
rbac.createIf true, creates RBAC resources. If false, doesn’t create RBAC resources.true
serviceAccount.createIf true, creates a ServiceAccount for the operator. If false, doesn’t create a ServiceAccount.true
serviceAccount.nameIf serviceAccount.create is true, specifies the name to give that ServiceAccount.""
serviceAccount.annotationsSpecifies annotations to add to the ServiceAccount.{}
fullnameOverrideIf set, overrides the default value of the serviceAccount.name parameter.""
nameOverrideIf set, overrides the default value of the fullnameOverride parameter.""

Pull secrets

The parameters in this table configure the secrets used to pull images from a private registry:

ParameterDescriptionDefault value
imageCredentials.secretNameThe name of the secret. This value must refer to an existing pullSecret.none
imageCredentials.registryThe image registry. This value must match the registry value of the images you’re trying to pull.none
imageCredentials.usernameThe username to log in to the registry.none
imageCredentials.passwordThe password to log in to the registry.none
imageCredentials.emailThe email address to log in to the registry.none