redis-cluster的部署安装

一、Redis环境的准备

0.工作目录的准备

#在/etc/profile中指定我们工作的目录路径
vim  /etc/profile  
export REDIS_HOME=/home/rongda
source /etc/profile

1.安装准备

mkdir -p  /home/rongda/tools
mkdir  -p /home/rongda/redis-cluster 
mkdir  -p /home/rongda/redis-cluster/redis

上传软件包redis-5.0.5.tar.gz至/home/rongda/tools

2.安装Redis

#1,使用指令进入tools目录
cd /home/rongda/tools

#2,使用指令解压缩
tar -zxvf redis-5.0.5.tar.gz  

#3,使用指令进入目录
cd /home/rongda/tools/redis-5.0.5/ 

#4,使用指令编译redis
make MALLOC=libc
make PREFIX=/home/rongda/redis.cluster/redis   #此处为Redis的安装目录位置

#5,使用指令进入目录
cd  /home/rongda/redis.cluster/redis/bin 

#6,使用指令查看是否安装成功,
    ./redis-server --version
    
#7,结果如下:
#    Redis server v=5.0.5 sha=00000000:0 malloc=jemalloc-4.0.3 bits=64 build=d84647458df2f328

二、集群节点准备

0.环境的准备

1台服务器,6个实例
7000 master1
7001 master2
7002 master3
7003 slave1
7004 slave2
7005 slave3

1.准备目录

mkdir  /home/rongda/redis.cluster/master{1..3}
mkdir  /home/rongda/redis.cluster/slave{1..3}

2.准备配置文件

cat > /home/rongda/redis.cluster/master1/redis.conf <<EOF
port 7000
daemonize yes
pidfile /home/rongda/redis.cluster/master1/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/master1/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/master1
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF


cat >> /home/rongda/redis.cluster/master2/redis.conf <<EOF
port 7001
daemonize yes
pidfile /home/rongda/redis.cluster/master2/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/master2/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/master2
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF

cat >> /home/rongda/redis.cluster/master3/redis.conf <<EOF
port 7002
daemonize yes
pidfile /home/rongda/redis.cluster/master3/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/master3/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/master3
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF


cat >>  /home/rongda/redis.cluster/slave1/redis.conf <<EOF
port 7003
daemonize yes
pidfile /home/rongda/redis.cluster/slave1/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/slave1/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/slave1
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF


cat >> /home/rongda/redis.cluster/slave2/redis.conf <<EOF
port 7004
daemonize yes
pidfile /home/rongda/redis.cluster/slave2/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/slave2/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/slave2
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF

cat >> /home/rongda/redis.cluster/slave3/redis.conf <<EOF
port 7005
daemonize yes
pidfile /home/rongda/redis.cluster/slave3/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/slave3/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/slave3
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF

3.启动节点

#进入到Redis的bin目录下进行启动
cd  /home/rongda/redis.cluster/redis/bin
redis-server /home/rongda/redis.cluster/master2/redis.conf 
redis-server /home/rongda/redis.cluster/master3/redis.conf 
redis-server /home/rongda/redis.cluster/slave1/redis.conf 
redis-server /home/rongda/redis.cluster/slave2/redis.conf 
redis-server /home/rongda/redis.cluster/slave3/redis.conf 

4.检查是否启动成功

ps -ef |grep redis
端口7000-7005端口都存在

5.将节点加入到集群管理

##在这里要注意:因为Redis版本的不同,启动命令也不一样。
5.0.5版本的redis-trib.rb已经被包含在了redis-cli中

cd  /home/rongda/redis.cluster/redis/bin
redis-cli  create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 
127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005

6.查看集群状态

集群主节点状态
redis-cli -p 7000 cluster nodes | grep master
集群从节点状态
redis-cli -p 7000 cluster nodes | grep slave

三、集群节点的管理

1,增加一个新的节点

1)环境准备
7006  master4
7007  slave4

#1.准备目录
mkdir  /home/rongda/redis.cluster/master4
mkdir  /home/rongda/redis.cluster/slave4

#2.准备配置文件

cat > /home/rongda/redis.cluster/master4/redis.conf <<EOF
port 7006
daemonize yes
pidfile /home/rongda/redis.cluster/master4/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/master4/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/master4
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF


cat >> /home/rongda/redis.cluster/slave4/redis.conf <<EOF
port 7007
daemonize yes
pidfile /home/rongda/redis.cluster/slave4/redis.pid
loglevel notice
logfile "/home/rongda/redis.cluster/slave4/redis.log"
dbfilename dump.rdb
dir /home/rongda/redis.cluster/slave4
protected-mode no
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
EOF

#3.启动节点
#进入到Redis的bin目录下进行启动
cd  /home/rongda/redis.cluster/redis/bin
redis-server /home/rongda/redis.cluster/master4/redis.conf 
redis-server /home/rongda/redis.cluster/slave4/redis.conf 

#4.检查是否启动成功
ps -ef |grep redis
端口7006  7007端口都存在

#5.添加到集群中
1)将master4加入主节点
在这里要注意:因为Redis版本的不同,启动命令也不一样。
5.0.5版本的redis-trib.rb已经被包含在了redis-cli中

cd  /home/rongda/redis.cluster/redis/bin
redis-cli add-node 127.0.0.1:7006 127.0.0.1:7000

redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 --cluster-replicas 1


2)将slave4添加到从节点中
#查看从节点要添加的主节点的node号
redis-cli -p 7006 cluster nodes |grep  master
#添加从节点
redis-cli add-node --slave --master-id 主节点的node号 127.0.0.1:7007 127.0.0.1:7000


#6.查看集群状态
集群主节点状态
redis-cli -p 7000 cluster nodes | grep master
集群从节点状态
redis-cli -p 7000 cluster nodes | grep slave
原文地址:https://www.cnblogs.com/llddhh/p/14334862.html