nxs-universal-chart
Универсальный Helm-чарт с открытым исходным кодом для настройки и развёртывания приложений и связанных ресурсов в Kubernetes и OpenShift.
nxs-universal-chart
nxs-universal-chart — универсальный Helm-чарт для развёртывания приложений в Kubernetes и OpenShift.
Он позволяет описывать основные ресурсы приложения с помощью единого набора параметров и разворачивать их в Kubernetes-кластере без создания отдельных Helm-шаблонов для каждого типа ресурса.
Чарт подходит системным администраторам, DevOps-инженерам и разработчикам, которым нужно упростить и унифицировать развёртывание приложений в Kubernetes-инфраструктуре.
Возможности
Развёртывание приложений
nxs-universal-chart позволяет описывать и разворачивать основные Kubernetes-ресурсы, необходимые приложению.
- Deployment;
- StatefulSet;
- Service;
- Ingress;
- ConfigMap;
- Secret и SealedSecret;
- PersistentVolumeClaim;
- ServiceAccount и RBAC-ресурсы;
- Job и CronJob;
- HorizontalPodAutoscaler;
- PodDisruptionBudget.
extraDeploy и добавлять собственные Kubernetes-манифесты.Единая конфигурация
Настройки организованы по типам Kubernetes-ресурсов: приложения, сетевые ресурсы, конфигурация, секреты, хранилища, права доступа и ресурсы для масштабирования.
Общие параметры позволяют повторно использовать настройки разных ресурсов — например, метки, аннотации, параметры Pod, тома и переменные окружения.
Конфигурация проверяется с помощью схемы values.schema.json.
Поддержка Ingress-контроллеров
Чарт можно использовать с различными Ingress-контроллерами, включая:
- NGINX Ingress;
- Traefik;
- Istio.
Для расширенных сценариев доступны соответствующие ресурсы через дополнительные nuc-*-чарты.
Дополнительные Kubernetes-ресурсы
С помощью extraDeploy можно создавать произвольные Kubernetes-ресурсы, которые не входят в стандартный набор шаблонов nxs-universal-chart.
Это позволяет использовать чарт для приложений с нестандартной инфраструктурой и дополнительными Kubernetes-компонентами.
Подключаемые интеграции
nxs-universal-chart поддерживает подключение дополнительных nuc-*-чартов для работы с компонентами Kubernetes-инфраструктуры.
В зависимости от конфигурации можно использовать интеграции с:
- Traefik;
- Cert-manager;
- Istio;
- Flux CD;
- Knative;
- KServe;
- Prometheus Operator;
- Gateway API;
- Envoy Gateway;
- VictoriaMetrics;
- Vault Secret Operator;
- Argo CD;
- KEDA;
- CloudNativePG.
Интеграции подключаются как зависимости и могут включаться с помощью параметров Helm.
Как работает
nxs-universal-chart использует параметры Helm для описания конфигурации приложения.
В настройках можно определить необходимые ресурсы и их параметры — например, Deployment, Service, Ingress, ConfigMap, Secret, PersistentVolumeClaim или Job.
На основе этих настроек Helm формирует Kubernetes-манифесты, которые затем разворачиваются в кластере.
Общая схема работы:
Настроить параметры → сформировать Kubernetes-манифесты → установить чарт → получить готовые ресурсы в кластере.
В основе чарта используется общая библиотека nuc-common, которая предоставляет вспомогательные функции для формирования ресурсов, работы с конфигурацией, метками, шаблонами и другими общими параметрами.
Где можно использовать
nxs-universal-chart можно использовать в Kubernetes-совместимых средах:
- Kubernetes;
- OpenShift;
- других платформах с совместимым Kubernetes API.
Чарт подходит для развёртывания приложений и связанных с ними ресурсов в Kubernetes-кластерах.
Сценарии использования
nxs-universal-chart подходит:
- системным администраторам — для стандартизации развёртывания приложений;
- DevOps-инженерам — для управления конфигурацией Kubernetes-ресурсов;
- разработчикам — для подготовки единых конфигураций приложений;
- командам, которые используют Kubernetes и хотят сократить количество отдельных Helm-шаблонов.
Поддерживаемые технологии
Платформы: Kubernetes, OpenShift и другие платформы с совместимым Kubernetes API.
Helm: версии 2, 3 и 4.
Ingress: NGINX Ingress, Traefik, Istio.
Kubernetes-ресурсы: Deployment, StatefulSet, Service, Ingress, ConfigMap, Secret, SealedSecret, PersistentVolumeClaim, RBAC, Job, CronJob, HorizontalPodAutoscaler, PodDisruptionBudget и другие ресурсы через extraDeploy.
Установка и документация
nxs-universal-chart устанавливается с помощью Helm.
Исходный код, примеры конфигурации и подробная документация доступны в репозитории проекта.
GitHub: nixys/nxs-universal-chart
Лицензия
nxs-universal-chart распространяется под лицензией Apache 2.0.
Больше о наших инструментах
3 минуты
nxs-support-bot: инструкция по использованию
Создавайте задачи, получайте уведомления и комментируйте тикеты Redmine прямо в Telegram с помощью nxs-support-bot
34 минуты
Безопасность в Kubernetes: новая модель угроз от AI-агентов
Принцип единственной ответственности в Kubernetes как фундамент безопасности в эпоху атак ИИ-агентов
Оставьте заявку, чтобы обсудить проект
Спасибо за обращение
Мы свяжемся с вами в ближайшее время.