时间:2022-08-23 10:23:57 | 栏目:Redis | 点击:次
环境:centos 7
1:下载并安装redis
$ wget http://download.redis.io/releases/redis-5.0.5.tar.gz $ tar xzf redis-5.0.5.tar.gz $ cd redis-5.0.5 $ make
redis 5.0版本 集群搭建不需要我们安装ruby就可以搭建成功,并且redis给我们提供了快速搭建脚本,执行utils/create-cluster/ 目录下的create-cluster脚本 就可以快速搭建,该脚本提供以下几个命令供我们使用
echo "Usage: $0 [start|create|stop|watch|tail|clean]" echo "start -- Launch Redis Cluster instances." 创建redis集群实例 echo "create -- Create a cluster using redis-cli --cluster create." 搭建redis集群 echo "stop -- Stop Redis Cluster instances." 停止redis集群实例 echo "watch -- Show CLUSTER NODES output (first 30 lines) of first node." echo "tail <id> -- Run tail -f of instance at base port + ID." echo "clean -- Remove all instances data, logs, configs." 删除生成的日志,配置,数据文件 echo "clean-logs -- Remove just instances logs." 只删除日志
要想外部服务器访问到我们搭建的集群,我们需要对脚本修改一下:
start部分增加如下配置
--bind 指定我们要绑定的ip(服务器ip) --masterauth test1234 指定主节点密码(用于从节点同步数据) --requirepass 指定我们的密码 --protected-mode no 关闭安全模式(外部应用可以连接到redis)
create 部分 修改如下:
stop 部分 修改如下:
修改后保存
然后在utils/create-cluster目录下执行
./create-cluster start
执行 ps -ef | grep redis
确定redis实例创建成功
然后执行./create-cluster create
可以看到已经为我们创建成功,并自动分配了3个主节点,3个从节点,然后提示我们是否确定创建,输入yes
可以看到集群已经创建成功,并且为3个主节点分配了hash槽
我们使用redis-cli 随便连接一个节点,并插入一条数据
可以看到我们往30002这个redis实例插入一条数据,使用桌面工具连接查看
可以看到每个redis节点都可看的到我们刚创建的key,其实它们是去30002这个节点上去拿的,除了30002自身和其slave节点以外
后续:
我们可以修改port(端口基准,以节点数向上递增) nodes (节点数据)replicas(主节点允许分配的从节点数)
上面忘了配置master的密码,否则从节点无法从主节点同步数据