# Sidecar Pattern #kubernetes #patterns #słownik ## Co to jest? **Sidecar Pattern** to wzorzec architektoniczny w Kubernetes gdzie **dodatkowy kontener** (sidecar) jest uruchamiany obok głównego kontenera w tym samym [[Pod|podzie]]. Sidecar rozszerza lub uzupełnia funkcjonalność głównego kontenera. ## Cechy - Współdzieli **sieć** z głównym kontenerem (localhost) - Współdzieli **woluminy** (np. /ipc, /workspace) - Ma **własne zasoby** (CPU, memory limits) - Ma **własny lifecycle** (może mieć inne healthchecks) - **Nie modyfikuje** głównego kontenera ## Typowe zastosowania | Sidecar | Rola | Przykład | |---------|------|---------| | Log collector | Zbiera logi | Fluentd, Filebeat | | Proxy | Routing sieciowy | Envoy (Istio), Linkerd | | Auth | Autentykacja/autoryzacja | OAuth2 proxy | | Monitoring | Metryki | Prometheus exporter | | **IPC Bridge** | Komunikacja | Sympozium: fsnotify → NATS | | **Skill sidecar** | Narzędzia | Sympozium: kubectl, helm | ## Komunikacja main ↔ sidecar | Metoda | Opis | Użycie w Sympozium | |--------|------|---------------------| | **Shared volume** | Pliki w współdzielonym katalogu | `/ipc/` - JSON request/response | | **localhost** | HTTP/gRPC na localhost | Memory server API | | **Shared network** | Porty na localhost | MCP bridge | ## Użycie w Sympozium Sympozium to **intensywny użytkownik sidecar pattern**. Typowy agent pod: ``` ┌─────────────────────────────────────────────┐ │ Agent Pod │ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ MAIN: │ │ SIDECAR: │ │ SIDECAR: │ │ │ │ Agent │ │ IPC │ │ Skill │ │ │ │ Runner │ │ Bridge │ │ (kubectl)│ │ │ └──────────┘ └──────────┘ └──────────┘ │ │ │ │ ┌──────────┐ ┌──────────┐ │ │ │ SIDECAR: │ │ SIDECAR: │ │ │ │ MCP │ │ Sandbox │ │ │ │ Bridge │ │ (opcj.) │ │ │ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────┘ ``` Kluczowa innowacja: **skill sidecary mają własny [[RBAC]]**, a agent container nie ma żadnych credentials K8s. Więcej: [[Skill Sidecars i auto-RBAC]] | [[Cykl życia Agent Pod]] --- Powiązane: [[Pod]] | [[Skill Sidecars i auto-RBAC]] | [[Przepływ danych i IPC]]