Redis 5 集群安装

redis3.0 以前集群需要借助哨兵 sentinel ,在 3.0 版本正式推出 Redis Cluster 高可用集群模式; Redis Cluster 方案不需要额外部署 Sentinel(哨兵)集群。

Redis 集群要求至少三个节点,否则不成功。本文采用虚拟机,模拟搭建三主三从集群模式。

虚拟机 IP 分别是 192.168.18.139192.168.18.140192.168.18.141
可以只配置一台虚拟机,其他两台直接用克隆
本文使用 192.168.18.139 进行配置

一 安装 redis v5

1. 下载

wget http://download.redis.io/releases/redis-5.0.7.tar.gz

2. 解压

tar -zxvf redis-5.0.7.tar.gz

3. 编译安装

将其安装在 /usr/local/redis 目录

cd redis-5.0.7
make
cd src && make PREFIX=/usr/local/redis install

二 配置节点

将节点信息配置在cluster目录下, 端口号分别是6378,6379

cd /usr/local/redis
mkdir -p cluster/6378 cluster/6378

1. 修改配置文件

复制 redis.confcluster/6378/

vim cluster/redis.conf

主要修改内容如下:

启用守护线程
1.daemonize yes

同台计器不同节点的端口要不一样
2. port 6378

指定数据目录,必须要指定不同的目录位置,不然会丢失数据
3. dir /usr/local/redis/cluster/6378/

启动集群模式
4. cluster-enabled yes

集群节点信息文件,这里6378最好和port对应上
5. cluster-config-file nodes-6378.conf

去掉bind绑定访问ip信息
6. #bind 127.0.0.1

关闭保护模式
7. protected-mode no

  1. appendonly yes
  1. cluster-node-timeout 5000

如果要设置密码需要增加如下配置

设置redis密码
10. requirepass xxx

设置集群节点间访问密码,跟上面一致
11. masterauth xxx

6378 的配置复制到 6379 并将 2,3,5 中的端口号修改为6379

cp cluster/6378/redis.conf cluster/6379/redis.conf

2. 创建启动脚本

vim /usr/local/redis/start-redis-cluster.sh

#!/bin/sh
REDIS_HOME=/usr/local/redis
$REDIS_HOME/bin/redis-server $REDIS_HOME/cluster/6378/redis.conf
$REDIS_HOME/bin/redis-server $REDIS_HOME/cluster/6379/redis.conf

:wq 保存

3. 克隆该虚拟机

三 启动集群

1. 创建启动集群脚本

可以在任意一台虚拟机上创建该脚本,本文在 139 上创建

vim /usr/local/redis/create-cluster.sh

#!/bin/sh
bin/redis-cli --cluster create 192.168.18.139:6378 192.168.18.139:6379 192.168.18.140:6378 192.168.18.140:6379 192.168.18.141:6378 192.168.18.141:6379  --cluster-replicas 1

--cluster: redis 5 提供的参数
--cluster-replicas 1: 一主一从配置,六个节点就是 三主三从

2. 启动所有的 redis 节点

需要在三个虚拟机上都执行该命令

./start-redis-cluster.sh

2.1 查看是否启动成功

ps -ef | grep redis

Redis Status

3. 创建集群

只需要在一台虚拟机上执行该命令即可

./create-cluster.sh

如出现错误: [ERR] Node 192.168.18.139:637x is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0. 删除 cluster/637x 下aof、rdb、nodes-637x.conf本地备份文件, 然后再次执行脚本

出现交互 直接输入 yes 接受即可

Redis Cluster Accept

[OK] All 16384 slots covered 说明集群创建成功
Success.png
待续...


作者: 浪子
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 浪子 !
 上一篇
博客 v1.1.0 发布了... 博客 v1.1.0 发布了...
1. 博客访问量统计功能实现和以及在博客中展示。 2. 附件功能实现及选择附件功能的优化。 3. 打赏功能从系统设置中去除,由主题自由控制 4. 栏目允许配置外链 5. 文章缩略图展示为小图 + 大图模式 6. 代码精简,删除多余代码 7. Bug Fixs.
2020年4月5日
下一篇 
Sublime Text v3207和 v 3211 版破解 Sublime Text v3207和 v 3211 版破解
注意:截至文章发布该方法成功破解的版本为 v 3207 和 v 3211 安装 Sublime Text >> 官网地址 打开网站 >> hexed.it 打开文件选择 sublime_text.exe 在最右侧搜索框中输入内容 97 94 0D , 回车 会找到一项 ,点击找到的内容 将找到的内容修改成 00 00 00 导出替换原来的 sublime_text.exe
2020年4月6日