Compute
Elastic Cloud Server
Huawei Cloud Flexus
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Networking
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Management & Governance
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
OneAccess
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
IAM Identity Center
Cloud Operations Center
Resource Governance Center
Migration
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Analytics
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
Data Lake Factory
DataArts Lake Formation
IoT
IoT Device Access
Others
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Security & Compliance
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Anti-DDoS Service
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Edge Security
Situation Awareness
Managed Threat Detection
Blockchain
Blockchain Service
Web3 Node Engine Service
Media Services
Media Processing Center
Video On Demand
Live
SparkRTC
MetaStudio
Storage
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Storage Disaster Recovery Service
Scalable File Service Turbo
Scalable File Service
Volume Backup Service
Cloud Server Backup Service
Data Express Service
Dedicated Distributed Storage Service
Containers
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Databases
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
Multi-Site High Availability Service
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Business Applications
Workspace
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Video Intelligent Analysis Service
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Content Delivery & Edge Computing
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Intelligent EdgeCloud
Solutions
SAP Cloud
High Performance Computing
Developer Services
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
CodeArts Repo
Cloud Application Engine
MacroVerse aPaaS
KooMessage
KooPhone
KooDrive

Upgrading a Redis 3.0 Instance

Updated on 2024-09-30 GMT+08:00

Overview

Redis has not updated Redis 3.0 since the release of a minor version on May 19, 2019. Huawei Cloud DCS also announced the discontinuation of DCS for Redis 3.0 in March 2021.

You are advised to upgrade your DCS Redis 3.0 to a later version as soon as possible. DCS for Redis 4.0/5.0/6.0 are compatible with Redis 3.0.

Currently, DCS does not support direct instance upgrades. In this case, migrate the data of the earlier instance to that of a later one. Follow the instructions below to upgrade a DCS Redis 3.0 instance by migrating data and switching IPs.
NOTE:
  • DCS Redis 3.0 instances support public access, while DCS Redis 4.0/5.0/6.0 instances do not. If your services rely on public access, do not perform the upgrade.
  • Upgrading the Redis version through data migration may have the following impacts on services:
    • The source and target Redis instance IP addresses need to be switched after data migration is complete. During the switching, the instances will become read-only within 1 minute and be interrupted for 30 seconds.
    • If the target instance does not share the password as the source, the password needs to be updated after data synchronization is complete. Stop the services during the update. In this case, you are advised to use the same password for the source and target instances.
  • Upgrade instances during off-peak hours.

Prerequisites

  • You have created a DCS Redis instance of a later version. This instance must be in the same VPC and subnet, of the same instance type, configured with the same password as the source instance, and have specifications greater than or equal to the source instance. For example, to upgrade a 16 GB master/standby DCS Redis 3.0 instance to a DCS Redis 5.0 one, prepare a master/standby DCS Redis 5.0 instance with at least 16 GB memory.

    For details about how to create a DCS Redis instance, see Buying a DCS Redis Instance.

  • You have manually backed up data of the source DCS Redis 3.0 instance. For details about how to back up data, see How Do I Export DCS Redis Instance Data?.

