mac搭建redis集群
一、安装redis
1. 安装
brew install redis
2. 启动
redis-server:启动 redis 服务器,默认端口 6379
redis-cli:启动 redis 客户端
配置文件目录
cd /usr/local/etc
二、配置集群
在配置文件目录(/usr/local/etc)下进行操作
1. 创建虚拟节点目录
在 /usr/local/etc 下创建 redisCluster 目录,并在 redisCluster 目录下创建目录:7000、7001、7002、7003、7004、7005。
mkdir redisClustercd redisClustermkdir 7000 7001 7002 7003 7004 7005
2.修改配置文件
把redis的配置文件复制到每个文件夹下,并修改文件。可以先复制一份修改好参数再复制其他的,只要修改port就可以了,参数修改如下
# 端口号,每个目录都不同
port 7000
# 开启集群模式
cluster-enabled yes
#节点超时实际,单位毫秒
cluster-node-timeout 5000
#集群内部配置文件(默认为 nodes-6379.conf)
cluster-config-file nodes-7000.conf
# 启动 AOF
appendonly yes
# 默认是no,改成 yes,意思是是否要后台启动。
daemonize yes
复制配置文件
cp ../redis.conf.default ./7000vim ./7000/redis.conf.defaultmv ./7000/redis.conf.default ./7000/7000.conf
记得修改配置文件中的port参数和文件夹一致
3.启动redis并验证各节点运行
redis-server /usr/local/etc/redisCluster/7000/7000.confps -ef|grep redis
4. 关联所有节点
redis-cli -p 7000
cluster meet 127.0.0.1 7001
5.分配槽位
Cluster 默认会对 key 值使用 crc32 算法进行 hash 得到一个整数值,然后用这个整数值对 16384 进行取模来得到具体槽位
在分配槽位时,相当于把对应的槽位挂载在指定的节点上, key计算出来的槽位,然后跟据槽位找到对应的节点,将key存储在这个节点上.
若set sgfoot www.sgfoot.com, 集群计算出对应的槽位是: 6498, 而6498槽位被挂载在127.0.0.1:6392节点上, 不归自己管, 所以会返回一个信息-> Redirected to slot [6498] located at 127.0.0.1:6392 让你去连接6392节点上查看,你刚才存储的值.
查看帮助: cluster help
槽位分配错误使用:cluster reset
分配槽位, 注意只能使用redis-cli方式, 槽位之间是两个小点
如果报(error) ERR Slot 5462 is already busy 错误的话, 先查看cluster nodes, 排查问题, 实在不行,使用cluster reset重置操作. 重新握手操作.然后再分配槽位.
redis Cluster 是由 16384 个 slot 组成的,那么我们需要将这些槽分散到这其中 3 个节点里(3 主 3 从)。
redis-cli -p 7000 cluster addslots {0..5461}
redis-cli -p 7001 cluster addslots {5462..10922}
redis-cli -p 7002 cluster addslots {10923..16383}
此时节点已经分配好了。通过以下命令验证:
redis-cli -p 7000 cluster nodes
前面的一串 16 进制字符串,其实就是后面对应进程节点的NodeId
主节点已经有了 slot,那么最后一步就是将主节点和从节点进行关联,形成主从复制的关系。 命令如下:
注意:需要在从节点的 cli 命令窗口关联主节点。不能反着来。
redis-cli -p 7003 cluster replicate 7000的NodeID
redis-cli -p 7004 cluster replicate 7001的NodeID
redis-cli -p 7005 cluster replicate 7002的NodeID
这个NodeID其实就是执行 redis-cli -p 7000 cluster nodes
查看结果:
redis-cli -p 7000 cluster nodes
6. 测试使用
这时如果继续使用之前的redis-cli -p 7000命令会报错:
应使用集群模式:
redis-cli -c -p 7000
其他redis连接查看:
至此完成。
mac搭建redis集群相关推荐
- 理解并从头搭建redis集群
部分开发人员工作当中只是在应用中使用redis,比如用来做数据结果的缓存.而且现在有很多不错的redis客户端工具(redisson),基本上可以不用关注redis命令就可以完成相当部分的功能.所以可 ...
- [转]redis 5.0.5 5分钟搭建redis集群
环境:centos 7 1:下载并安装redis $ wget http://download.redis.io/releases/redis-5.0.5.tar.gz$ tar xzf ...
- redis集群关闭 启动报错_使用虚拟机搭建 Redis 集群,实现数据库的负载均衡功能。...
实操题目:使用虚拟机搭建 Redis 集群,实现数据库的负载均衡功能.并使用图文描述整个过程.先创建集群: ①创建集群需要使用ruby脚本,所以要先安装ruby环境 安装ruby环境:yum inst ...
- 在windows上搭建redis集群(主从复制)
Redis集群策略主要有: 主从复制 哨兵模式 (在windows上搭建redis集群(Redis-Sentinel)) 集群 (在windows上搭建redis集群(Redis-Cluster)) ...
- 在windows上搭建redis集群(Redis-Sentinel)
Redis集群策略主要有: 哨兵模式 主从复制(在windows上搭建redis集群(主从复制)) 集群 (在windows上搭建redis集群(Redis-Cluster)) 分片 本文主要讲解如何 ...
- 在windows上搭建redis集群(Redis-Cluster)
Redis集群策略主要有: 集群 主从复制(在windows上搭建redis集群(主从复制)) 哨兵模式 (在windows上搭建redis集群(Redis-Sentinel)) 分片 本文主要讲解如 ...
- 手把手带你搭建redis集群
redis-cluster是redis官方提供的分布式数据库解决方案,集群通过分片进行数据共享,并提供复制和故障转移功能. redis集群主要分为主节点和从节点.主节点用于处理槽,而从节点用于复制某个 ...
- docker搭建redis集群
#!/bin/bash #Author: 臆想的一只猫 #Created: 2022-04-06 17:42:33 #Description: 搭建redis集群function menu() {cl ...
- 搭建redis集群-(伪分布式)
安装redis #关闭防火墙并且安装iptables(防火墙) 并在防火墙中添加规则,也可以用firewalld.service 防火墙 #如果是用firewalld.service 的防火墙的话下面 ...
最新文章
- 检测单选按钮的值发生变化的事件
- 2017-2018互联网类脑巨系统研究报告,互联网大脑、城市云脑和AI
- 连续低频脑电图解码手臂运动,实现机械手臂的闭环自然控制
- 【组合数学】非降路径问题 ( 限制条件的非降路径数 )
- [core]-ARM A76学习笔记
- 微信营销这么做,你就成功了 转载
- 每日一题(51)—— 大小端判断
- 用好pypi,提高开发速度
- 第 14 章 垃圾回收概述
- ubuntu之安装sublime text
- uva 11991 - Easy Problem from Rujia Liu?(STL)
- javac编译java_使用javac编译java文件
- VSCode Latex Workshop 设置 XeLatex 编译
- Windows安全加固
- BliBli抢楼全攻略
- 12306网站专家:拟采取办法应对抢票软件
- 《Java170道面试笔试题全面含答案》
- 为什么要背诵新概念英语?
- java 处理物料清单_ERP之物料清单(BOM)
- 论文阅读(3):Image-Based 3D Object Reconstruction:State-of-the-Art and Trends in the Deep Learning Era