initial commit

This commit is contained in:
2026-03-25 00:05:57 +01:00
commit 25c7d598ca
63 changed files with 5257 additions and 0 deletions

View File

@@ -0,0 +1,64 @@
# 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]]