Установка Камунда.РФ 8 в Kubernetes с Helm

Требования к внешним сервисам и инфраструктуре

В этом разделе перечислено всё, что должно быть предварительно настроено в вашем окружении перед началом установки.

Инфраструктура

  • Доступы, адреса, учетные записи (предоставляются после приобретения Камунда.РФ)

    • Docker Registry, в котором лежит образ Камунда.РФ 8

    • Helm Registry, где лежит helm chart для Камунда.РФ 8

  • Kubernetes 1.24+

  • Helm 3.x

  • Kafka >= 3.3.1

  • Доступ к кластеру и namespace

Программное обеспечение для установки

Для выполнения инструкций по установке на вашем клиентском компьютере должны быть установлены следующие утилиты.

Note
Если у вас возникли сложности с установкой idn под вашу операционную систему, замените $(idn камнуда.рф) на xn–80aalwlg5b.xn–p1ai во всех командах.

Репозиторий и подготовка

На этом этапе подготовим окружение Kubernetes для установки Камунда.РФ 8.

Настройте kubectl для работы с пространством имен, в котором будет производиться работа.

kubectl config set-context --current --namespace=kamundarf8 # (1)
  1. Если пространство не создано в кластере, создайте его командой:

    kubectl create namespace kamundarf8

Переменные окружения

Подготовьте переменные среды:

export REPO_NAME="kamundarf"
export HELM_REGISTRY="oci://$(idn камунда.рф)"
export REGISTRY_USERNAME="ваш-логин"
export REGISTRY_PASSWORD="ваш-пароль"

Авторизация в Helm-registry

В этом разделе проверяем подключение к реестру с Helm-чартами.

helm registry login $HELM_REGISTRY --username $REGISTRY_USERNAME --password $REGISTRY_PASSWORD

Создание секрета доступа к Docker Registry Камунда.РФ

Чтобы Kubernetes мог скачать образ Камунда.РФ 8 из приватного реестра (docker registry), необходимо создать секрет с данными для аутентификации.

kubectl create secret docker-registry krf-registry-secret \
  --docker-server=$(idn камунда.рф) \
  --docker-username=$REGISTRY_USERNAME \
  --docker-password=$REGISTRY_PASSWORD \
  --docker-email=devops@yourdomain.com

Где

  • $REGISTRY_USERNAME - имя пользователя для доступа к реестру Камунда.РФ

  • $REGISTRY_PASSWORD - пароль пользователя для доступа к реестру Камунда.РФ

Установка Helm-чарта Камунда.РФ 8

Подготовка параметров развертывания

Необходимо настроить основные параметры развертывания в файле kamundarf8.yaml. Если файл отсутствует, создайте его.

kamundarf8.yaml
global:
  image:
    tag: 1.0.0-SNAPSHOT
    pullSecrets:
      - name: krf-registry-secret    # Созданный секрет для скачивания образов
  elasticsearch: # Отключаем ElasticSearch
    enabled: false

elasticsearch:
  enabled: false


zeebe:
  enabled: true                         # Включает деплой всех ресурсов Zeebe
  debug: false                          # Режим отладки

  # Настройка кластера Zeebe
  clusterSize: "1"                      # Кол-во реплик брокера (узлов)
  partitionCount: "2"                   # Кол-во партиций в кластере
  replicationFactor: "1"               # Фактор репликации каждой партиции

  # Количество ресурсов для zeebe broker
  resources:
    requests:
      cpu: 500m
      memory: 1200Mi
    limits:
      cpu: 660m
      memory: 1920Mi
  # Хранение данных
  persistenceType: disk                 # Используется хранилище на диске
  pvcSize: "10Gi"                       # Размер PVC на каждого брокера
  pvcAccessModes: ["ReadWriteOnce"]     # Режим доступа к PVC
  pvcStorageClassName: ''
Table 1. Описание параметров конфигурации
Параметр Описание Значение по умолчанию

global.image.tag

Версия образа Камунда.РФ

1.0.0-SNAPSHOT

global.image.pullSecrets

Секрет для доступа к приватному реестру

krf-registry-secret

global.elasticsearch.enabled

Включение/выключение Elasticsearch

false

zeebe.enabled

Включение/выключение Zeebe

true

zeebe.clusterSize

Количество реплик брокера

1

zeebe.partitionCount

Количество партиций

2

zeebe.replicationFactor

Фактор репликации

1

Развертывание

Используем Helm для установки Камунда.РФ 8 в наш кластер Kubernetes, используя подготовленный файл kamundarf8.yaml.

helm upgrade --install kamundarf-8 oci://$HELM_REGISTRY/kamundarf/helmstore/kamundarf8 --values kamundarf8.yaml

Проверка установки

После установки проверьте статус компонентов:

kubectl get pods
kubectl get svc

Пример вывода (требуется, чтобы в столбце READY было 1/1):

NAME                                        READY   STATUS    RESTARTS   AGE
kamundarf-8-zeebe-0                         1/1     Running   0          2m19s
kamundarf-8-zeebe-gateway-856cb4767-88lr9   1/1     Running   0          4m41s