目录
一、redis集群搭建(3台机器、6个节点)
1、在安装目录下创建7001、7002文件夹,把之前的redis.conf配置文件复制到7001文件夹中,进行编辑
2、传到其他服务器的文件要记得修改端口和集群节点信息和pidfile,不然redis 起不来
3、启动redis
4、创建集群
5、测试:
6、redis 集群常用命令
一、redis集群搭建(3台机器、6个节点)
1、在安装目录下创建7001、7002文件夹,把之前的redis.conf配置文件复制到7001文件夹中,进行编辑
[root@rabbitmq_1 redis-cluster]# ls
7001 7002 redis-6.2.6
[root@rabbitmq_1 redis-cluster]# cp /home/redis-cluster/redis-6.2.6/redis.conf /home/redis-cluster/7001/
[root@rabbitmq_1 7001]# ls
redis.conf
[root@rabbitmq_1 7001]# vim redis.conf 修改一下参数
port 7001 //redis 端口号
cluster-enabled yes //开启redis 集群
cluster-config-file nodes-7001.conf //保存节点配置文件的路径
cluster-node-timeout 5000 //集群节点超时时间
appendonly yes //开启AOF持久化
daemonize yes // 后台启动
pidfile /var/run/redis_7001.pid //后台启动会生成一个当前实例的pidfile
2、传到其他服务器的文件要记得修改端口和集群节点信息和pidfile,不然redis 起不来
scp ./redis.conf root@192.168.134.133:/home/redis-cluster/7003/
scp ./redis.conf root@192.168.134.133:/home/redis-cluster/7004/
scp ./redis.conf root@192.168.134.134:/home/redis-cluster/7005/
scp ./redis.conf root@192.168.134.135:/home/redis-cluster/7006/
3、启动redis
[root@rabbitmq_1 redis-6.2.6]# ./bin/redis-server ../7001/redis.conf
[root@rabbitmq_1 redis-6.2.6]# ./bin/redis-server ../7002/redis.conf
[root@rabbitmq_2 redis-6.2.6]# ./bin/redis-server ../7003/redis.conf
[root@rabbitmq_2 redis-6.2.6]# ./bin/redis-server ../7004/redis.conf
[root@slave redis-6.2.6]# ./bin/redis-server ../7005/redis.conf
[root@slave redis-6.2.6]# ./bin/redis-server ../7006/redis.conf
[root@rabbitmq_1 redis-6.2.6]# ps -ef |grep redis
root 24247 1 0 16:15 ? 00:00:00 ./bin/redis-server *:7001 [cluster]
root 24252 1 0 16:15 ? 00:00:00 ./bin/redis-server *:7002 [cluster]
[root@rabbitmq_2 redis-6.2.6]# ps -ef |grep redis
root 24263 1 0 16:16 ? 00:00:00 ./bin/redis-server *:7003 [cluster]
root 24268 1 17 16:16 ? 00:00:00 ./bin/redis-server *:7004 [cluster]
[root@slave redis-6.2.6]# ps -ef |grep redis
root 7033 1 13 16:17 ? 00:00:01 ./bin/redis-server *:7005 [cluster]
root 7038 1 25 16:17 ? 00:00:01 ./bin/redis-server *:7006 [cluster]
4、创建集群
--cluster-replicas 1 表示为集群中的每个master节点创建一个slave节点。我们在任意一台虚拟机上执行上面的命令:
不带密码创建
./bin/redis-cli --cluster create --cluster-replicas 1 192.168.134.132:7001 192.168.134.132:7002 192.168.134.133:7003 192.168.134.133:7004 192.168.134.134:7005 192.168.134.134:7006
带密码创建
./redis-cli --cluster create 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 127.0.0.1:7006 --cluster-replicas 1 -a 123456
[root@localhost bin]# ./redis-cli --cluster create --cluster-replicas 1 192.168.153.128:7001 192.168.153.128:7002 192.168.153.129:7003 192.168.153.129:7004 192.168.153.130:7005 192.168.153.130:7006 -a 123456
5、测试:
进入redis
[root@localhost bin]# ./redis-cli -h 192.168.153.128 -p 7001 -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.153.128:7001>
192.168.153.128:7001> cluster nodes
858c2491b06f94d85c0fdb1e24c448dda1972007 192.168.153.129:7003@17003 master - 0 1710223575000 3 connected 5461-10922
066997843737106022a8d9951bc0f0ae4c2545e4 192.168.153.128:7001@17001 myself,master - 0 1710223575000 1 connected 0-5460
cd080e39d7d711732f6ef2fc8b5946fef18272a3 192.168.153.128:7002@17002 slave b031ee5bfe93044a50f340b39ec8042365ef9f51 0 1710223575245 5 connected
b031ee5bfe93044a50f340b39ec8042365ef9f51 192.168.153.130:7005@17005 master - 0 1710223574741 5 connected 10923-16383
59e7afc9ba3c83102ac4e42136414bd2ec636b3b 192.168.153.129:7004@17004 slave 066997843737106022a8d9951bc0f0ae4c2545e4 0 1710223574237 1 connected
a18cd4ace08ff620ff9f96ea522951a12d5a7b5d 192.168.153.130:7006@17006 slave 858c2491b06f94d85c0fdb1e24c448dda1972007 0 1710223574000 3 connected
192.168.153.128:7001>
解释:
858c2491b06f94d85c0fdb1e24c448dda1972007 位于 192.168.153.129:7003,是主节点,负责槽位 5461-10922。
066997843737106022a8d9951bc0f0ae4c2545e4 位于 192.168.153.128:7001,是主节点,负责槽位 0-5460,并且标记为myself,表示这是当前执行的节点。
cd080e39d7d711732f6ef2fc8b5946fef18272a3 是 192.168.153.128:7002 的从节点,复制 b031ee5bfe93044a50f340b39ec8042365ef9f51。
b031ee5bfe93044a50f340b39ec8042365ef9f51 位于 192.168.153.130:7005,是主节点,负责槽位 10923-16383。
59e7afc9ba3c83102ac4e42136414bd2ec636b3b 是 192.168.153.129:7004 的从节点,复制 066997843737106022a8d9951bc0f0ae4c2545e4。
a18cd4ace08ff620ff9f96ea522951a12d5a7b5d 是 192.168.153.130:7006 的从节点,复制 858c2491b06f94d85c0fdb1e24c448dda1972007。
查看redis是否有密码
127.0.0.1:7001> CONFIG GET requirepass
1) "requirepass"
2) "123456"
6、redis 集群常用命令
1、cluster info:获取集群的 状态和信息
2、cluster nodes:列出集群中所有节点信息
3、cluster meet <ip> <port>:将当前节点与指定节点连接
4、cluster replicas <node_id> :将指定节点标记为其他节点的主节点的副本
5、cluster forget <node_id> :从集群中移除指定节点
5、cluster slave <node_id> :列出指定节点的所有从节点