Mac上安装Cluster集群模式Redis(6.2.8)

1、服务节点说明

当前MACip地址: 192.168.71.100

集群ip和端口为:127.0.0.1:7381-7386

2、下载 && 解压缩

# 下载
wget http://download.redis.io/releases/redis-6.2.8.tar.gz
# 解压缩
tar -zxvf redis-6.2.8.tar.gz

3、安装

3.1、编译

cd redis-6.2.8
# 编译
make

3.2、安装

sudo mkdir redis-6.2.8_cluster

# 赋权限(appdev是mac用户)
sudo chown -R appdev /usr/local/redis-6.2.8_cluster
sudo chmod -R u+x /usr/local/redis-6.2.8_cluster
# 创建6个redis目录
mkdir redis1 redis2 redis3 redis4 redis5 redis6
# 安装redis(PREFIX参数指定Redis安装到/usr/local/redis-6.2.8_cluster/redis1-redis6目录下)
make PREFIX=/usr/local/redis-6.2.8_cluster/redis1/ install
make PREFIX=/usr/local/redis-6.2.8_cluster/redis2/ install
make PREFIX=/usr/local/redis-6.2.8_cluster/redis3/ install
make PREFIX=/usr/local/redis-6.2.8_cluster/redis4/ install
make PREFIX=/usr/local/redis-6.2.8_cluster/redis5/ install
make PREFIX=/usr/local/redis-6.2.8_cluster/redis6/ install
# 创建3个目录,etc用于存放redis的主配置文件,logs目录存放redis日志,data用于存放redis的持久化数据
mkdir /usr/local/redis-6.2.8_cluster/redis1/etc /usr/local/redis-6.2.8_cluster/redis1/logs /usr/local/redis-6.2.8_cluster/redis1/data
mkdir /usr/local/redis-6.2.8_cluster/redis2/etc /usr/local/redis-6.2.8_cluster/redis2/logs /usr/local/redis-6.2.8_cluster/redis2/data
mkdir /usr/local/redis-6.2.8_cluster/redis3/etc /usr/local/redis-6.2.8_cluster/redis3/logs /usr/local/redis-6.2.8_cluster/redis3/data
mkdir /usr/local/redis-6.2.8_cluster/redis4/etc /usr/local/redis-6.2.8_cluster/redis4/logs /usr/local/redis-6.2.8_cluster/redis4/data
mkdir /usr/local/redis-6.2.8_cluster/redis5/etc /usr/local/redis-6.2.8_cluster/redis5/logs /usr/local/redis-6.2.8_cluster/redis5/data
mkdir /usr/local/redis-6.2.8_cluster/redis6/etc /usr/local/redis-6.2.8_cluster/redis6/logs /usr/local/redis-6.2.8_cluster/redis6/data

3.3、修改配置文件

# 复制一份配置文件
cp redis-6.2.8/redis.conf /usr/local/redis-6.2.8_cluster/redis1/etc/redis.conf 
cp redis-6.2.8/redis.conf /usr/local/redis-6.2.8_cluster/redis2/etc/redis.conf 
cp redis-6.2.8/redis.conf /usr/local/redis-6.2.8_cluster/redis3/etc/redis.conf 
cp redis-6.2.8/redis.conf /usr/local/redis-6.2.8_cluster/redis4/etc/redis.conf 
cp redis-6.2.8/redis.conf /usr/local/redis-6.2.8_cluster/redis5/etc/redis.conf 
cp redis-6.2.8/redis.conf /usr/local/redis-6.2.8_cluster/redis6/etc/redis.conf 
# 修改配置文件
vim /usr/local/redis-6.2.8_cluster/redis1/etc/redis.conf 

修改配置文件