Migrating Instance Data

  1. Log in to the DCS console.
  2. Click in the upper left corner of the console and select the region where your source instance is located.
  3. In the navigation pane, choose Data Migration. The migration task list is displayed.
  4. In the upper right corner, click Create Online Migration Task.
  5. Enter the task name and description.
  6. Configure the VPC, subnet, and security group for the migration task.

    • Select the VPC where the source and target Redis instances are, so they can be connected with the task.
    • The migration task uses a tenant IP address (Migration ECS displayed on the Basic Information page of the task). If the target Redis has an IP whitelist, this IP address must be added to the whitelist.
    • To allow the VM used by the migration task to access the source and target instances, set an outbound rule for the task's security group to allow traffic through the IP addresses and ports of the source and target instances. By default, all outbound traffic is allowed.

  7. After the migration task is created, click Configure in the Operation column of the task on the Online Migration tab page to configure the source Redis and target Redis.
  8. Select Full + Incremental for Migration Type. IP switching can be performed on the console only for instances using full and incremental migration. Selecting Full requires a manual IP change of the Redis instance.

    Table 1 Migration type description

    Migration Type

    Description

    Full

    Suitable for scenarios where services can be interrupted. Data is migrated at one time. Source instance data updated during the migration will not be migrated to the target instance.

    Full + incremental

    Suitable for scenarios requiring minimal service downtime. The incremental migration parses logs to ensure data consistency between the source and target instances.

    Once the migration starts, it remains Migrating until you click Stop in the Operation column. After the migration is stopped, data in the source instance will not be lost, but data will not be written to the target instance. When the transmission network is stable, the delay of incremental migration is within seconds. The actual delay depends on the transmission quality of the network link.

  9. If Migration Type is set to Full + Incremental, you can specify a bandwidth limit.

    The data synchronization rate can be kept around the bandwidth limit.

  10. Specify Auto-Reconnect. If this option is enabled, automatic reconnections will be performed indefinitely in the case of a network exception.

    Full synchronization will be triggered and requires more bandwidth if incremental synchronization becomes unavailable. Exercise caution when enabling this option.

  11. For Source Redis and Target Redis, select the Redis 3.0 instance to be upgraded and the new Redis instance.
  12. If the source and target Redis instances are password-protected, enter Source Redis Instance Password and Target Redis Instance Password, and click Test Connection respectively to check whether the network can be connected. If the source and target Redis instances are password-free, click Test Connection.
  13. Source DB and Target DB specify migration databases. For example, if you enter 5 for source DB and 6 for target DB, data in DB5 of the source Redis will be migrated to the DB6 of the target Redis. If the source DB is not specified but the target DB is specified, all source data will be migrated to the specified target DB by default. If the target DB is not specified, data will be migrated to the corresponding target DB. Leave Source DB and Target DB blank in this operation.
  14. Click Next.
  15. Confirm the migration task details and click Submit.

    Go back to the data migration task list. After the migration is successful, the task status changes to Successful.

    NOTE:
    • Once incremental migration starts, it remains Migrating.
    • To manually stop migration, click Stop.
    • After data migration, duplicate keys will be overwritten.

    If the migration fails, click the migration task and check the log on the Migration Logs page.

Verifying the Migration

Before data migration, if the target Redis has no data, check data integrity after the migration is complete in the following way:

  1. Connect to the source Redis and the target Redis. Connect to Redis by referring to redis-cli.
  2. Run the info keyspace command to check the values of keys and expires.

  3. Calculate the differences between the values of keys and expires of the source Redis and the target Redis. If the differences are the same, the data is complete and the migration is successful.

During full migration, source Redis data updated during the migration will not be migrated to the target instance.

Switching DCS Instance IPs

The prerequisites for switching source and target Redis instance IP addresses are as follows. The target Redis can be accessed automatically on a client after the switch.

  • The source and target must be basic edition Redis instances excluding Redis Cluster ones. This function is unavailable for professional edition and Redis Cluster instances.
  • For sources of DCS Redis 3.0 instances, contact the administrator to enable the whitelist for Redis 3.0 instance IP switches. The instance IP addresses can be switched only when the source instance is a DCS Redis 3.0 instance and the target instance is a basic edition DCS Redis 4.0, 5.0, or 6.0 instance.
  • The IP addresses of a source or target instance with public access enabled cannot be switched on the console. Manually change the IP addresses if needed.
  • Full + Incremental must be selected in 8.
  • The source and target Redis instance ports must be consistent.
NOTICE:
  1. IP switching stops online migration tasks.
  2. When the source is a Redis 3.0 instance, the instance will be read-only for one minute and disconnected for 30 seconds during an IP switch.
  3. If your application cannot reconnect to Redis or handle exceptions, you may need to restart the application after the IP switching.
  4. If the source is a master/standby instance, the IP address of the standby node will not be switched. Ensure that this IP address is not used by your applications.
  5. If your applications use a domain name to connect to Redis, the domain name will be used for the source instance. Select Yes for Switch Domain Name.
  6. Ensure that the passwords of the source and target instances are the same. If they are different, verification will fail after the switching.
  7. After the IP addresses of a DCS Redis 3.0 instance are switched, synchronize the security group of the source to the whitelist of the target.
  1. On the Data Migration > Online Migration page, when the migration task status changes to Incremental migration in progress, choose More > Switch IP in the Operation column.
  2. In the Switch IP dialog box, select whether to switch the domain name.

    NOTE:
    • If a Redis domain name is used on the client, switch it or you must modify the domain name on the client.
    • If the domain name switch is not selected, only the instance IP addresses will be switched.

  3. Click OK. The IP address switching task is submitted successfully. When the status of the migration task changes to IP switched, the IP address switching is complete.

Verifying Service Functions

  • Verify that service functions are normal. For example, check whether an error is reported when the client accesses Redis.
  • Check whether key performance metrics are normal, such as Connected Clients, Ops per Second, CPU Usage, and Memory Usage.

We use cookies to improve our site and your experience. By continuing to browse our site you accept our cookie policy. Find out more

Feedback

Feedback

Feedback

0/500

Selected Content

Submit selected content with the feedback