# ConfigMap i Secret #kubernetes #storage #słownik ## ConfigMap **ConfigMap** przechowuje **niekonfidencjalne dane** jako pary klucz-wartość. Montowane jako pliki lub zmienne środowiskowe w podach. ```yaml apiVersion: v1 kind: ConfigMap metadata: name: my-agent-memory data: MEMORY.md: | # Agent Memory - Detected OOM on pod-x ``` ### Montowanie jako pliki ```yaml volumes: - name: skills configMap: name: skillpack-k8s-ops volumeMounts: - name: skills mountPath: /skills readOnly: true ``` ### Ograniczenia - Max rozmiar: **1 MB** (etcd limit) - Brak szyfrowania - Widoczne w kubectl describe ## Secret **Secret** przechowuje **poufne dane** (hasła, tokeny, klucze) zakodowane w base64. ```yaml apiVersion: v1 kind: Secret metadata: name: openai-key type: Opaque data: OPENAI_API_KEY: c2stYWJjMTIz # base64 encoded ``` ### Montowanie jako env vars ```yaml envFrom: - secretRef: name: openai-key ``` ### Typy Secrets | Typ | Opis | |-----|------| | `Opaque` | Dowolne dane | | `kubernetes.io/tls` | Certyfikaty TLS | | `kubernetes.io/dockerconfigjson` | Docker registry credentials | | `kubernetes.io/service-account-token` | Token SA | ## Użycie w Sympozium ### ConfigMaps - **Skills** - SkillPack → ConfigMap z Markdown instrukcjami, montowany w `/skills/` - **Memory** (legacy) - `-memory` z kluczem `MEMORY.md` - **Input** - Task + system prompt dla agenta - **MCP config** - Konfiguracja MCP serwerów ### Secrets - **AuthRefs** - Klucze API providerów LLM (OPENAI_API_KEY, ANTHROPIC_API_KEY) - **Channel credentials** - Telegram bot token, Slack token - **Web endpoint API key** - Auto-generated `sk-` - **Skill secrets** - GH_TOKEN dla github-gitops (mirrored do namespace runu) --- Powiązane: [[SkillPack]] | [[Persistent Memory]] | [[SympoziumInstance]]