# 设置哪些IP可以连接redis-server,4个0表示全部[!!危险!!]
bind 127.0.0.1 192.168.71.100
# 另外5个端口为7382-7386
port 7381
# 设置redis启动为后台守护进程
daemonize yes
# pidfile的路径(daemonize yes时,redis默认会把pid写入下面的文件)[redis1-redis6]
pidfile /usr/local/redis-6.2.8_cluster/redis1/logs/redis_7381.pid
# 日志级别
loglevel notice
# 日志文件路径[redis1-redis6]
logfile /usr/local/redis-6.2.8_cluster/redis1/logs/redis_7381.log
# 持久化数据存放的目录[redis1-redis6]
dir /usr/local/redis-6.2.8_cluster/redis1/data/
# 客户端登录密码
requirepass 000000
# 同时连接Redis服务的最大客户端数量(默认10000)
maxclients 10000
# 开启集群配置
cluster-enabled yes
# 集群超时毫秒
cluster_node_timeout 15000
# 集群节点配置文件名[redis1-redis6]
cluster-config-file /usr/local/redis-6.2.8_cluster/redis1/etc/nodes-7381.conf

4、搭建集群

4.1、编写启动脚本

vim /usr/local/redis-6.2.8_cluster/start_cluster.sh
# 脚本内容[当前mac设置默认系统为 /bin/zsh;可通过 “echo $SHELL” 查看]
#!/bin/zsh

# redis1
/usr/local/redis-6.2.8_cluster/redis1/bin/redis-server /usr/local/redis-6.2.8_cluster/redis1/etc/redis.conf &
# redis2
/usr/local/redis-6.2.8_cluster/redis2/bin/redis-server /usr/local/redis-6.2.8_cluster/redis2/etc/redis.conf &
# redis3
/usr/local/redis-6.2.8_cluster/redis3/bin/redis-server /usr/local/redis-6.2.8_cluster/redis3/etc/redis.conf &
# redis4
/usr/local/redis-6.2.8_cluster/redis4/bin/redis-server /usr/local/redis-6.2.8_cluster/redis4/etc/redis.conf &
# redis5
/usr/local/redis-6.2.8_cluster/redis5/bin/redis-server /usr/local/redis-6.2.8_cluster/redis5/etc/redis.conf &
# redis6
/usr/local/redis-6.2.8_cluster/redis6/bin/redis-server /usr/local/redis-6.2.8_cluster/redis6/etc/redis.conf &

echo "启动成功"

# 为脚本授权
chmod +x /usr/local/redis-6.2.8_cluster/start_cluster.sh

4.2、关联集群

# 此处需要使用真实IP地址!
# -h 表示ip; -p 表示端口; -a 访问服务端密码
# --replicas 1 采用最简单的方式配置集群,一台主机,一台从机,正好三组
/usr/local/redis-6.2.8_cluster/redis1/bin/redis-cli -h 192.168.71.100 -p 7381 -a 000000 --cluster create --cluster-replicas 1 192.168.71.100:7381 192.168.71.100:7382 192.168.71.100:7383 192.168.71.100:7384 192.168.71.100:7385 192.168.71.100:7386

配置主从节点.jpeg

5、验证

5.1、登录查看集群信息

# -c 表示采用集群策略连接,设置数据会自动切换到相应的主机
/usr/local/redis-6.2.8_cluster/redis1/bin/redis-cli -c -h 192.168.71.100 -p 7381 -a 000000
# 查看集群信息
cluster info
# 查看节点列表
cluster nodes

集群连接登录查看.jpg

# set值
set key1 1

设置值.jpg

5.2、测试

5.2.1、关闭主节点

哈希槽不满足16384个会导致:(error) CLUSTERDOWN The cluster is down,redis集群不能读写

# 关闭reids1
/usr/local/redis-6.2.8_cluster/redis1/bin/redis-cli -p 7381 -a 000000 shutdown

集群模式关闭主节点.jpg

# 重新启动修复
/usr/local/redis-6.2.8_cluster/start_cluster.sh
5.2.2、关闭从节点

不影响读写

集群模式关闭从节点.jpg

posted on 2023-03-30 13:54  cxbks  阅读(140)  评论(0)    收藏  举报