分布式缓存服务 DCS-迁移故障处理:执行命令异常
执行命令异常
执行命令异常的处理建议:
- 错误信息中包含“listening-port”和“REPLCONF”相关,请检查源Redis是否放通SYNC和PSYNC命令,迁移任务底层资源与源Redis、目标Redis网络是否连通。
在线迁移,必须满足源Redis和目标Redis的网络相通、源Redis已放通SYNC和PSYNC命令这两个前提,否则,会迁移失败。
- 网络
检查源Redis、目标Redis、迁移任务所需虚拟机是否在同一个VPC,如果是同一个VPC,则检查安全组(Redis 3.0实例)或白名单(Redis 4.0/5.0实例)是否放通端口和IP,确保网络是连通的;如果不在同一个VPC,则需要建立VPC对等连接,打通网络。
源Redis和目标Redis必须允许迁移任务底层虚拟机访问。实例安全组或白名单配置,请参考配置安全组、配置白名单。
源Redis和目标Redis属于不同的云厂商,请参考云专线打通网络。
- 命令
默认情况下,一般云厂商都是禁用了SYNC和PSYNC命令,如果要放通,需要联系云厂商运维人员放通命令。
- 华为云内部进行迁移:
- 自建Redis迁移至D CS ,默认没有禁用SYNC和PSYNC命令;
- 华为云DCS服务之间进行迁移,如果是同一账号相同Region进行在线迁移,在执行迁移时,会自动放通SYNC和PSYNC命令;
- 如果是不同Region或相同Region不同账号进行在线迁移,不会自动放通SYNC和PSYNC命令,无法使用在线迁移。推荐使用备份文件导入方式迁移。
- 其他云厂商迁移到华为云:
一般云厂商都是禁用了SYNC和PSYNC命令,如果使用在线迁移功能,需要联系源端的云厂商运维人员放通此命令,离线迁移,推荐使用备份文件导入方式。
- 华为云内部进行迁移:
- 网络
- 错误信息包含“read error”,且为全量迁移过程中失败,数据量过大的情况下,建议开始迁移时不要选择“自动重连”模式,等到进入“增量迁移”后,再选择“自动重连”模式,且调大repl-timeout的时间值;同时建议调整源端output buffer参数,buffer参数的大小需要根据源端内存大小来定,比如源端24G的内存大小,可以调整为2G的buffer,命令: client-output-buffer-limit slave 2gb 2gb 600 。
- 错误信息中包含“write: connection reset by peer”,可能原因目标Redis内存规格太小导致内存写满,无法同步数据,建议扩大目标Redis实例规格,至少与源端实例规格持平。
- 错误信息中包含“read: connection reset by peer”,源Redis为主备,且迁移过程中,频繁发生主备倒换,请分析源Redis是否存在大Key,如果源Redis存在大key,建议将大key打散成多个小key后再迁移。也可强行关闭主备倒换,等数据迁移完毕后再开启主备倒换,命令:config set slave-priority 0。如果目标Redis为proxy集群,请排查pipeline阈值大小,建议调整proxy节点pipeline阈值为5W,命令: proxy.config set client-max-pipeline 50000。
- 提供错误信息,联系技术支持。
- 分布式缓存Redis稳定性怎么样_分布式缓存Redis_企业版-华为云
- 分布式缓存Redis企业版优势_分布式缓存Redis企业版特点
- 多媒体信息处理技术_媒体处理_数字媒体处理
- 分布式缓存服务Redis的安全能力_分布式缓存服务Redis的数据安全性
- 分布式缓存服务Redis优势_分布式缓存服务Redis_华为云
- 媒体处理作用_媒体处理服务_购买媒体处理服务
- 图片处理服务哪家好_好用的AI处理服务_数据分析处理平台
- 应用性能管理定位请求异常原因_云应用性能问题诊断_ 应用性能管理 APM-华为云
- 分布式缓存Redis版本差异_分布式缓存Redis有哪些版本_分布式缓存-华为云
- 分布式缓存数据迁移_分布式缓存_数据迁移-华为云