Redis Cluster Unofficial 认证模式下的自动化工具 项目简介
目前redis 集群最火的是codis 和 redis cluster (官方),但 codis 2.x 不支持密码。那么需要密码认证使用redis 集群的同学要仔细看了哦。相信大家很多人已经使用了redis cluster,而且也肯定会用到核心应用,你是否考虑过如下问题?1、redis cluster无密码,被改数据 2、redis cluster无密码,被flushall (你是否有要哭的冲动哈哈) 3、redis cluster无密码,数据在光天化日(你对用户不负责) 4、redis cluster无密码,你要担心各种被黑(日志好苦)此时你是否需要密码认证?(我猜你想立刻马上),哈哈问题来了,你在创建集群和管理时是否遇到如下麻烦?1、redis cluster 官方redis-trib.rb 不支持密码,你要手工用命令一个一个加入集群 2、添加减节点不方便 3、更重要的是你的分片工具不能用,你要抓狂么? 4、管理需要手工5、你要疯掉 有没有办法解决呢?有,我相信很多公司已经会用认证方式来管理,只是目前我是没搜到相关资料。怎么办?我有办法: 1、原封不动的封装了redis cluster 集群添加减节点功能,并支持密码认证 2、针对对同台机器多master挂掉后集群不可用时,自动快速迁移槽位进行修复,保证程序可用 3、自动对新加节点迁移槽位 4、自动迁移槽位和数据给指定节点 5、自动根据当前结点master进行自动分片你是不是已经心动了呢?那么接下来让你更想行动自动分片auto Resharding all slot to set master : ./redis_cluster_data_move -t reshard -h host -p port -P redis 密码自动迁移分片move slot:移动slot,此时槽位为空,也就是当cluster down 时,快速将16383槽位移走,不是涉及迁移数据,保证cluster 可用 ./redis_cluster_data_move -t ms -h host -p port -d target_id-r 0-16383 -P redis 密码自动迁移分片及数据 move data: 移动槽位及数据./redis_cluster_data_move -t md -h source_host:port-target_host2:port2 -s source_id -d target_id -r 0-16383 -P redis 密码自动删除节点del redis node: 在集群host:port删除 node_id ./redis_cluster_data_move -t del -h host -p port -n node_id -P redis 密码自动添加 add redis node:添加节点在集群source_host:port 添加目标target_host:target_port./redis_cluster_data_move -t add -h source_host:source_port-target_host:target_port -P redis 密码add redis slave node:将节点添加为从将host:port 添加为node_id 的从节点./redis_cluster_data_move -t add_slave -h host -p port -n node_id -P redis 密码update redis slave to master :将slave手动升级为master ,在升级时使用将host port 上级为master ./redis_cluster_data_move -u up -h host -p port -P redis 密码命令参数解释:-t 任务类型 -h 主机 -p 端口 -d 节点id -s 源节点id -r 槽位范围 -n 节点id -P redis 密码使用中难免有BUG的地方,有问题可以发送内容到[email protected] 邮箱