Развёртывание Visiology в Kubernetes
Kubernetes – это платформа для автоматизированного управления контейнерами, которая помогает запускать, масштабировать и поддерживать работу приложений в распределенной среде, обеспечивая высокую доступность и отказоустойчивость.
Платформа предоставляет инструменты для автоматического распределения нагрузки между серверами, обеспечения отказоустойчивости за счет создания резервных копий данных и быстрого восстановления после сбоев. Она особенно полезна при работе с микросервисной архитектурой, когда приложение состоит из множества независимых компонентов, работающих вместе.
Развертывая Visiology в Kubernetes, вы получаете возможность автоматизировать весь процесс управления вашей аналитической платформой. Это включает в себя не только запуск сервисов, но и их масштабирование в зависимости от текущих потребностей бизнеса, а также обеспечение высокой доступности и отказоустойчивости системы.
Среди основных преимуществ использования Kubernetes можно выделить следующие:
Автоматизация процессов: Kubernetes автоматически управляет жизненным циклом ваших сервисов, позволяя быстро разворачивать новые версии приложения без простоев.
Масштабируемость: Платформу можно легко масштабировать, добавляя дополнительные ресурсы по мере роста нагрузки. Kubernetes сам распределяет задачи между доступными узлами, оптимизируя использование ресурсов.
Балансировка нагрузки: Система способна динамически распределять запросы между несколькими экземплярами сервиса, тем самым повышая производительность и снижая вероятность перегрузки отдельных узлов.
Отказоустойчивость: Каждый компонент платформы может работать в нескольких экземплярах, что исключает наличие единой точки отказа (SPOF). Если один экземпляр выходит из строя, другие продолжают работу, обеспечивая непрерывность обслуживания.
Ниже представлен пример конфигурации кластера Kubernetes:
Для того, чтобы развернуть Visiology в Kubernetes (K8s) необходимо выполнить следующие шаги:
Установить Ingress.
Установить HTTPS сертификат.
Установить Visiology.
Установка Ingress
Для работы аналитической платформы Visiology требуется изменить дефолтные настройки Ingress.
Пример файла значений для Ingress-Nginx:
Пример применения (более подробную информацию вы можете найти на странице Ingress-Nginx Controller: Installation Guide):
helm upgrade --install ingress-nginx ingress-nginx \
--repo https://kubernetes.github.io/ingress-nginx \
--namespace ingress-nginx --create-namespace \
-f values.yamlУстановка HTTPS сертификата
kubectl create secret tls visiology-tls \
--cert=path_to_certificate.crt \
--key=path_to_privatekey.key \
-n ingress-nginxУкажите свои пути к сертификату и приватному ключу. Ключ должен быть без пароля.
Установка Visiology
Распакуйте полученный архив helm-чартов (запросить архив можно, написав в службу технической поддержки по адресу: support@visiology.su).
Загрузка Docker образов:
Рекомендуется поместить образы в ваш корпоративный Container Registry. Список образов, необходимых для работы:
cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/dashboard-service-3:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/dashboard-viewer-3:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/data-management-service:3.14.1 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/formula-engine:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/original/etl-db:15.8-k8s cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/original/jdbc-bridge:2.1.0-v3.11-fix-vuln cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/original/keycloak:26.2.4-k8s-visiology cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/python-script-service-3:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/smart-forms-3:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/visiology-designer:3.14.1 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/workspace-service:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/ai-agent:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/edge:3.14 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/original/onec-connector:1.1.2.3 cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/original/highcharts:v10.3.3 docker.io/bitnami/clickhouse:24.8.8-debian-12-r0 docker.io/bitnami/minio:2025.2.28-debian-12-r1 docker.io/bitnami/os-shell:12-debian-12-r32 docker.io/bitnami/postgres-exporter:0.16.0-debian-12-r1 docker.io/bitnami/postgresql:15.7.0-debian-12-r9 docker.io/bitnami/postgresql:16.3.0-debian-12-r12
Чтобы скачать образы, нужно запросить токен аутентификации у технической поддержки по адресу: support@visiology.su. Токен активен 12 часов.
Для тестового запуска можно использовать публичный Container Registry. Для этого требуется создать секрет в Kubernetes в нужном
namespace:kubectl create secret docker-registry yandex-registry \ --docker-username=iam \ --docker-password=<TOKEN> \ --docker-server cr.yandex \ -n visiology-namespaceПроизведите следующие настройки в файле
visiology-helm-chart/values.yaml:Обязательно поменяйте значения
XXXXXXXXна свои значения в файлеvisiology-helm-chart/values.yaml.Введите значение вашего
hardwareidиlicense.txt, полученного от службы поддержки.Измените
PLATFORM_URLиhostnameсk8s.visiology.suна ваше значение. Для корректной работы оно должно соответствовать установленному HTTPS сертификату.Измените количество реплик
replicaCountна требуемое вам:убедитесь, что в вашем кластере есть
storageClass, поддерживающий обращениеReadWriteMany;для сервиса
dashboardViewer, при количестве реплик отличное от 1, требуется поменять значенияaccessModesнаReadWriteManyи указатьstorageClass, который допускает множественное чтение/запись. (Например,csi-s3для Yandex Cloud).
При использовании сервисов
minio,postgres,clickhouseиз поставки установите размер запрашиваемого пространства на диске в соответствии с вашим профилем использования.
Выполните команду установки из каталога со скриптами в нужный
namespace:helm upgrade --install visiology visiology-3.14.0.tgz \ -f values.yaml \ -f image-values-release.yaml \ --create-namespace \ -n visiology-namespaceДождитесь полной загрузки системы.
Смотрите также
Нужна дополнительная помощь?