Pregătirea clusterului
Obținerea repository-ului
Clonați repository-ul și intrați în directorul său:
git clone https://github.com/Cloud-Computing-UPB/lab3.git
cd lab3
Structura relevantă este:
k8s/
├── 00-namespace.yaml
├── 10-configmap.yaml
├── 11-secret.yaml
├── 20-postgres-service.yaml
├── 21-postgres-statefulset.yaml
├── 30-api-deployment.yaml
└── 31-api-service.yaml
Crearea clusterului
Fișierul kind-config.yaml definește un control plane și două noduri worker.
Creăm un cluster separat pentru acest laborator:
kind create cluster --name cc-lab3 --config kind-config.yaml
Verificați contextul și nodurile:
kubectl config current-context
kubectl get nodes -o wide
Contextul activ trebuie să fie kind-cc-lab3.
Namespace-ul laboratorului
Aplicăm primul manifest:
kubectl apply -f k8s/00-namespace.yaml
kubectl get namespace cc-lab3
Toate obiectele aplicației vor fi create în namespace-ul cc-lab3.
Verificarea stocării disponibile
Listați StorageClass-urile clusterului:
kubectl get storageclass
Vom omite storageClassName din manifest. Kubernetes va folosi StorageClass-ul
implicit atunci când creează PersistentVolumeClaim-ul PostgreSQL.
atenție
Dacă niciun StorageClass nu este marcat ca implicit, PVC-ul va rămâne în starea
Pending. Verificați acest lucru înainte de a investiga aplicația.