Redis Software 8.0.2 introduces validated upgrade paths, new operational safeguards, and compatibility changes across clustered, HA, and Kubernetes deployments. This guide provides supported upgrade paths, required pre-checks, step-by-step instructions for both in-place and rolling upgrades, post-upgrade validation steps, and troubleshooting for common failures.
Sections covered include: Prerequisites, Upgrade Methods, Post-Upgrade Actions, Troubleshooting, and Kubernetes Considerations.
Prerequisites
Supported Upgrade Paths
| Current Version | Direct Upgrade Supported | Notes |
|---|---|---|
| 6.4.x | ✅ | Direct upgrade supported |
| 7.2.x | ✅ | Direct upgrade supported |
| 7.4.x | ✅ | Direct upgrade supported |
| 7.8.x | ✅ | Direct upgrade supported |
| 7.22.x | ✅ | Direct upgrade supported |
| 6.2.10 / 6.2.12 / 6.2.18 | ❌ | Upgrade first to 7.4.x or 7.8.x |
| 6.2.4 / 6.2.8 / 6.0.x | ❌ | Upgrade first to 7.4.x or 7.8.x |
Kubernetes: Only upgrades from Operator 7.4.2-2 or later are supported. See the Kubernetes 8.0.2-2 Release Notes.
Required System and Cluster Checks
Review release notes
- Read the RS 8.0.2-17 Release Notes to understand new features, behavior changes, and known limitations.
Confirm your upgrade path
- Verify your current RS version supports a direct upgrade using the Supported Upgrade Paths table.
Check database compatibility
- Databases must run Redis 6.2, 7.2, 7.4, 8.0, or 8.2.
- Upgrade any database older than 6.2 before upgrading the cluster.
Verify node access
- Ensure
rlcheckandrladmincan be executed as root on every node. - Confirm SSH or console access to all machines.
Validate cluster health
- Run:
rladmin status extra allrladmin cluster running_actions
- All shards must be healthy and no running actions should be present.
Identify the primary node
- Run
rladmin status nodesto locate the primary/master node. - Always upgrade the primary node first.
Perform and validate backups
- Create full backups for every database.
- Perform a test restore on a staging or validation cluster.
Freeze topology changes
- Pause migrations, scaling, configuration changes, module updates, or database edits until the entire upgrade is complete.
Upgrade Methods
Choose the method based on cluster size, environment, and availability requirements.
| Method | Recommended For | Service Impact | Summary |
|---|---|---|---|
| In-Place Upgrade | Small clusters, dev/test | Brief interruption per node | Simple sequential installation |
| Rolling Upgrade | Production clusters, HA | Zero downtime when executed correctly | Safest method; nodes upgraded one at a time |
In-Place Upgrade (Per Node)
Best for test and non-HA environments.
1. Validate node health
- Run
rlcheck - Run
rladmin status extra all
Proceed only when all checks pass.
2. Download RS 8.0.2 installation package
- Obtain from the Redis Download Center.
3. Stop external integrations
- Disable monitoring or custom automation interacting with Redis.
4. Install as root:
sudo ./install.sh
5. Verify post-install state
rlcheckrladmin status
6. Repeat for each node
Upgrade one node at a time and wait for the system to report OK before moving on.
Notes
- Do not modify installation directories or service users.
- Ensure
/opt/redislabs/binremains in PATH.
Rolling Upgrade Methods
Recommended for production deployments requiring high availability.
Extra Node Method (Preferred)
1. Add a new RS 8.0.2 node
Install RS 8.0.2 on a clean machine.
2. Join it to the cluster:
rladmin cluster join
3. (Optional) Promote to primary
If replacing the master.
4. Remove an old-version node:
rladmin cluster remove node <node_id>
5. Repeat
Replace nodes one at a time until all are running RS 8.0.2.
Replace Node Method
Used when no extra hardware is available.
1. Remove old node from cluster:
rladmin cluster remove node <node_id>
2. Uninstall Redis if necessary:
sudo ./rl_uninstall.sh
3. Install RS 8.0.2:
sudo ./install.sh
4. Rejoin via replace-node:
rladmin cluster join nodes <cluster_ip> \ username <username> password <password> replace_node <node_id>
5. Validate:
rlcheckrladmin status extra all
Repeat until all nodes are upgraded.
Post-Upgrade Actions
| Check | Command / Location | Expected Result |
|---|---|---|
| Cluster health | rladmin status extra all |
All nodes OK; no running actions |
| Database connectivity | Client connections | Successful |
| RS version | rladmin info |
Shows RS 8.0.2-17 |
| License validity | Cluster Manager → Settings | License is active |
| Monitoring | Prometheus / Datadog dashboards | Metrics flowing |
| Backups | Trigger a new backup | Restorable backup confirmed |
For Active-Active (CRDB)
Upgrade cluster instances before upgrading databases.
1. Sync module configurations:
crdb-cli crdb update --crdb-guid <guid> --update-db-config-modules true
2. Upgrade each database:
rladmin upgrade db db:<id> preserve_roles latest_with_modules
3. Accept protocol upgrade when prompted.
Troubleshooting and Common Issues
Quick Fix Table
| Symptom | Fast Check | Action |
|---|---|---|
| Cluster hang after upgrading wrong node | Confirm primary was first | Restart upgrade flow; upgrade master first |
| Change-master request fails (HTTP 406) | Node still bootstrapping | Wait for state=ready |
| Shard migration errors | Mixed RS versions | Complete node upgrades before migrations |
| “ok, old redis version” shows after upgrade | Cosmetic issue | Automatically resolved in 8.0.2-28+ |
| Node shows port conflict | Check running Redis processes | Stop old processes and restart services |
| Buffer too small for dataset | Check replication buffer | Increase buffer before restarting upgrade |
| Custom/deprecated modules present | Module compatibility | Remove unsupported modules (RedisGraph, Gears v2) |
Detailed Troubleshooting
Background tasks stuck
- Check for and clear running actions:
rladmin cluster running_actions
Port conflicts
- Stop any lingering Redis processes (
ps -ef | grep redis) - Restart RL services.
Shard migration failures
- Migrations are supported only after all nodes run RS 8.0.2.
PATH lost after install
- Re-add
/opt/redislabs/binto PATH ifupdate_env_path=nowas used.
Active-Active module mismatch
- Wait until all participating clusters and modules are upgraded.
Kubernetes Considerations
- Only upgrades from Operator 7.4.2-2 or later are supported.
- Custom modules are not supported in 8.0.2-2.
- Internode encryption uses default certificates only.
- Follow the steps in the Kubernetes 8.0.2-2 Release Notes for cluster upgrades.
0 comments
Please sign in to leave a comment.