85 lines
3.1 KiB
Markdown
85 lines
3.1 KiB
Markdown
---
|
|
title: Kestra
|
|
created: 2026-06-08
|
|
updated: 2026-06-08
|
|
type: app
|
|
tags: [catalogue, workflow-automation, app-marathon-batch-a]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Workflow+Automation&app=kestra]
|
|
---
|
|
|
|
# ⚙️ Kestra
|
|
|
|
> **Orchestrateur de workflows déclaratif YAML** — pipelines data et ETL scalables, avec UI moderne et execution engine basé sur la queue (Kafka/RabbitMQ).
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [kestra.io](https://kestra.io) |
|
|
| **GitHub** | [kestra-io/kestra](https://github.com/kestra-io/kestra) |
|
|
| **License** | Apache-2.0 |
|
|
| **Langage** | Java |
|
|
| **Étoiles GitHub** | 18k ⭐ |
|
|
| **Catégorie** | [[cat-workflow-automation|Workflow Automation]] |
|
|
|
|
## 📝 Description
|
|
|
|
**Kestra** est une plateforme d'**orchestration de workflows** qui se distingue par son approche **déclarative YAML** (code-as-configuration) et son architecture scalable (basée sur une queue + workers). Vous définissez vos flows dans des fichiers `.yml`, Kestra les parse, les versionne (Git-friendly), et les exécute via un pool de workers. Excellent pour ETL, data pipelines, batch jobs, et orchestration de microservices. Différence avec **Apache Airflow** : Kestra a une UI plus moderne, ne nécessite pas de DAG Python (YAML pur), et scale nativement via workers (Airflow = single scheduler). Pour qui: équipes data, DevOps, et toute personne qui veut orchestrer des centaines de jobs avec une UI claire.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Docker Compose (Standalone)
|
|
|
|
```yaml
|
|
version: '3.8'
|
|
services:
|
|
kestra:
|
|
image: kestra/kestra:latest
|
|
container_name: kestra
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8080:8080"
|
|
environment:
|
|
- KESTRA_CONFIGURATION=default
|
|
volumes:
|
|
- ./data:/app/storage
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.kestra.rule=Host(`kestra.example.com`)"
|
|
- "traefik.http.routers.kestra.entrypoints=websecure"
|
|
- "traefik.http.routers.kestra.tls.certresolver=letsencrypt"
|
|
```
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
- [[app-n8n]] — UI visuelle, plus orienté SaaS
|
|
- **Apache Airflow** — Standard data engineering (Python)
|
|
- **Dagster** — Data orchestrator moderne (Python)
|
|
- **Prefect** — Cloud-first orchestration
|
|
- **Argo Workflows** — K8s-native
|
|
|
|
### Propriétaires
|
|
- **AWS Step Functions** — Orchestrateur AWS managé
|
|
- **Azure Logic Apps** — iPaaS Microsoft
|
|
- **Temporal** — Workflow as code (Cloud option)
|
|
|
|
## 🔐 Sécurité
|
|
- **Basic auth** : activable via `KESTRA_SECURITY_BASIC_AUTH_USERNAME` etc.
|
|
- **JWT** : pour l'API.
|
|
- **Vault integration** : pour les secrets, Kestra supporte HashiCorp Vault nativement.
|
|
- **Namespaces** : isolation multi-tenant.
|
|
|
|
## 📚 Ressources
|
|
- [Documentation officielle](https://kestra.io/docs/)
|
|
- [Kestra University](https://kestra.io/university/)
|
|
- [Blueprints / Templates](https://kestra.io/blueprints)
|
|
|
|
## Pages Liées
|
|
- [[cat-workflow-automation]] — Catégorie Workflow Automation
|
|
- [[app-n8n]] — Concurrent haut-niveau
|
|
- **Apache Airflow** — Concurrent data
|
|
- [[recettes-docker-compose]] — Templates Docker
|