安装3主6从redis集群
1、下载redis
redis官网 或 本人实践redis资源
2、解压redis
tar -xvf redis-3.2.11.tar.gz
3、安装redis
cd redis-3.2.11/
make && make install
4.在redis-3.2.11目录下创建9个文件夹
mkdir 8000 8001 8002 8003 8004 8005 8006 8007 8008
5.复制redis.conf 到8000文件夹下
cp redis.conf 8000/
6、修改8000下的redis.conf文件进行如下操作:
# bind 127.0.0.1
//注释掉bind;可以监听连接当前服务的所有-h 后的ip;例如;绑
定了127.0.0.1,但是登录时使用-h 10.9.17.153
protected-mode no //yes修改为no yes表示开启,保护模式下,连接redis服务需要用到密码;no表示不开启,redis-cli登录时,不需要提供安全信息,例如密码;
port 8000 //端口8000-8008
daemonize yes //后台运行
pidfile /var/run/redis_8000.pid //pidfile文件对应8000 当大量的进程启动后,很难通过ps -ef|grep redis直接寻找你需要操作的进程的pid
logfile 8000/redis.log //相对路径,启动时在redis的根目录log文件记录的内容,就是在启动时,控制台打印的内容,和后续操作redis时所有的日志信息;
dbfilename dump8000.rdb //指定当前服务加载的持久化文件
appendonly yes //默认是rdb方式持久化要改成yes
appendfilename "appendonly.aof" 指定一个aof格式的持久化文件
cluster-enabled yes //加载当前配置文件的redis服务一旦启动需要开启集群模式,否则无法使用集群的各种策略和逻辑
cluster-config-file nodes_8000.conf //集群配置启动后,将会创建这个nodes文件,记录当前服务器上唯一的一个集群状态;例如,搭建了8000-8005这样一个集群,操作失误下,集群失效,重新搭建集群,当前服务器读取这个配操作失误下,集群失效,重新搭建集群,当前服务器读取这个配置文件会发现,槽道已经被一个集群分配了,新的集群搭建失败;
cluster-node-timeout 15000 //请求超时 默认15秒,可自行设置
7、重复对8001~8008下的redis.conf文件进行类似操作,
cp 8000/redis.conf 8001/
cp 8000/redis.conf 8002/
cp 8000/redis.conf 8003/
cp 8000/redis.conf 8004/
cp 8000/redis.conf 8005/
cp 8000/redis.conf 8006/
cp 8000/redis.conf 8007/
cp 8000/redis.conf 8008/
重复步骤6,把对应的8000替换为对应文件夹名即可;或利用vim的替换命令,直接替换文件中的"8000"为对应的端口:
vim中:%s/8000/8001/g
8、安装ruby 及rubygems及gems-redis插件等(已安装可忽略)
可参考离线安装ruby、rubygems
9、启动集群
redis-server 8000/redis.conf
redis-server 8001/redis.conf
redis-server 8002/redis.conf
redis-server 8003/redis.conf
redis-server 8004/redis.conf
redis-server 8005/redis.conf
redis-server 8006/redis.conf
redis-server 8007/redis.conf
redis-server 8008/redis.conf
检查启动情况:
ps -ef|grep redis
若出现 [cluster],则表示启动成功
10、添加主从关系
cd redis-3.2.11/src
./redis-trib.rb create --replicas 1 192.168.13.10:8000 192.168.13.10:8001 192.168.13.10:8002 192.168.13.10:8003 192.168.13.10:8004 192.168.13.10:8005 192.168.13.10:8006 192.168.13.10:8007 192.168.13.10:8008
输入yes;若出现类似页面,则表明主从搭建完成
11、检查
登录:
redis-cli -c -p 8000
查看集群状态(登录后查看命令):
cluster info