|
| 1 | +#!/bin/bash |
| 2 | +set -e |
| 3 | + |
| 4 | +echo "Deploying LinkedIn to K3s Production..." |
| 5 | + |
| 6 | +echo "Creating namespaces..." |
| 7 | +kubectl apply -f k8s/namespace.yaml |
| 8 | + |
| 9 | +echo "Creating configmap and secrets..." |
| 10 | +kubectl apply -f k8s/configmap.yaml |
| 11 | +kubectl apply -f k8s/secrets.yaml |
| 12 | + |
| 13 | +echo "Deploying databases..." |
| 14 | +kubectl apply -f k8s/databases/postgres.yaml |
| 15 | +kubectl apply -f k8s/databases/neo4j.yaml |
| 16 | +kubectl apply -f k8s/databases/redis.yaml |
| 17 | + |
| 18 | +echo "Waiting for databases..." |
| 19 | +kubectl rollout status statefulset/postgres -n linkedin-prod --timeout=3m |
| 20 | +kubectl rollout status statefulset/redis -n linkedin-prod --timeout=3m |
| 21 | + |
| 22 | +echo "Deploying messaging..." |
| 23 | +kubectl apply -f k8s/messaging/kafka.yaml |
| 24 | +sleep 30 |
| 25 | +kubectl apply -f k8s/messaging/kafbat-ui.yaml |
| 26 | + |
| 27 | +echo "Deploying infrastructure..." |
| 28 | +kubectl apply -f k8s/infrastructure/config-server.yaml |
| 29 | +kubectl rollout status deployment/config-server -n linkedin-prod --timeout=3m |
| 30 | + |
| 31 | +kubectl apply -f k8s/infrastructure/discovery-server.yaml |
| 32 | +kubectl rollout status deployment/discovery-server -n linkedin-prod --timeout=3m |
| 33 | + |
| 34 | +echo "Deploying microservices..." |
| 35 | +kubectl apply -f k8s/microservices/ |
| 36 | +kubectl rollout status deployment/api-gateway -n linkedin-prod --timeout=5m |
| 37 | +kubectl rollout status deployment/user-service -n linkedin-prod --timeout=5m |
| 38 | +kubectl rollout status deployment/post-service -n linkedin-prod --timeout=5m |
| 39 | + |
| 40 | +echo "Deploying observability..." |
| 41 | +kubectl apply -f k8s/observability/ |
| 42 | + |
| 43 | +echo "Applying network policies..." |
| 44 | +kubectl apply -f k8s/network-policy.yaml |
| 45 | + |
| 46 | +echo "" |
| 47 | +echo "Deployment complete!" |
| 48 | +echo "" |
| 49 | +kubectl get pods -n linkedin-prod |
| 50 | +echo "" |
| 51 | +kubectl get services -n linkedin-prod |
0 commit comments