Initial commit
This commit is contained in:
93
shfiles/check-k8s-status.sh
Normal file
93
shfiles/check-k8s-status.sh
Normal file
@@ -0,0 +1,93 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "=========================================="
|
||||
echo "🔍 KUBERNETES DEPLOYMENT STATUS"
|
||||
echo "=========================================="
|
||||
echo ""
|
||||
|
||||
echo "📦 1. PODS STATUS (All Namespaces)"
|
||||
echo "-----------------------------------"
|
||||
kubectl get pods -A -o wide
|
||||
echo ""
|
||||
|
||||
echo "📦 2. NATS-BACKEND NAMESPACE - PODS"
|
||||
echo "-----------------------------------"
|
||||
kubectl get pods -n nats-backend -o wide
|
||||
echo ""
|
||||
|
||||
echo "🌐 3. SERVICES & LOAD BALANCER"
|
||||
echo "-----------------------------------"
|
||||
kubectl get svc -n nats-backend -o wide
|
||||
echo ""
|
||||
|
||||
echo "⚖️ 4. LOAD BALANCER DETAILS"
|
||||
echo "-----------------------------------"
|
||||
kubectl get svc fastapi-lb -n nats-backend -o yaml | grep -A 10 "spec:"
|
||||
echo ""
|
||||
|
||||
echo "🚀 5. K3S KUBERNETES LOAD BALANCER PODS (klipper-lb)"
|
||||
echo "-----------------------------------"
|
||||
kubectl get pods -n kube-system -l "svccontroller.k3s.cattle.io/svcname=fastapi-lb" -o wide
|
||||
echo ""
|
||||
|
||||
echo "📊 6. DEPLOYMENTS & REPLICAS"
|
||||
echo "-----------------------------------"
|
||||
kubectl get deployments -n nats-backend -o wide
|
||||
echo ""
|
||||
|
||||
echo "📈 7. HORIZONTAL POD AUTOSCALER (HPA)"
|
||||
echo "-----------------------------------"
|
||||
kubectl get hpa -n nats-backend
|
||||
echo ""
|
||||
|
||||
echo "🔗 8. ENDPOINTS (Service Backends)"
|
||||
echo "-----------------------------------"
|
||||
kubectl get endpoints -n nats-backend
|
||||
echo ""
|
||||
|
||||
echo "🌍 9. INGRESS/GATEWAY STATUS"
|
||||
echo "-----------------------------------"
|
||||
kubectl get gateway -A 2>/dev/null || echo "No Gateway API resources found"
|
||||
kubectl get ingress -A 2>/dev/null || echo "No Ingress resources found"
|
||||
echo ""
|
||||
|
||||
echo "📋 10. RECENT EVENTS (Last 20)"
|
||||
echo "-----------------------------------"
|
||||
kubectl get events -n nats-backend --sort-by='.lastTimestamp' | tail -20
|
||||
echo ""
|
||||
|
||||
echo "💾 11. RESOURCE USAGE (CPU/Memory)"
|
||||
echo "-----------------------------------"
|
||||
kubectl top pods -n nats-backend 2>/dev/null || echo "Metrics server not available"
|
||||
kubectl top nodes 2>/dev/null || echo "Metrics server not available"
|
||||
echo ""
|
||||
|
||||
echo "🔍 12. FASTAPI POD LOGS (Last 30 lines)"
|
||||
echo "-----------------------------------"
|
||||
kubectl logs -n nats-backend -l app=fastapi-backend --tail=30 2>/dev/null || echo "No FastAPI pods found"
|
||||
echo ""
|
||||
|
||||
echo "🔍 13. WORKER POD LOGS (Last 30 lines)"
|
||||
echo "-----------------------------------"
|
||||
kubectl logs -n nats-backend -l app=nats-worker --tail=30 2>/dev/null || echo "No worker pods found"
|
||||
echo ""
|
||||
|
||||
echo "🌐 14. NETWORK FLOW CHECK"
|
||||
echo "-----------------------------------"
|
||||
echo "Load Balancer External IP/Port:"
|
||||
kubectl get svc fastapi-lb -n nats-backend -o jsonpath='{.status.loadBalancer.ingress[0].ip}:{.spec.ports[0].port}' 2>/dev/null || echo "Checking NodePort..."
|
||||
kubectl get svc fastapi-lb -n nats-backend -o jsonpath='NodePort: {.spec.ports[0].nodePort}' 2>/dev/null
|
||||
echo ""
|
||||
echo "FastAPI Service ClusterIP:"
|
||||
kubectl get svc fastapi-backend -n nats-backend -o jsonpath='{.spec.clusterIP}:{.spec.ports[0].port}' 2>/dev/null
|
||||
echo ""
|
||||
|
||||
echo "✅ 15. HEALTH CHECK"
|
||||
echo "-----------------------------------"
|
||||
kubectl run health-check --rm -i --restart=Never --image=curlimages/curl -- curl -s http://fastapi-backend.nats-backend:8000/health 2>/dev/null || echo "Health check failed"
|
||||
echo ""
|
||||
|
||||
echo "=========================================="
|
||||
echo "✅ Status Check Complete!"
|
||||
echo "=========================================="
|
||||
|
||||
Reference in New Issue
Block a user