This commit adds complete documentation and tooling for migrating from local development (Kind/Colima on macOS) to production deployment (MicroK8s on Ubuntu VPS at Clouding.io). Documentation added: - K8S-MIGRATION-GUIDE.md: Comprehensive step-by-step migration guide covering all phases from VPS setup to post-deployment operations - MIGRATION-CHECKLIST.md: Quick reference checklist for migration tasks - MIGRATION-SUMMARY.md: High-level overview and key changes summary Configuration updates: - Added storage-patch.yaml for MicroK8s storage class compatibility (changes from 'standard' to 'microk8s-hostpath') - Updated prod/kustomization.yaml to include storage patch Helper scripts: - deploy-production.sh: Interactive deployment script with validation - tag-and-push-images.sh: Automated image tagging and registry push - backup-databases.sh: Database backup script for production Key differences addressed: - Ingress: MicroK8s addon vs custom NGINX - Storage: MicroK8s hostpath vs Kind standard storage - Registry: Container registry configuration for production - SSL: Let's Encrypt production certificates - Domains: Real domain configuration vs localhost - Resources: Production-grade resource limits and scaling The migration guide covers: - VPS setup and MicroK8s installation - Configuration adaptations required - Container registry setup options - SSL certificate configuration - Monitoring and backup setup - Troubleshooting common issues - Security hardening checklist - Rollback procedures All existing Kubernetes manifests remain unchanged and compatible.
96 lines
1.9 KiB
YAML
96 lines
1.9 KiB
YAML
apiVersion: kustomize.config.k8s.io/v1beta1
|
|
kind: Kustomization
|
|
|
|
metadata:
|
|
name: bakery-ia-prod
|
|
|
|
namespace: bakery-ia
|
|
|
|
resources:
|
|
- ../../base
|
|
- prod-ingress.yaml
|
|
- prod-configmap.yaml
|
|
|
|
patchesStrategicMerge:
|
|
- storage-patch.yaml
|
|
|
|
labels:
|
|
- includeSelectors: true
|
|
pairs:
|
|
environment: production
|
|
tier: production
|
|
|
|
images:
|
|
- name: bakery/auth-service
|
|
newTag: latest
|
|
- name: bakery/tenant-service
|
|
newTag: latest
|
|
- name: bakery/training-service
|
|
newTag: latest
|
|
- name: bakery/forecasting-service
|
|
newTag: latest
|
|
- name: bakery/sales-service
|
|
newTag: latest
|
|
- name: bakery/external-service
|
|
newTag: latest
|
|
- name: bakery/notification-service
|
|
newTag: latest
|
|
- name: bakery/inventory-service
|
|
newTag: latest
|
|
- name: bakery/recipes-service
|
|
newTag: latest
|
|
- name: bakery/suppliers-service
|
|
newTag: latest
|
|
- name: bakery/pos-service
|
|
newTag: latest
|
|
- name: bakery/orders-service
|
|
newTag: latest
|
|
- name: bakery/production-service
|
|
newTag: latest
|
|
- name: bakery/alert-processor
|
|
newTag: latest
|
|
- name: bakery/gateway
|
|
newTag: latest
|
|
- name: bakery/dashboard
|
|
newTag: latest
|
|
|
|
replicas:
|
|
- name: auth-service
|
|
count: 3
|
|
- name: tenant-service
|
|
count: 2
|
|
- name: training-service
|
|
count: 2
|
|
- name: forecasting-service
|
|
count: 3
|
|
- name: sales-service
|
|
count: 2
|
|
- name: external-service
|
|
count: 2
|
|
- name: notification-service
|
|
count: 3
|
|
- name: inventory-service
|
|
count: 2
|
|
- name: recipes-service
|
|
count: 2
|
|
- name: suppliers-service
|
|
count: 2
|
|
- name: pos-service
|
|
count: 2
|
|
- name: orders-service
|
|
count: 3
|
|
- name: production-service
|
|
count: 2
|
|
- name: alert-processor
|
|
count: 3
|
|
- name: procurement-service
|
|
count: 2
|
|
- name: orchestrator-service
|
|
count: 2
|
|
- name: ai-insights-service
|
|
count: 2
|
|
- name: gateway
|
|
count: 3
|
|
- name: frontend
|
|
count: 2
|