Kubernetes Test Documentation
setup-cluster.sh
- Konfiguracja klastradeploy-app.sh
- Wdrożenie aplikacjitest-app.sh
- Testy automatycznedeploy-git.sh
- Wdrożenie z repozytorium
./setup-cluster.sh <MASTER_IP> <WORKER_IP>
Walidacja:
- Status node'ów:
kubectl get nodes
- Komponenty systemowe:
kubectl get pods -n kube-system
- Networking CNI:
kubectl get pods -n kube-flannel
Kryteria akceptacji:
- Wszystkie node'y w stanie Ready
- CoreDNS działa
- Flannel CNI aktywny
./deploy-app.sh <MASTER_IP>
Walidacja:
- Deployment:
kubectl get deployments
- Pody:
kubectl get pods
- Serwis:
kubectl get svc
- Ingress:
kubectl get ingress
Kryteria akceptacji:
- Deployment ma 2 repliki
- Wszystkie pody Running
- LoadBalancer ma zewnętrzne IP
- HTTPS działa
./deploy-git.sh <MASTER_IP> <GIT_URL>
Walidacja:
- Pliki konfiguracyjne:
ls -la k8s-temp/*.yaml
- Status wdrożenia:
kubectl get all -n example
Kryteria akceptacji:
- Repo zostało sklonowane
- Wszystkie pliki YAML zaaplikowane
- Zasoby działają w namespace example
# Sprawdź CNI
ls /etc/cni/net.d/
kubectl logs -n kube-system -l k8s-app=flannel
# Sprawdź tainty
kubectl describe nodes | grep Taint
kubectl describe pod <POD_NAME>
# Sprawdź serwis
kubectl describe service <SERVICE_NAME>
# Sprawdź eventy
kubectl get events --sort-by=.metadata.creationTimestamp
# Kubelet
journalctl -u kubelet
# Containerd
journalctl -u containerd
# API Server
kubectl logs -n kube-system kube-apiserver-*
kubectl top nodes
kubectl top pods
kubectl get componentstatuses
kubectl get events --all-namespaces
kubectl get endpoints
netstat -tulpn