前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面试系列之-Redis运维工具

面试系列之-Redis运维工具

作者头像
用户4283147
发布2023-08-21 20:05:02
2040
发布2023-08-21 20:05:02
举报
文章被收录于专栏:对线JAVA面试

监控命令INFO

INFO命令在使用时,可以带一个参数section,这个参数的取值有好几种,相应的INFO命令也会返回不同类型的监控信息;首先无论是运行单实例或是集群建议重点关注一下stat、commandstat、cpu和memory这四个参数的返回结果,这里面包含了命令的执行情况(比如命令的执行次数和执行时间、命令使用的CPU资源),内存资源的使用情况(比如内存已使用量、内存碎片率),CPU资源使用情况等,这可以判断实例的运行状态和资源消耗情况;另外当启用RDB或AOF功能时,需要重点关注persistence参数的返回结果,可以通过它查看到RDB或者AOF的执行情况;如果在使用主从集群,就要重点关注下replication参数的返回结果,里面包含了主从同步的实时状态;不过INFO命令只是提供了文本形式的监控结果,并没有可视化;

面向Prometheus的Redis-exporter监控

Redis-exporter就是用来监控Redis的,它将INFO命令监控到的运行状态和各种统计信息提供给Prometheus,从而进行可视化展示和报警设置;除了获取Redis实例的运行状态,Redis-exporter还可以监控键值对的大小和集合类型数据的元素个数,这个可以在运行Redis-exporter时使用check-keys的命令行选项来实现;此外可以开发一个Lua脚本,定制化采集所需监控的数;使用scripts命令行选项,让Redis-exporter运行这个特定的脚本,从而可以满足业务层的多样化监控需求;

数据迁移工具 Redis-shake

redis-shake的基本运行原理,是先启动Redis-shake进程,这个进程模拟了一个Redis实例。然后Redis-shake进程和数据迁出的源实例进行数据的全量同步。这个过程和Redis主从实例的全量同步是类似的。源实例相当于主库,Redis-shake相当于从库,源实例先把RDB文件传输给Redis-shake,Redis-shake会把RDB文件发送给目的实例。接着,源实例会再把增量命令发送给Redis-shake,Redis-shake负责把这些增量命令再同步给目的实例;

数据对比Redis-full-check

redis-full-check的工作原理很简单,就是对源实例和目的实例中的数据进行全量比对,从而完成数据校验。不过为了降低数据校验的比对开销,Redis-full-check采用了多轮比较的方法;在第一轮校验时Redis-full-check会找出在源实例上的所有key,然后从源实例和目的实例中把相应的值也都查找出来,进行比对;第一次比对后,redis-full-check会把目的实例中和源实例不一致的数据,记录到sqlite数据库中。从第二轮校验开始,Redis-full-check只比较上一轮结束后记录在数据库中的不一致的数据,为了避免对实例的正常请求处理造成影响,Redis-full-check在每一轮比对结束后,会暂停一段时间,随着Redis-shake增量同步的进行,源实例和目的实例中的不一致数据也会逐步减少,所以校验比对的轮数不用很多;可以自己设置比对的轮数,在运行redis-full-check命令时,把参数 comparetimes的值设置为想要比对的轮数,等到所有轮数都比对完成后,数据库中记录的数据就是源实例和目的实例最终的差异结果了;

集群管理工具 CacheCloud

针对常见的集群运维需求,CacheCloud提供了5个运维操作:

  • 下线实例:关闭实例以及实例相关的监控任务。
  • 上线实例:重新启动已下线的实例,并进行监控。
  • 添加从节点:在主从集群中给主节点添加一个从节点。
  • 故障切换:手动完成Redis Cluster主从节点的故障转移。
  • 配置管理:用户提交配置修改的工单后,管理员进行审核,并完成配置修改。

当然,作为运维管理平台,CacheCloud除了提供运维操作以外,还提供了丰富的监控信息,CacheCloud不仅会收集INFO命令提供的实例实时运行状态信息,进行可视化展示,而且还会把实例运行状态信息保存下来,例如内存使用情况、客户端连接数、键值对数据量;

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-05-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 对线JAVA面试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 监控命令INFO
  • 面向Prometheus的Redis-exporter监控
  • 数据迁移工具 Redis-shake
  • 数据对比Redis-full-check
  • 集群管理工具 CacheCloud
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档