- 1.环境准备
- 2.redis编译安装及配置文件修改
- 3.主从集群搭建
- 4.错误总结
linux系统: CentOS7-1908
用三台服务器模拟9个节点,一个机器3个节点,创建出3master,6savle的redis集群。
三台服务器:
2.redis编译安装及配置文件修改192.168.239.136 端口6378-6380
192.168.239.137 端口6378-6380
192.168.239.138 端口6378-6380
redis版本:5.0.13
这里推荐大家用redis5.0之后的版本 因为后边创建集群的命令是5.0以后更新的
下载地址:http://download.redis.io/releases/
利用rz命令把redis安装包传到linux服务器上 开始执行以下操作
# 我是放在/usr/local下了 进入自己传入的目录就好 cd /usr/local # 解压 tar -zxvf redis-5.0.13.tar.gz # mv命令重命名目录 mv redis-5.0.13 redi # 进入目录 cd redis # 编译并安装 make && make install
出现此提示为编译安装成功:
修改配置文件如下内容:
1 #bind 127.0.0.1(注释本地地址)
2 protected-mode no(关闭保护模式)
3 port 6378(设置端口号)
4 daemonize yes(开启后台模式)
5 pidfile /usr/local/redis/cluster/6378/redis_6378.pid(进程文件)
6 logfile “/usr/local/redis/cluster/6378/redis-6378.log”(日志文件)
7 dir /usr/local/redis/cluster/6378(文件存放路径)
8 dbfilename dump-6378.rdb(rdb文件名)
9 requirepass 123456(认证密码)
10 cluster-enabled yes(启用集群)
11 appendonly no(关闭aof模式)
12 cluster-config-file nodes.conf(集群配置文件名称)
13 cluster-node-timeout 15000(集群超时毫秒数)
# 创建目录cluster mkdir cluster # 进入cluster目录 cd cluster # 创建6378 6379 6380目录 mkdir 6378 6379 6380 # 返回redis目录 并把配置文件复制到6378 6379 6380目录下 注意配置文件里涉及到端口号的部分要改下 cd .. cp redis.conf cluster/6378 cp redis.conf cluster/6379 cp redis.conf cluster/6380 #配置文件修改完后启动redis并检查 reids-server 6378/redis.conf & reids-server 6379/redis.conf & reids-server 6380/redis.conf & ps -ef | grep redis
出现如下界面为启动成功:
#把本台的环境复制到第二台第三台服务器 scp -r /usr/local/redis/cluster root@192.168.239.137:/usr/local/redis scp -r /usr/local/redis/cluster root@192.168.239.136:/usr/local/redis3.主从集群搭建
使用redis命令创建集群(强调一下只有5.0以后版本才有这个命令!)
#创建集群主节点
redis-cli --cluster create --cluster-replicas 0 -a 123456 192.168.239.138:6378 192.168.239.137:6378 192.168.239.136:6378
master-id可以通过命令查看如下
redis-cli -p 6378
cluster nodes
4.错误总结#给主节点192.168.239.138:7000增加从节点
redis-cli --cluster add-node 192.168.239.137:6379 192.168.239.138:6378 -a 123456 --cluster-slave --cluster-master-id 后边跟自己master-id
redis-cli --cluster add-node 192.168.239.136:6380 192.168.239.138:6378 -a 123456 --cluster-slave --cluster-master-id
#给主节点192.168.239.137:7000增加从节点
redis-cli --cluster add-node 192.168.239.138:6380 192.168.239.137:6378 -a 123456 --cluster-slave --cluster-master-id
redis-cli --cluster add-node 192.168.239.136:6379 192.168.239.137:6378 -a 123456 --cluster-slave --cluster-master-id
#给主节点192.168.239.136:7000增加从节点
redis-cli --cluster add-node 192.168.239.138:6378 192.168.239.136:6378 -a 123456 --cluster-slave --cluster-master-id
redis-cli --cluster add-node 192.168.239.137:6380 192.168.239.136:6378 -a 123456 --cluster-slave --cluster-master-id
在给redis集群创建主节点的时候碰到了如下问题
no route to host
这个提示大概是我们没有开放防火墙 执行如下命令开放一下
iptables -I INPUT -p tcp --dport 6378 -j ACCEPT iptables -I INPUT -p tcp --dport 6379 -j ACCEPT iptables -I INPUT -p tcp --dport 6380 -j ACCEPT
在创建主节点成功!



