Об этом проекте
Kestra — это платформа оркестрации, которая объединяет запланированную и событийно-ориентированную автоматизацию. Она позволяет пользователям создавать надежные рабочие процессы с помощью декларативного интерфейса YAML, которыми можно управлять через встроенный UI-редактор кода или интегрировать с Git для реализации практик Infrastructure as Code (IaC).
Ключевые возможности включают:
- Управление рабочими процессами: поддержка пространств имен (namespaces), меток, подпотоков, повторных попыток, тайм-аутов, условного ветвления и динамических задач.
- Выполнение и масштабирование: разработана для обеспечения высокой доступности и отказоустойчивости, способна обрабатывать миллионы рабочих процессов. Поддерживает локальное выполнение, удаленные серверы через SSH и бессерверные контейнеры через Task Runners, включая Docker и Kubernetes.
- Экосистема плагинов: предоставляет сотни встроенных плагинов для извлечения данных из баз данных, облачного хранения и взаимодействия с API. Поддерживает написание скриптов на нескольких языках, включая Python, Node.js, R, Go и Shell.
- Событийные триггеры: может реагировать в режиме реального времени на внешние события, такие как появление файлов или сообщения из Kafka, Redis, Pulsar, AMQP, MQTT, NATS, AWS SQS, Google Pub/Sub и Azure Event Hubs.
- Визуальные инструменты: включает Topology Editor для перетаскивания задач, проверку синтаксиса в реальном времени, автодополнение и живой вид DAG (направленного ациклического графа).
- Интеграции: предлагает официальный провайдер Terraform и поддерживает интеграцию с CI/CD конвейерами для развертывания потоков.