Skip to main content

diagpass

Overview​

  • Namespace: diagpass
  • Purpose: DIAG Employee Pass System - INACTIVE
  • Age: ~4 years 61 days
  • Status: INACTIVE - All deployments scaled to 0
  • Workloads: 3 deployments (ALL scaled to 0)
  • Environment: PRODUCTION (Currently inactive)

Architecture​

DIAG employee pass/badge system (PHP/Nginx based):

  • API: PHP backend service (0 replicas)
  • Nginx: Web server (0 replicas)
  • Consumer: Event consumer for patient data (0 replicas)

Status: All components scaled to 0 (inactive)

Auto-Scaling Configuration​

Not Applicable:

  • No HPAs configured
  • All deployments at fixed 0 replicas

Workload Categories​

ALL SCALED TO ZERO (3 deployments)​

NameReplicasStatusPurpose
diag-passport-bknd-service-api0/0InactivePHP API backend
diag-passport-bknd-service-nginx0/0InactiveNginx web server
consumer-patient0/0InactivePatient data consumer

Services​

NameTypeCluster IPPortsPurpose
apiClusterIP10.8.20.109000PHP-FPM service (inactive)
nginxNodePort10.8.30.1080:32695Nginx web server (inactive)

Access & Management​

View all resources:​

kubectl get all -n diagpass

Check deployment status:​

# All deployments scaled to 0
kubectl get deployments -n diagpass

# Check services
kubectl get svc -n diagpass

Scale up if needed:​

# Scale API
kubectl scale deployment diag-passport-bknd-service-api --replicas=1 -n diagpass

# Scale Nginx
kubectl scale deployment diag-passport-bknd-service-nginx --replicas=1 -n diagpass

# Scale consumer (if needed)
kubectl scale deployment consumer-patient --replicas=1 -n diagpass

View logs (if scaled up):​

kubectl logs -f deployment/diag-passport-bknd-service-api -n diagpass
kubectl logs -f deployment/diag-passport-bknd-service-nginx -n diagpass

Data Flow (When Active)​

NodePort 32695
↓
Nginx (nginx:80)
↓
PHP-FPM API (api:9000)
↓
Database (external)
↓
Patient Consumer (Kafka/Event stream)

Production Considerations​

Current Status​

INACTIVE:

  • All deployments at 0 replicas
  • Services still exist (ready to activate)
  • Age: ~4 years (very old)
  • No HPA configured

Recommendations​

  1. Review Usage:

    • Determine if employee pass system is still needed
    • Last scaled down: Check deployment history
    • If permanently unused → consider namespace deletion
    • Check with HR/Security teams on usage
  2. If Reactivating:

    • Test functionality in staging first
    • Verify database connectivity
    • Check Kafka consumer configuration
    • Scale up gradually (api → nginx → consumer)
    • Verify NodePort access (32695)
  3. If No Longer Needed:

    • Document decommission decision
    • Back up employee pass data if needed
    • Export configurations
    • Delete namespace: kubectl delete namespace diagpass
  4. Integration Check:

    • consumer-patient suggests Kafka integration
    • Check if other systems depend on this service
    • Verify patient data sync requirements

Troubleshooting​

Check why scaled to 0:​

# Check deployment history
kubectl rollout history deployment/diag-passport-bknd-service-api -n diagpass

# Check recent events
kubectl get events -n diagpass --sort-by='.lastTimestamp' | head -20

# Check for scaling annotations
kubectl get deployment -n diagpass -o yaml | grep -i "replica\|scale"

Reactivate service:​

# Scale core components
kubectl scale deployment diag-passport-bknd-service-api --replicas=1 -n diagpass
kubectl scale deployment diag-passport-bknd-service-nginx --replicas=1 -n diagpass

# Wait for pods
kubectl wait --for=condition=ready pod -l app=diag-passport-bknd-service-nginx -n diagpass --timeout=300s

# Check status
kubectl get pods -n diagpass

# Test service
kubectl port-forward -n diagpass service/nginx 8080:80
# Access: http://localhost:8080

If issues after scaling up:​

# Check pod logs
kubectl logs -f deployment/diag-passport-bknd-service-api -n diagpass
kubectl logs -f deployment/diag-passport-bknd-service-nginx -n diagpass

# Check pod events
kubectl describe pod -n diagpass

# Test API
kubectl port-forward -n diagpass service/api 9000:9000

Performance Metrics​

Current Scale​

  • All Deployments: 0 replicas (INACTIVE)
  • No HPAs: No autoscaling configured
  • Age: ~4 years 61 days
  • Status: Inactive/Decommissioned

Historical Context​

  • Last Active: Unknown (all at 0 replicas)
  • Architecture: PHP/Nginx employee pass system
  • Purpose: DIAG internal employee badge/pass management
  • Integration: Patient data consumer (Kafka)
  • Decision Needed: Keep or decommission?

Architecture Notes​

  • LAMP-like Stack: Nginx + PHP-FPM
  • NodePort Access: Port 32695 (external access when active)
  • Event Consumer: consumer-patient for patient data sync
  • Inactive: All workloads scaled to 0
  • Review Needed: Determine if namespace should be deleted
  • HR System: Appears to be employee-facing application