图解
集群的实操
1、在/usr/local目录下创建一个文件夹redis-cluster1
mkdir /usr/local/redis-cluster1
2、在redis-cluster1中创建6个文件夹
mkdir 7001
mkdir 7002
....
mkdir 7006
3、将redis解压目录中的 redis.conf文件复制到7001中
cp redis.conf /usr/local/redis-cluster1/7001
4、vim这个文件进行更改
daemonize yes
port 7001
dir /usr/local/redis-cluster1/7001
cluster-enabled yes
cluster-config-file nodes-7001.conf
cluster-node-timeout 5000
appendonly yes
5、将7001中的redis.conf文件 分别复制到 7002-7006中 更改里面所有是7001的地方更改成 对应的端口号就可以了
...
6、安装ruby的相关的工具(redis 5.0的时候没有使用ruby去创建集群这个步骤可省略)
yum install ruby
yum install rubygems
gem install redis
安装最后一个工具就出错了....
(centos7 安装较高版本ruby2.2/2.3/2.4+)按照步骤玩一次就对了
7、开启每一个服务
./redis-server /usr/local/redis-cluster1/7001/redis.conf
./redis-server /usr/local/redis-cluster1/7002/redis.conf
./redis-server /usr/local/redis-cluster1/7003/redis.conf
./redis-server /usr/local/redis-cluster1/7004/redis.conf
./redis-server /usr/local/redis-cluster1/7005/redis.conf
./redis-server /usr/local/redis-cluster1/7006/redis.conf
8、创建集群
以前的版本:
./redis-trib.rb create --replicas 1 106.54.13.167:7001 106.54.13.167:7002 106.54.13.167:7003 106.54.13.167:7004 106.54.13.167:7005 106.54.13.167:7006
现在的版本
redis-cli --cluster create 106.54.13.167:7001 106.54.13.167:7002 106.54.13.167:7003 106.54.13.167:7004 106.54.13.167:7005 106.54.13.167:7006 --cluster-replicas 1
登陆集群某一个客户端的命令
./redis-cli -c -h 106.54.13.167 -p 7001
面试容易问道的问题
1、如果集群中一个主服务器死了 那么整个集群的数据是否是完整的?
- 是完整的,因为主服务器死了之后会选举他自己原来的从服务器来完成接班操作
- 当死了的服务器重新启动之后,主服务器会自动的将数据同步给从服务器