大家好,我是烤鸭:
今天分享一下redis集群安装,写的比较简单,就是做个记录。
1. 下载&安装
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
tar -zxvf redis-5.0.4.tar.gz
解压并编译
https://redis.io/
2. 修改配置文件和启动
redis-5.0.4 同级目录创建 redis_7000和 redis_6379,复制并修改配置文件
cp redis-5.0.4/conf/redis.conf ./redis_7000
修改配置文件以下内容:
bind 127.0.0.1(本机ip)
port 6379
daemonize yes
requirepass xxx #如需设置密码, 集群每台机器必须密码一致
################################ REDIS CLUSTER ###############################
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-node-timeout 15000
集群的其他节点复制配置文件, 修改ip和端口即可。
redis-cluster最少保证 3主3从,可以一台机器多端口(不建议,失去集群高可用的意义)或者多机器(主从不放在同一台)。
启动:
./redis-5.0.4/src/redis-server 7000/redis.conf
查看进程:
[root@host-172-17-33-170 redis-cluster]# ps -ef|grep redis
root 5258 1 3 11:41 ? 00:00:00 ./redis-5.0.4/bin/redis-server 172.17.33.170:7000 [cluster]
root 5263 5231 0 11:41 pts/1 00:00:00 grep redis
3. 添加集群节点
确保所有的节点都正常启动后:
添加集群节点。
[root@host-172-17-33-170 redis-cluster]# ./redis-trib.rb create --replicas 1 168.1.1.26:7000 168.1.33.77:7000 168.1.1.31:7000 168.1.33.77:6379 168.1.1.31:6379 168.1.1.26:6379/usr/bin/env: ruby: No such file or directory
安装ruby:
yum install ruby
如出现下面的情况,可能是机器版本和ruby版本的问题。
./redis-trib.rb:6: odd number list for Hashwhite: 29,^
./redis-trib.rb:6: syntax error, unexpected ':', expecting '}'white: 29,^
./redis-trib.rb:7: syntax error, unexpected ',', expecting kEND
更多的看下这篇文章:
https://www.cnblogs.com/chanAndy/p/9851512.html
如果正常情况会提示:
WARNING: redis-trib.rb is not longer available!
You should use redis-cli instead.All commands and features belonging to redis-trib.rb have been moved
to redis-cli.
In order to use them you should call redis-cli with the --cluster
option followed by the subcommand name, arguments and options.Use the following syntax:
redis-cli --cluster SUBCOMMAND [ARGUMENTS] [OPTIONS]Example:
redis-cli --cluster create 127.0.0.1:30001 127.0.0.1:30002 127.0.0.1:30003 127.0.0.1:30004 127.0.0.1:30005 127.0.0.1:30006 --cluster-replicas 1
修改命令后执行:
redis-cli --cluster create --replicas 1 168.1.1.26:7000 168.1.33.77:7000 168.1.1.31:7000 168.1.33.77:6379 168.1.1.31:6379 168.1.1.26:6379
4. 登录查看节点状态
登录redis:
./redis-5.0.4/src/redis-cli -h 168.1.47.26 -p 6379
#因为没设置密码,如果设置了密码,进入后输入:
168.1.47.26:6379> auth 'password'
#查看节点状态
cluster nodes
如图:
大功告成。写的比较简单,详细配置还没遇到,做个记录。