#!/bin/bash # Install Kong API Gateway set -e NAMESPACE="api-gateway" echo "🚪 Installing Kong API Gateway..." # Check prerequisites command -v kubectl >/dev/null 2>&1 || { echo "❌ kubectl not found"; exit 1; } # Create namespace echo "📦 Creating namespace: $NAMESPACE" kubectl create namespace "$NAMESPACE" --dry-run=client -o yaml | kubectl apply -f - # Create ConfigMap from kong.yaml echo "📝 Creating Kong configuration..." kubectl create configmap kong-config \ --from-file=kong.yaml=kong.yaml \ --namespace="$NAMESPACE" \ --dry-run=client -o yaml | kubectl apply -f - # Apply deployment echo "🚀 Deploying Kong..." kubectl apply -f k8s-deployment.yaml # Wait for deployment echo "⏳ Waiting for Kong to be ready..." kubectl wait --for=condition=available --timeout=300s deployment/kong -n "$NAMESPACE" echo "✅ Kong API Gateway installed successfully!" echo "" echo "📝 Access Kong Admin API:" echo " kubectl port-forward -n $NAMESPACE svc/kong-proxy 8001:8001" echo "" echo "📝 Access Kong Proxy:" echo " kubectl port-forward -n $NAMESPACE svc/kong-proxy 8000:80"