spc--booking-qs
Overview
- Namespace:
spc--booking-qs - Purpose: Sapoche Booking Queue Service Backend - PRODUCTION
- Age: ~2 years 361 days (since October 2022)
- Status: Active - Booking queue management
- Workloads: 2 deployments (both at 3 replicas) - Excellent HA
- Environment: PRODUCTION - Booking queue processing
Architecture
Booking queue system with excellent high availability:
- Main Application: REST API backend (3 replicas) - Excellent HA
- Event Consumer: Booking topic consumer (3 replicas) - Excellent HA
Auto-Scaling Configuration
No Auto-Scaling Configured:
- No HorizontalPodAutoscalers (HPAs)
- No KEDA scaled objects
- Fixed 3 replicas for both deployments
Workload Categories
Main Application (1 deployment with excellent HA)
| Name | Replicas | Status | Purpose |
|---|---|---|---|
| spc--booking-qs--be--app--prod | 3/3 | Running | Booking queue API - Excellent HA |
Event Consumer (1 deployment with excellent HA)
| Name | Replicas | Status | Purpose |
|---|---|---|---|
| spc-booking-topic--consumer | 3/3 | Running | Booking event consumer - Excellent HA |
Services
| Name | Type | Cluster IP | Ports | NodePort | Purpose |
|---|---|---|---|---|---|
| spc--booking-qs--be--app--prod | NodePort | 10.8.27.135 | 80 | 31798 | Booking queue API |
Access & Management
View all resources:
kubectl get all -n spc--booking-qs
Check main application:
# View app pods (3 replicas)
kubectl get pods -n spc--booking-qs | grep "app--prod"
# View logs from all replicas
kubectl logs -f deployment/spc--booking-qs--be--app--prod -n spc--booking-qs
Check consumer:
# View consumer pods (3 replicas)
kubectl get pods -n spc--booking-qs | grep "consumer"
# View logs from all replicas
kubectl logs -f deployment/spc--spc-booking-topic--consumer--prod -n spc--booking-qs
Restart services:
# Restart main app
kubectl rollout restart deployment/spc--booking-qs--be--app--prod -n spc--booking-qs
# Restart consumer
kubectl rollout restart deployment/spc--spc-booking-topic--consumer--prod -n spc--booking-qs
# Restart all
kubectl rollout restart deployment --all -n spc--booking-qs
Monitoring
Resource usage:
kubectl top pods -n spc--booking-qs --sort-by=memory
kubectl top pods -n spc--booking-qs --sort-by=cpu
Events:
kubectl get events -n spc--booking-qs --sort-by='.lastTimestamp' | head -20
Data Flow
Booking Queue Request
↓
spc--booking-qs--be--app--prod (NodePort 31798)
↓
Booking Queue API (3 replicas - Excellent HA)
↓
Database (external)
↓
Events Published to Message Queue
↓
Booking Topic Consumer (3 replicas - Excellent HA)
↓
Process booking queue events
↓
Update booking status and queue
Booking Queue Workflow
1. Booking Queue API (Excellent HA)
- 3 replicas provide excellent redundancy
- Booking queue management
- Queue status queries
- Booking slot management
- Queue position tracking
- Booking availability
2. Booking Topic Consumer (Excellent HA)
spc-booking-topic--consumerprocesses booking events with 3 replicas- Booking confirmation events
- Queue updates
- Slot allocation
- Booking status changes
- Real-time queue processing
Production Considerations
High Availability
EXCELLENT Configuration:
- Main API: 3 replicas - Excellent HA
- Consumer: 3 replicas - Excellent HA
- Very mature namespace (~3 years)
- Stable operation (66 days since update)
- Both deployments with redundancy
Recommendations
-
Maintain Current Excellent HA (Already Perfect):
- Main API: 3 replicas (excellent)
- Consumer: 3 replicas (excellent)
- Well-established (~3 years in production)
- Stable updates (66 days ago)
-
Consider Auto-Scaling (Optional Enhancement):
- Main API: Add HPA (3-10 replicas based on traffic)
- Consumer: Consider KEDA for queue-based scaling (3-10 replicas)
- Current fixed 3 replicas works well but auto-scaling could optimize
-
Recent Activity:
- Stable: Updated 66 days ago
- Both deployments updated together
- Consistent and mature operation
-
Monitoring Priorities:
- Queue processing lag
- Booking event consumer lag
- API response times
- Queue depth and wait times
- Booking success rates
Troubleshooting
Main API issues:
# Check all 3 API pods
kubectl get pods -n spc--booking-qs | grep "app--prod"
# Check logs from all replicas
kubectl logs deployment/spc--booking-qs--be--app--prod -n spc--booking-qs --all-containers=true --tail=100
# Test API endpoint
kubectl port-forward -n spc--booking-qs service/spc--booking-qs--be--app--prod 8080:80
Consumer issues:
# Check all 3 consumer pods
kubectl get pods -n spc--booking-qs | grep "consumer"
# Check logs from all replicas
kubectl logs -f deployment/spc--spc-booking-topic--consumer--prod -n spc--booking-qs
# Check for consumer errors
kubectl logs deployment/spc--spc-booking-topic--consumer--prod -n spc--booking-qs --tail=100 | grep -i "error\|booking\|fail"
# Restart consumer
kubectl rollout restart deployment/spc--spc-booking-topic--consumer--prod -n spc--booking-qs
Queue processing issues:
# Check consumer lag
kubectl logs deployment/spc--spc-booking-topic--consumer--prod -n spc--booking-qs --tail=100 | grep -i "lag\|queue\|pending"
# Check all pods status
kubectl get pods -n spc--booking-qs
# Restart both deployments
kubectl rollout restart deployment --all -n spc--booking-qs
Performance Metrics
Current Scale
- Main API: 3 replicas - Excellent HA
- Consumer: 3 replicas - Excellent HA
- Total Active Pods: 6 pods
Stability
- Namespace Age: ~3 years (very mature)
- Recent Update: 66 days ago (stable)
- All Deployments: Fixed 3 replicas (excellent HA)
- Configuration: Perfect for production booking queue