redis installation

安装redis

下载并编译redis,编译完成后会在src目录下生成Redis服务端程序redis-server和客户端程序redis-cli

wget http://download.redis.io/releases/redis-4.0.9.tar.gz
tar zxvf redis-4.0.9.tar.gz
cd redis-4.0.9
make

安装ruby

通过"rbenv"安装ruby和相关依赖包

gem install redis

设置redis和ruby

将ruby和redis加入系统路径

# rbenv
export RBENV_ROOT="/data/apache/tools/rbenv"
export PATH="$RBENV_ROOT/bin:$RBENV_ROOT/plugins/ruby-build/bin:$PATH"
eval "$(rbenv init -)"

# redis
export REDIS_HOME="/data/apache/tools/redis-4.0.9/src"
export PATH="$REDIS_HOME:$PATH"

集群说明

在"192.168.11.61"和"192.168.11.62"两台机的三个端口"6386,6387,6388"启动redis

redis配置

在集群机器建不同端口的redis配置文件

mkdir -p /data/hadoop/redis/config/6386
mkdir -p /data/hadoop/redis/config/6387
mkdir -p /data/hadoop/redis/config/6388

配置文件"redis-6386.conf"内容如下

# redis后台运行
daemonize yes

port 6386
pidfile  /var/run/redis_6386.pid

# 开启集群
cluster-enabled yes
# 集群的配置文件首次启动自动生成
cluster-config-file nodes-6386.conf
# 请求超时,默认15
cluster-node-timeout 15000

# aof日志开启  有需要就开启,它会每次写操作都记录一条日志
appendonly yes
# 可以指定日志的目录
logfile "/data/hadoop/redis/data/6386/redis-6386.log"

# 关闭保护模式
protected-mode no

redis启动

到每个配置文件目录下启动redis

cd /data/hadoop/redis/config/6386
redis-server redis-6386.conf

redis集群启动,利用redis-trib创建cluster的操作,只需要一次即可,假设系统关机,把所有6个节点全关闭后,下次重启后,即自动进入cluster模式,不用再次redis-trib.rb create。

redis-trib.rb create --replicas 1 192.168.11.61:6386 192.168.11.61:6387 192.168.11.61:6388 192.168.11.62:6386 192.168.11.62:6387 192.168.11.62:6388

redis验证

查看进程,端口,集群

ps aux | grep redis
ps -ef | grep 6386
redis-trib.rb check 192.168.11.61:6386

集群扩容,删除

# 增加主节点
redis-trib.rb add-node [host]:[port]
# 为新增主节点分配slots
redis-trib.rb reshard [host]:[port]
# 增加从节点
redis-trib.rb add-node --slave --master-id $[nodeid] 192.168.210.128:7007 192.168.210.128:7000
# 删除节点
redis-trib.rb reshard 192.168.210.128:7002
edis-trib del-node 192.168.210.128:7002  ${node-id}

参考

http://www.cnblogs.com/wlandwl/p/rediscluster.html http://blog.csdn.net/huwh_/article/details/79242625 https://redis.io/topics/cluster-tutorial

links

social