Deploy Infrastructure
Deploy entire ORISO Platform infrastructure using Helm umbrella chart
Deploy Infrastructure
Deploy the complete ORISO Platform infrastructure using Helm charts. All services are deployed via a single umbrella Helm chart.
ORISO Platform v3.0.0 uses Helm charts for deployment. All 21 services are deployed via the oriso-platform umbrella chart in a single command.
Prepare the Helm deployment environment.
cd ~/online-beratung/caritas-workspace/ORISO-Kubernetes/helm
# Verify Helm chart structure
ls -la oriso-platform/
# Check values file
ls -la values.yamlYou should see:
oriso-platform/directory (umbrella chart)values.yamlfile (global values)charts/directory (sub-charts)
Update Helm chart dependencies before deployment.
cd ~/online-beratung/caritas-workspace/ORISO-Kubernetes/helm
# Navigate to umbrella chart
cd oriso-platform
# Update dependencies
helm dependency update
# Return to helm directory
cd ..Dependencies should download successfully. Check for any errors in the output.
This downloads all sub-chart dependencies defined in oriso-platform/Chart.yaml.
Deploy all services using the Helm umbrella chart.
cd ~/online-beratung/caritas-workspace/ORISO-Kubernetes/helm
# Deploy entire platform
helm install oriso-platform ./oriso-platform \
--namespace caritas \
--create-namespace \
-f values.yaml
# Monitor deployment
kubectl get pods -n caritas -wThis single command deploys:
- Infrastructure: MariaDB, MongoDB, PostgreSQL, Redis, RabbitMQ
- Authentication: Keycloak
- Communication: Matrix Synapse, Element, Discovery
- WebRTC: LiveKit
- Backend: 4 microservices
- Frontend: 2 applications
- Monitoring: SignOZ, Health Dashboard (if enabled)
Total: 21 services
All pods should eventually reach Running state. This may take 5-10 minutes for all services to start.
Verify all services are deployed and running.
# Check all pods
kubectl get pods -n caritas
# Check Helm release
helm list -n caritas
# Check services
kubectl get svc -n caritas
# Check persistent volumes
kubectl get pvc -n caritasExpected output:
- Helm release
oriso-platformshould showdeployedstatus - All pods should be
Running(may take time for initial startup) - Services should be created with
oriso-platform-*prefix - PVCs should be
Bound
Deploy Kubernetes Ingress resources for external access.
cd ~/online-beratung/caritas-workspace/ORISO-Kubernetes/ingress
# Deploy all Ingress resources
kubectl apply -f .
# Verify Ingress
kubectl get ingress -n caritas
# Check TLS certificates
kubectl get certificate -n caritasThis deploys 33 Ingress resources across 22 YAML files, providing:
- External access to all services
- TLS certificates via cert-manager
- Path rewriting and CORS support
Ingress resources should be created. TLS certificates will be issued automatically by cert-manager (may take a few minutes).
Deployment Phases
The Helm chart deploys services in the following order:
- Infrastructure - Databases, cache, queue
- Authentication - Keycloak
- Communication - Matrix, Element, Discovery
- WebRTC - LiveKit
- Backend - 4 microservices
- Frontend - 2 applications
- Monitoring - SignOZ, Health Dashboard
Verification
After deployment, verify everything is working:
# Check all pods are running
kubectl get pods -n caritas
# Check Helm release status
helm status oriso-platform -n caritas
# Check services
kubectl get svc -n caritas
# Check Ingress
kubectl get ingress -n caritas
# Check TLS certificates
kubectl get certificate -n caritas
# Test endpoints (after DNS is configured)
curl -I https://app.oriso.org
curl -I https://api.oriso.orgUpgrading Deployment
To upgrade the deployment:
cd ~/online-beratung/caritas-workspace/ORISO-Kubernetes/helm
# Update dependencies
cd oriso-platform
helm dependency update
cd ..
# Upgrade
helm upgrade oriso-platform ./oriso-platform \
--namespace caritas \
-f values.yamlRolling Back
If something goes wrong:
# List release history
helm history oriso-platform -n caritas
# Rollback to previous version
helm rollback oriso-platform -n caritas
# Or rollback to specific revision
helm rollback oriso-platform <revision-number> -n caritasTroubleshooting
Pods Not Starting
# Check pod status
kubectl get pods -n caritas
# Check pod logs
kubectl logs -n caritas <pod-name>
# Check pod events
kubectl describe pod -n caritas <pod-name>Helm Installation Fails
# Check Helm release
helm list -n caritas
# Check release status
helm status oriso-platform -n caritas
# View release values
helm get values oriso-platform -n caritas
# Check for errors
helm get manifest oriso-platform -n caritas | grep -i errorServices Not Accessible
# Check Ingress Controller
kubectl get pods -n ingress-nginx
# Check Ingress resources
kubectl get ingress -n caritas
# Check Ingress Controller logs
kubectl logs -n ingress-nginx -l app.kubernetes.io/component=controllerTLS Certificates Not Issued
# Check cert-manager
kubectl get pods -n cert-manager
# Check certificates
kubectl get certificate -n caritas
kubectl describe certificate <cert-name> -n caritas
# Check certificate requests
kubectl get certificaterequest -n caritasUninstalling
To uninstall the platform (data is preserved in PVCs):
# Uninstall Helm release
helm uninstall oriso-platform --namespace caritas
# Remove Ingress resources (optional)
cd ~/online-beratung/caritas-workspace/ORISO-Kubernetes/ingress
kubectl delete -f .
# Note: PVCs are retained by default
# To delete PVCs (WARNING: This deletes data):
kubectl delete pvc --all -n caritasUninstalling the Helm release does NOT delete PersistentVolumeClaims by default. Your data is preserved. Only delete PVCs if you want to remove all data.
Next Steps
- Setup Databases - Initialize database schemas
- Configure Keycloak - Import realm and configure HTTP access
- Post-Deployment - Complete post-deployment steps