←Back to Documentation
Zero-Downtime Upgrades
Upgrade entropyDB to the latest version without service interruption
Overview
entropyDB supports zero-downtime upgrades with:
- • Rolling Upgrades: Upgrade nodes one at a time
- • Blue-Green Deployment: Switch between environments
- • Compatibility Mode: Mixed-version clusters
- • Automated Rollback: Revert if issues detected
- • Version Checks: Validate compatibility before upgrade
Pre-Upgrade Checklist
# Check current version entropy-admin --version # Check cluster health entropy-admin cluster health # Verify backups are current entropy-backup verify-latest # Check upgrade compatibility entropy-admin upgrade check --target-version 2.0.0 # Review release notes curl https://entropydb.io/releases/2.0.0/notes.txt # Test upgrade in staging first entropy-admin upgrade simulate --target-version 2.0.0
Rolling Upgrade
# Automated rolling upgrade entropy-admin upgrade rolling \ --target-version 2.0.0 \ --max-unavailable 1 \ --health-check-interval 30s \ --rollback-on-failure # Manual rolling upgrade process # Step 1: Upgrade secondary nodes first for node in node2 node3; do echo "Upgrading $node..." ssh $node "systemctl stop entropydb" ssh $node "entropy-admin upgrade install 2.0.0" ssh $node "systemctl start entropydb" # Wait for node to be healthy entropy-admin node wait-healthy $node --timeout 5m done # Step 2: Failover primary entropy-admin failover --to node2 # Step 3: Upgrade former primary ssh node1 "systemctl stop entropydb" ssh node1 "entropy-admin upgrade install 2.0.0" ssh node1 "systemctl start entropydb" # Step 4: Verify cluster entropy-admin cluster status
Kubernetes Rolling Update
# Update StatefulSet with new version kubectl set image statefulset/entropydb \ entropydb=entropydb/entropydb:2.0.0 \ --namespace entropydb # Or update Helm chart helm upgrade entropydb entropydb/entropydb \ --set image.tag=2.0.0 \ --namespace entropydb \ --wait # Monitor rollout kubectl rollout status statefulset/entropydb -n entropydb # Rollback if needed kubectl rollout undo statefulset/entropydb -n entropydb
Version Compatibility
Supported Upgrade Paths:
- • 1.x → 2.0 (direct upgrade supported)
- • 2.0 → 2.1 (rolling upgrade supported)
- • 1.x → 2.1 (must upgrade to 2.0 first)
-- Check compatibility
SELECT entropy_upgrade_compatibility('2.0.0');
-- Enable mixed-version mode during upgrade
ALTER SYSTEM SET allow_mixed_versions = true;
ALTER SYSTEM SET version_compatibility_mode = 'backward';
-- After upgrade complete
ALTER SYSTEM SET allow_mixed_versions = false;Best Practices
Before Upgrade
- • Take full backup
- • Test in staging environment
- • Review release notes
- • Schedule maintenance window
During Upgrade
- • Monitor cluster health
- • Verify each node before proceeding
- • Keep communication channels open
- • Have rollback plan ready