Deploy Pulse with Helm

This page describes how to deploy Pulse by using Helm.

Overview

This umbrella chart consists of three subcharts:

SubchartDescriptionDefault
pulse-coreCore components: RBAC, Manager Server, OperatorEnabled
optimizerOptimizer components: Calculator, WebhookEnabled
pulselogsLog collection: DaemonSet, ConfigMapDisabled

Prerequisites

  • Kubernetes 1.19 or later
  • Helm 3.x
  • kubectl configured to communicate with your cluster
  • Cluster admin permissions, required for CRDs and ClusterRoles

Quick start

  1. Create Docker registry secret

Before installing, create the image pull secret.

Bash
Copy
  1. Install the chart
Bash
Copy
  1. Verify installation
Bash
Copy

Configuration

Global values

These values are shared across all subcharts.

ParameterDescriptionDefault
global.namespaceTarget namespacepulse-system
global.image.registryDocker registry191579300362.dkr.ecr.us-east-1.amazonaws.com/acceldata
global.image.tagDefault image tag for all serviceslatest
global.imagePullSecretsImage pull secrets[{name: pulse-registry}]

Image configuration

The chart uses a global image configuration pattern. Set the tag once, and it applies to all services.

Bash
Copy

Pulse-Core Values

ParameterDescriptionDefault
pulse-core.enabledEnable pulse-core subcharttrue
pulse-core.manager.image.repositoryManager image namead-accelo
pulse-core.manager.image.tagManager image tag (empty = use global)""
pulse-core.manager.pulseHostnamePulse hostname (required)""
pulse-core.manager.adstreamUrlAD Stream URL (required)""
pulse-core.manager.hydraServerUrlHydra server URLhttp://ad-hydra:19072
pulse-core.manager.hydraBaseUrlHydra base URL""
pulse-core.manager.axnserverUrlAXN server URL""
pulse-core.manager.resourcesManager resource limitsSee values.yaml
pulse-core.operator.image.repositoryOperator image namead-pulse-operator
pulse-core.operator.image.tagOperator image tag (empty = use global)""
pulse-core.operator.resourcesOperator resource limitsSee values.yaml
pulse-core.hostAliasesHost aliases for DNS resolution[]

Optimizer Values

ParameterDescriptionDefault
optimizer.enabledEnable optimizer subchartfalse
optimizer.calculator.enabledEnable calculator componentfalse
optimizer.calculator.image.repositoryCalculator image namead-pulse-optikube
optimizer.calculator.image.tagCalculator image tag""
optimizer.webhook.enabledEnable webhook componentfalse
optimizer.webhook.image.repositoryWebhook image namead-pulse-webhook
optimizer.webhook.image.tagWebhook image tag""
optimizer.webhook.tls.crtBase64-encoded TLS certificate""
optimizer.webhook.tls.keyBase64-encoded TLS key""
optimizer.webhook.tls.caBundleBase64-encoded CA bundle""

Pulselogs Values

ParameterDescriptionDefault
pulselogs.enabledEnable pulselogs subchartfalse
pulselogs.namespacePulselogs namespacepulselogs
pulselogs.image.repositoryPulselogs image namepulselogs
pulselogs.image.tagPulselogs image tag""
pulselogs.elasticsearch.hostElasticsearch host (required when enabled)""
pulselogs.elasticsearch.portElasticsearch port19013
pulselogs.elasticsearch.usernameElasticsearch usernamepulse
pulselogs.elasticsearch.passwordElasticsearch password""
pulselogs.pulseClusterNamePulse cluster name (required when enabled)""
pulselogs.sparkNamespaceSpark namespace to monitorspark
pulselogs.resourcesPulselogs resource limitsSee values.yaml

Usage Examples

Basic installation

Bash
Copy

Production installation with a custom image tag

Bash
Copy

With host aliases for DNS resolution

Bash
Copy

Enable Pulselogs

Bash
Copy

Disable Specific Components

Bash
Copy

Using a Values File

Create a my-values.yaml file:

Bash
Copy

Then install:

Bash
Copy

Upgrading

Bash
Copy

Uninstalling

Bash
Copy

Upgrading CRDs

CRDs are not automatically upgraded by Helm. To upgrade CRDs:

Bash
Copy

Troubleshooting

Pods Not Starting

Check whether the image pull secret exists:

Bash
Copy

CRD already exists

If you are upgrading from a kubectl-based installation:

Bash
Copy

Webhook certificates not configured

The webhook requires TLS certificates. Provide them with values:

Bash
Copy

Helm Commands

Bash
Copy
Bash
Copy
Bash
Copy
Bash
Copy
Bash
Copy
Bash
Copy
Bash
Copy
Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard