目录
环境部署
redis环境部署
redis多实例配置
构建redis cluster集群
cluster生产集群部署
Cluster集群故障切换
环境部署
1 、关闭防火墙
2 、准备两台虚拟机配置内容如下
redis-master | 192.168.108.67 | 7000 | redis-master01 |
7001 | redis-master02 | ||
7002 | redis-master03 | ||
redis-slave | 192.168.108.189 | 8000 | redis-slave01 |
8001 | redis-slave02 | ||
8002 | redis-slave03 |
3 、修改各自的主机名为 redis-master 、redis-slave
【192.168.108.67】【redis-master】
【192.168.108.189】【redis-slave】
4 、配置yum仓库把原有的文件全摆到明面上
redis环境部署
redis编译部署及基础优化
首先将准备好的源码包拖进虚拟机可以使用rz命令也可直接拖进
随后执行以下命令
[root@redis-master ~]# yum -y install wget gcc gcc-c++ make tar openssl openssl-devel cmake
[root@redis-master ~]# tar xf redis-4.0.10.tar.gz -C /usr/src/
解压缩redis-4.0.10.tar.gz文件到/usr/src/目录下
[root@redis-master ~]# cd /usr/src/redis-4.0.10/
切换到redis-4.0.10目录
[root@redis-master redis-4.0.10]# make
编译Redis
[root@redis-master redis-4.0.10]#make MALLOC=jemalloc #避免碎片和可伸缩的并发支持
使用jemalloc作为Redis的内存分配器
[root@redis-master redis-4.0.10]# make PREFIX=/usr/local/redis install
将编译好的Redis安装到/usr/local/redis目录下
[root@redis-master redis-4.0.10]# mkdir -p /usr/local/redis/conf
在 `/usr/local/redis` 目录下创建一个名为 `conf` 的子目录,并且如果 `/usr/local/redis` 目录不存在,也会一并创建
优化redis程序命令
[root@redis-master redis-4.0.10]# cp sentinel.conf /usr/local/redis/conf/ #redis哨兵配置文件
将`sentinel.conf`文件复制到`/usr/local/redis/conf/`目录下
[root@redis-master redis-4.0.10]# cp src/redis-trib.rb /usr/local/redis/bin/ #redis-cluster
将`redis-trib.rb`文件复制到`/usr/local/redis/bin/`目录下
将/usr/local/redis/bin/目录下的所有文件创建为/usr/local/bin/目录下的软链接。这样,在/usr/local/bin/目录下就可以直接使用redis相关的命令
[root@redis-master redis-4.0.10]# ln -s /usr/local/redis/bin/* /usr/local/bin/
【redis-slave也需要安装redis 步骤和上面一样】
redis配置文件精简
[root@redis-master redis-4.0.10]# cp redis.conf /usr/local/redis/conf/
将当前目录下的`redis.conf`文件复制到`/usr/local/redis/conf/`目录下
[root@redis-master redis-4.0.10]# cd /usr/local/redis/
进入`/usr/local/redis/`目录
[root@redis-master redis]# cp conf/redis.conf{,.bak}
将`conf/redis.conf`文件复制一份并重命名为`conf/redis.conf.bak`
[root@redis-master redis]# egrep -v "^$|^#" conf/redis.conf.bak > conf/redis.conf
使用`egrep`命令过滤`conf/redis.conf.bak`文件中的空行和以`#`开头的注释行,并将结果输出到`conf/redis.conf`文件中,相当于去除了空行和注释。
系统调优配置
echo never > /sys/kernel/mm/transparent_hugepage/enabled
将透明大页的启用状态设置为"never",即禁用透明大页
echo never > /sys/kernel/mm/transparent_hugepage/defrag
将透明大页的碎片整理状态设置为"never",也是为了禁用透明大页
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local
将上述两条命令添加到系统启动时执行的脚本文件 `/etc/rc.local` 中,以确保在系统重启后仍然禁用透明大页
echo "* - nofile 10240" >> /etc/security/limits.conf --文件并发数
echo "net.core.somaxconn = 10240" >> /etc/sysctl.conf --监听队列
echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf -- 0内存不够,就会拒绝申请
1物理内存都允许分配给你,只要有内存就给你用,这样可以避免申请内存失败的问题
sysctl -p
redis多实例配置
在redis-master上操作
[root@redis-master ~]# mkdir -p /data/redis-cluster
创建一个名为`redis-cluster`的目录,路径为`/data/redis-cluster`。`-p`选项表示如果父级目录不存在,则会自动创建
[root@redis-master ~]# cd /data/redis-cluster
切换到`/data/redis-cluster`目录
[root@redis-master redis-cluster]# mkdir 7000 7001 7002
在当前目录下创建三个子目录,分别为`7000`、`7001`和`7002`
[root@redis-master redis-cluster]# cp /usr/local/redis/conf/redis.conf /data/redis-cluster/7000/
将`/usr/local/redis/conf/redis.conf`文件复制到`/data/redis-cluster/7000/`目录下
[root@redis-master redis-cluster]# cp /usr/local/redis/conf/redis.conf /data/redis-cluster/7001/
将`/usr/local/redis/conf/redis.conf`文件复制到`/data/redis-cluster/7001/`目录下
[root@redis-master redis-cluster]# cp /usr/local/redis/conf/redis.conf /data/redis-cluster/7002/
将`/usr/local/redis/conf/redis.conf`文件复制到`/data/redis-cluster/7002/`目录下
[root@redis-master redis-cluster]# tree /data/
以树状结构显示`/data/`目录下的文件和子目录
在redis-slave上操作
[root@redis-slave ~]# mkdir -p /data/redis-cluster
创建一个名为redis-cluster的文件夹,路径为/data/redis-cluster。如果该路径上的文件夹不存在,会自动创建
[root@redis-slave ~]# cd /data/redis-cluster
进入到redis-cluster文件夹
[root@redis-slave ~]# mkdir 8000 8001 8002
在redis-cluster文件夹下创建三个文件夹,分别命名为8000、8001和8002
将redis-master的配置文件复制到redis-slave主机上
在[root@redis-master ~]#上操作
[root@redis-master ~]#
scp /data/redis-cluster/7000/redis.conf 192.168.108.189:/data/redis-cluster/8000/
将本地的`/data/redis-cluster/7000/redis.conf`文件复制到远程主机`192.168.108.189`的`/data/redis-cluster/8000/`目录下
[root@redis-master ~]#
scp /data/redis-cluster/7000/redis.conf 192.168.108.189:/data/redis-cluster/8001/
将本地的`/data/redis-cluster/7000/redis.conf`文件复制到远程主机`192.168.108.189`的`/data/redis-cluster/8001/`目录下
[root@redis-master ~]#
scp /data/redis-cluster/7000/redis.conf 192.168.108.189:/data/redis-cluster/8002/
将本地的`/data/redis-cluster/7000/redis.conf`文件复制到远程主机`192.168.108.189`的`/data/redis-cluster/8002/`目录下
在redis-slave上查看【如果没有tree这个命令 yum -yinstall tree 安装即可】
[root@redis-slave ~]# tree /data 显示`/data`目录下的目录结构
修改redis-master和redis-slave的redis.conf配置文件
配置参考模板,修改配置文件的对应端口
【红色部分是修改的内容】
[root@redis-master redis-cluster]# vim 7000/redis.conf 打开【7001 、7002都要配置只需要在以下配置中修改正确的端口即可】
cluster-enabled yes
bind 0.0.0.0
port 7000
pidfile /data/redis-cluster/7000/redis.pid
logfile "/data/redis-cluster/7000/redis.log"
dir /data/redis-cluster/7000/
tcp-backlog 1024
timeout 0
tcp-keepalive 0
daemonize yes
loglevel notice
databases 16
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "dump.rdb"
slave-serve-stale-data yes
slave-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
slave-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
slave-lazy-flush no
appendonly no
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite yes
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes
启动redis-master多实例
[root@redis-master ~]# redis-server /data/redis-cluster/7001/redis.conf
[root@redis-master ~]# redis-server /data/redis-cluster/7002/redis.conf
[root@redis-master ~]# redis-server /data/redis-cluster/7000/redis.conf
这是启动Redis集群的命令,分别启动了三个Redis节点,分别对应端口号为7000、7001和7002。每个节点都使用了不同的配置文件(redis.conf)来配置Redis的相关参数。这样可以通过搭建Redis集群来实现数据的分布式存储和高可用性
如果配置文件没有配置启动就会是以下效果 需要 ctrl+c 打断
如果配置成功配置文件启动顺利
查找所有与 Redis 相关的网络连接和进程信息
[root@redis-master ~]# netstat -antup | grep redis
构建redis cluster集群
首先将准备好的Ruby源码包拖进虚拟机
[root@redis-master ~]# tar xf ruby-2.5.1.tar.gz -C /usr/src/
解压缩ruby-2.5.1.tar.gz文件,并将文件内容提取到/usr/src/目录下
[root@redis-master ~]# cd /usr/src/ruby-2.5.1/
进入/usr/src/ruby-2.5.1/目录
[root@redis-master ruby-2.5.1]# ./configure && make && make install
运行configure命令 用于配置编译环境 运行make命令,用于编译Ruby源代码 运行make install命令,将编译好的Ruby安装到系统中
[root@redis-master ruby-2.5.1]# ruby --version
运行ruby --version命令,用于查看安装的Ruby版本
在线安装ruby的redis扩展
[root@redis-master ruby-2.5.1]# /usr/local/bin/gem install redis
这是一个命令行指令,用于安装 Redis 数据库的 Ruby 客户端库。它会将 Redis 客户端库安装到你的计算机上,以便你可以在 Ruby 项目中使用 Redis 数据库
在redis-master上操作
[root@redis-master~]#redis-trib.rb create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002
用来创建一个Redis集群,其中包含了三个节点,分别是127.0.0.1:7000、127.0.0.1:7001和127.0.0.1:7002。这三个节点将组成一个Redis集群,用于实现数据的分布式存储和高可用性
查看cluster集群的构建节点信息
[root@redis-master ~]# redis-cli -p 7000 cluster nodes
执行该命令后,Redis 服务器会返回一个包含所有节点信息的列表,包括节点的 ID、IP 地址、端口号、角色(主节点或从节点)、状态等。这些信息可以帮助管理员了解 Redis 集群的拓扑结构和节点状态,进行集群管理和故障排查
ls /data/redis-cluster/7000/
指令将列出该路径下的文件和文件夹
cat /data/redis-cluster/7000/nodes.conf
通过查看nodes.conf文件,可以了解Redis集群中各个节点的配置和状态信息,以便进行集群管理和故障排查
使用redis-cli去操作集群,需要加入-c参数
redis-cli -c: Enable cluster mode (follow -ASK and -MOVED redirections).
这是Redis命令行工具redis-cli的一个选项。-c选项用于启用Redis集群模式,它会自动处理集群中的节点重定向(-ASK和-MOVED)操作。在集群模式下,Redis将数据分布在多个节点上,通过自动重定向来处理数据的读写操作。使用-c选项可以确保redis-cli在集群模式下正常工作
在redis-master上操作
[root@redis-master ~]# redis-cli -c -p 7000
127.0.0.1:7000> set name crushlinux
将键名为"name"的值设置为"crushlinux"
127.0.0.1:7001> set age 18
将键名为"age"的值设置为"18"。这些命令用于在Redis数据库中设置键值对
去中心化(去中心化是指中心点的权力),随意一个入口
[root@redis-master ~]# redis-cli -c -p 7000 get name
[root@redis-master ~]# redis-cli -c -p 7001 get name
[root@redis-master ~]# redis-cli -c -p 7002 get name
这是使用Redis命令行工具redis-cli的命令,其中-c表示使用集群模式连接,-p 7000表示连接到端口号为7000的Redis实例。get name表示获取名为name的键对应的值
在redis-slave上操作
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7000 get name
这是一个使用Redis命令行工具(redis-cli)的命令,用于连接到IP地址为192.168.108.67,端口号为7000的Redis服务器,并获取名为"name"的键对应的值
Could not connect to Redis at 127.0.0.1:7001: Connection refused #被拒绝了
Could not connect to Redis at 127.0.0.1:7001: Connection refused
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7001 get name
"crushlinux" #只有7001成功了
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7002 get name
Could not connect to Redis at 127.0.0.1:7001: Connection refused #被拒绝了
Could not connect to Redis at 127.0.0.1:7001: Connection refused
以远程的方式访问redis-cluster时,被拒绝是因为我们创建集群的时候,是以127.0.0.1的本地IP方式创建的,因此只有本地访问时cluster集群才能发挥作用。
远程访问7001端口时,之所以能成功,是因为数据本来就是存在了监听7001端口的redis上,所以我们不加-c也能访问成功
cluster生产集群部署
在redis-master上操作
[root@redis-master ~]# ls /data/redis-cluster/7000
用于列出指定目录下的文件和文件夹。在这个例子中,`ls /data/redis-cluster/7000`表示列出`/data/redis-cluster/7000`目录下的文件和文件夹
[root@redis-master ~]# ls /data/redis-cluster/7001
[root@redis-master ~]# ls /data/redis-cluster/7002
删除cluster集群配置文件
[root@redis-master ~]# rm -rf /data/redis-cluster/7000/nodes.conf
[root@redis-master ~]# rm -rf /data/redis-cluster/7001/nodes.conf
[root@redis-master ~]# rm -rf /data/redis-cluster/7002/nodes.conf
用于删除指定路径下的文件或目录。具体来说,该命令会删除路径为"/data/redis-cluster/7000/nodes.conf"的文件
[root@redis-master ~]# redis-cli -p 7000 shutdown
[root@redis-master ~]# redis-cli -p 7001 shutdown
[root@redis-master ~]# redis-cli -p 7002 shutdown
用于关闭 Redis 服务器上指定端口号的实例
启动redis-server
[root@redis-master ~]# redis-server /data/redis-cluster/7000/redis.conf
[root@redis-master ~]# redis-server /data/redis-cluster/7001/redis.conf
[root@redis-master ~]# redis-server /data/redis-cluster/7002/redis.conf
重新创建redis-cluster集群
[root@redis-master ~]# redis-trib.rb create 192.168.108.67:7000 192.168.108.67:7001 192.168.108.67:7002
[root@redis-master ~]# ps -ef | grep cluster | grep -v grep
查找并显示所有包含"cluster"关键字的正在运行的进程,同时排除掉grep命令本身
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7000 set name crushlinux
使用Redis命令行工具(redis-cli)连接到IP地址为192.168.200.111,端口号为7000的Redis服务器,并执行了一个set命令。set命令用于将键值对存储到Redis数据库中,这里将名为"name"的键的值设置为"crushlinux"
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7001 get name
使用Redis命令行工具(redis-cli)的命令,用于连接到IP地址为192.168.200.111,端口号为7001的Redis服务器,并获取名为"name"的键对应的值
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7002 get name
使用Redis命令行工具(redis-cli)连接到IP地址为192.168.200.111,端口号为7002的Redis服务器,并执行get命令获取键为"name"的值的操作
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7001
192.168.200.111:7001> get name
表示获取名为"name"的键对应的值
192.168.200.111:7001> set age 18
表示设置名为"age"的键的值为18
192.168.200.111:7000> get age
表示获取名为"age"的键对应的值
192.168.200.111:7000> exit
批量导入数据观察key的集群分布情况
[root@redis-slave ~]# for line in `seq -w 10000`;do redis-cli -h 192.168.108.67 -p 7000 -c set key3_${line} value_${line};done
这段代码是一个循环,用于向 Redis 数据库中设置一系列的键值对。其中 `192.168.108.67` 是 Redis 服务器的 IP 地址,`7000` 是 Redis 服务器的端口号。循环从 1 到 10000,每次设置一个键值对,键的格式为 `key3_数字`,值的格式为 `value_数字`。这段代码的作用是将一系列的键值对存储到 Redis 数据库中
分析cluster集群key的节点分布情况
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -p 7000 info keyspace
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -p 7001 info keyspace
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -p 7002 info keyspace
使用Redis命令行工具(redis-cli)查询指定Redis服务器(192.168.108.67)和端口号(7000)的keyspace信息的命令
Cluster集群故障切换
启动redis-slave上所有的从库
[root@redis-slave ~]# redis-server /data/redis-cluster/8000/redis.conf
[root@redis-slave ~]# redis-server /data/redis-cluster/8001/redis.conf
[root@redis-slave ~]# redis-server /data/redis-cluster/8002/redis.conf
[root@redis-slave ~]# netstat -lnpt | grep redis
redis-cluster集群从库的添加,在redis-master上操作
添加第一组从服务器
[root@redis-master ~]# redis-trib.rb add-node --slave 192.168.108.189:8000 192.168.108.67:7000
将 192.168.108.189:8000 添加到 Redis 集群中,作为 192.168.108.67:7000 的从节点,从节点将复制主节点的数据
添加第二组从服务器
[root@redis-master ~]# redis-trib.rb add-node --slave 192.168.108.189:8001 192.168.108.67:7001
添加第三组从服务器
[root@redis-master ~]# redis-trib.rb add-node --slave 192.168.108.189:8002 192.168.108.67:7002
查看集群所有节点的信息
[root@redis-master ~]# redis-cli -p 7000 cluster nodes
slave从库的读写测试
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -c -p 8000
192.168.200.112:8000> set address beijing
意思是将地址设置为北京。这句话可能是在讨论或设置某个地点的地址信息,将其设定为北京
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -c -p 8000 get address
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -c -p 8001 get address
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -c -p 8002 get address
使用Redis命令行工具(redis-cli)的命令,用于连接到IP地址为192.168.108.189,端口号为8000的Redis服务器,并获取名为"address"的键对应的值
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7000 get address
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7001 get address
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7002 get address
用Redis命令行工具(redis-cli)连接到IP地址为192.168.108.67,端口号为7000的Redis集群,并执行get命令获取键为"address"的值的操作
通过测试,我们发现redis的cluster集群不论是主库还是从库都可以进行set和get。因此,在使用中我们就没必要都去主库了
查看主从cluster集群key的分布情况
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -c -p 8000 info Keyspace
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -c -p 8001 info Keyspace
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -c -p 8002 info Keyspace
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7000 info Keyspace
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7001 info Keyspace
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7002 info Keyspace
使用命令"info Keyspace"可以获取Redis实例中所有keyspace的相关信息,包括每个keyspace中的键值对数量、过期键值对数量等
redis集群的主从自动切换,主库挂掉后,从自动变为主
手动切换主从命令cluster failover
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -p 7000 shutdown
用于关闭指定主机和端口上的Redis服务器。在这个命令中,`-h`参数指定要连接的主机地址,`-p`参数指定要连接的端口号,`shutdown`表示关闭Redis服务器。所以,`redis-cli -h 192.168.108.67 -p 7000 shutdown`的意思是关闭位于192.168.108.67主机的7000端口上的Redis服务器
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -p 8000 cluster nodes
查看Redis集群中各个节点的状态和信息
手动down掉了7000端口的redis-server。从信息得知,7000挂了,8000被切换成了master
重新启动7000端口的server,再次查看
[root@redis-master ~]# redis-server /data/redis-cluster/7000/redis.conf
启动 Redis 服务器,并指定配置文件的路径为 `/data/redis-cluster/7000/redis.conf`。Redis 是一个开源的内存数据库,用于存储和检索数据。通过指定配置文件路径,可以加载特定的配置选项,以满足不同的需求和配置要求。在这个例子中,该命令将启动 Redis 服务器,并使用指定路径下的配置文件进行配置
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -p 8000 cluster node
查看Redis集群中各个节点的状态和信息
从信息得知:7000的redis启动以后,变成了slave。
手动将redis-server 7000端口重新切换成主库
[root@redis-slave ~]# redis-cli -h 192.168.108.67 -c -p 7000 cluster failover
故障转移是在Redis集群中发生主节点故障时,将从节点提升为新的主节点的过程。这个命令的作用是手动触发故障转移操作,将指定节点的主节点切换为从节点
[root@redis-slave ~]# redis-cli -h 192.168.108.189 -p 8000 cluster nodes
删除节点
[root@redis-master ~]# redis-cli -h 192.168.108.189 -p 8000 cluster nodes
[root@redis-master ~]# redis-trib.rb del-node 192.168.108.189:8001 d6af56ec537be64e646212e1739705653e979643
Redis 集群管理工具 redis-trib.rb 的命令,用于从 Redis 集群中删除指定的节点。命令的具体含义如下:
- `redis-trib.rb`:Redis 集群管理工具的名称。
- `del-node`:命令的操作,表示删除节点。
- `192.168.108.189:8001`:要删除的节点的 IP 地址和端口号。
- `d6af56ec537be64e646212e1739705653e979643`:要删除的节点的 ID
最后跟着的是这个节点的ID,可在redis-cli终端中使用cluster nodes查看
修复节点
[root@redis-master ~]# redis-trib.rb add-node --slave 192.168.108.189:8001 192.168.108.67:7001
这条命令的作用是将 `192.168.108.189:8001` 添加到 `192.168.108.67:7001` 这个主节点的从节点列表中。从节点会复制主节点的数据,并在主节点不可用时提供读取服务
发现报错(先进行下面操作)
清空8001节点现有数据
[root@redis-slave ~]#kill -9 67708
用于终止进程
[root@redis-slave ~]# rm -rf /data/redis-cluster/8001/dump.rdb
这是一个Linux命令,用于删除指定路径下的文件或目录。具体来说,该命令会删除路径为"/data/redis-cluster/8001/dump.rdb"的文件
[root@redis-slave ~]# rm -rf /data/redis-cluster/8001/nodes.conf
用于删除指定路径下的文件或目录。具体来说,该命令会删除路径为"/data/redis-cluster/8001/nodes.conf"的文件
[root@redis-slave ~]# rm -rf /data/redis-cluster/8001/redis.pid
用于删除指定路径下的文件或目录。具体来说,`rm`是删除命令,`-rf`是选项,表示递归删除目录及其内容,并且不提示确认
[root@redis-slave ~]# redis-server /data/redis-cluster/8001/redis.conf
将启动一个名为redis-server的进程,并使用指定的配置文件(/data/redis-cluster/8001/redis.conf)来配置服务器的行为。通过这个命令,你可以启动一个Redis服务器实例,并根据需要进行配置
[root@redis-master ~]# redis-trib.rb add-node --slave 192.168.200.112:8001 192.168.200.111:7001
查看进程 netstat -anputl | grep redis
完成以上步骤之后再次验证成功