Kubernetes
App-as-Code
Orkiestracja kontenerów — deklaratywny runtime dla aplikacji.
Kubernetes to standard orkiestracji kontenerów: deklarujesz pożądany stan aplikacji (ile replik, jakie zasoby, jak sieć), a klaster nieustannie utrzymuje ten stan — restartuje padnięte pody, skaluje i wdraża nowe wersje. To fundament „App-as-Code”: całe środowisko uruchomieniowe opisujesz w wersjonowanych manifestach YAML.
Kiedy używać
- Uruchamiasz wiele usług/kontenerów i potrzebujesz skalowania oraz samonaprawiania.
- Chcesz deklaratywnie opisać runtime i wdrażać przez GitOps.
- Standaryzujesz platformę pod wiele zespołów i środowisk.
Przykład użycia
apiVersion: apps/v1
kind: Deployment
metadata: { name: web }
spec:
replicas: 3
selector: { matchLabels: { app: web } }
template:
metadata: { labels: { app: web } }
spec:
containers:
- name: web
image: ghcr.io/eiac/web:1.0.0
ports: [{ containerPort: 8080 }]
kubectl apply -f deployment.yaml
kubectl get pods -l app=web