1.5 KiB
1.5 KiB
Deployment
#kubernetes #workload #słownik
Co to jest?
Deployment to zasób Kubernetes zarządzający zestawem identycznych podów (ReplicaSet). Zapewnia deklaratywne aktualizacje, rollback, skalowanie i self-healing.
Kluczowe cechy
| Cecha | Opis |
|---|---|
| Replicas | Ilość identycznych podów |
| Rolling update | Stopniowa wymiana podów na nowe |
| Rollback | Powrót do poprzedniej wersji |
| Self-healing | Restart crashed podów |
| Scaling | Zmiana ilości replik (ręczna lub HPA) |
Deployment vs Job
| Job | Deployment | |
|---|---|---|
| Lifecycle | Run-to-completion | Long-running |
| Restart | Never/OnFailure | Always |
| Replicas | Completions | Desired count |
| Use case | Batch, one-shot | Services |
Użycie w Sympozium
Deployments są używane dla długo żyjących komponentów:
| Komponent | Repliki | Opis |
|---|---|---|
| Channel pods | 1 per kanał | Telegram, Slack, Discord, WhatsApp |
| Memory server | 1 per instance | SQLite + FTS5 na PVC |
| Web proxy | 1 per instance | OpenAI-compat API (server mode) |
| Controller | 1 | Reconciler CRDs |
| API Server | 1 | HTTP + WebSocket |
| NATS | 1 (StatefulSet) | Event bus |
AgentRun w trybie server tworzy Deployment + Service zamiast Job.
Więcej: Tryb Server vs Task | Kanały - Telegram Slack Discord WhatsApp
Powiązane: Job | StatefulSet | Pod | Tryb Server vs Task