redis配置集群
2015-07-29 18:29
651 查看
redis配置集群
配置环境
环境centos 6.6 redis 3.0.2为了方便,直接在一个文件夹下面复制三份redis的环境,后缀分别表示监听的端口号
源码编译,进入src文件夹,make test,看看test能不能通过,然后make
配置文件的核心配置,端口分别是10000,10001,10002
port 10000 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 15000 appendonly yes
分别运行
./redis-server ../redis.conf
配置集群
./redis-trib.rb create --replicas 0 127.0.0.1:10000 127.0.0.1:10001 127.0.0.1:10002
报错!!!
必须要有ruby环境
yum install ruby
安装完毕,还是报错
./redis-trib.rb:24:in `require': no such file to load -- rubygems (LoadError) from ./redis-trib.rb:24
安装rubygems
yum install rubygems
…继续报错
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- redis (LoadError) from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' from ./redis-trib.rb:25
安装redis和ruby的接口
gem install redis
安装成功,本地测试
使用一个客户端来链接10000端口的服务器,设置一些key-value
redis-cli -c -p 10000
可以看到自动重定向到10002端口
set weixuan fengtang -> Redirected to slot [12705] located at 127.0.0.1:10002 OK 127.0.0.1:10002> set zhangsan Mr.Zhang OK 127.0.0.1:10002>
使用另一个客户端来链接10001端口的服务器,然后获取数据
redis-cli -c -p 10001
127.0.0.1:10001> get weixuan -> Redirected to slot [12705] located at 127.0.0.1:10002 "fengtang"
可以看到重定向到10002
增加节点
创建一个节点环境,修改端口为10003启动这个node
./redis-server ../redis.conf
添加节点
./redis-trib.rb add-node 127.0.0.1:10003 127.0.0.1:10000
第一个参数是我们刚才启动的新实例,第二个参数是集群中已有的节点。
./redis-trib.rb add-node 127.0.0.1:10003 127.0.0.1:10000 >>> Adding node 127.0.0.1:10003 to cluster 127.0.0.1:10000
Connecting to node 127.0.0.1:10000: OK
Connecting to node 127.0.0.1:10001: OK
Connecting to node 127.0.0.1:10002: OK
>>> Performing Cluster Check (using node 127.0.0.1:10000)
M: b4a5871c0344b54e8e767af80bd6594bae8b9228 127.0.0.1:10000
slots:0-5460 (5461 slots) master
0 additional replica(s)
M: c51a32d82bf42017f2ad50907f816678293f520e 127.0.0.1:10001
slots:5461-10922 (5462 slots) master
0 additional replica(s)
M: a03226abfa843c524602afe2e22ca8c68b023e0a 127.0.0.1:10002
slots:10923-16383 (5461 slots) master
0 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
Connecting to node 127.0.0.1:10003: OK
>>> Send CLUSTER MEET to node 127.0.0.1:10003 to make it join the cluster.
[OK] New node added correctly.
添加成功
检查一下新节点是否已经加入
[root@java_yf_120 src]# redis-cli -c -p 10000 127.0.0.1:10000> cluster nodes 532634b9563dce5d5165b9c09d391da5fc73cdf9 127.0.0.1:10003 master - 0 1438165131300 0 connected c51a32d82bf42017f2ad50907f816678293f520e 127.0.0.1:10001 master - 0 1438165130298 2 connected 5461-10922 b4a5871c0344b54e8e767af80bd6594bae8b9228 127.0.0.1:10000 myself,master - 0 0 1 connected 0-5460 a03226abfa843c524602afe2e22ca8c68b023e0a 127.0.0.1:10002 master - 0 1438165130799 3 connected 10923-16383 127.0.0.1:10000>
可以看到添加成功
相关文章推荐
- redis安装问题小结
- RedHat 5.8 安装Oracle 11gR2_Grid集群
- Redis偶发连接失败案例实战记录
- Redis中实现查找某个值的范围
- Redis和Memcached的区别详解
- 分割超大Redis数据库例子
- Redis总结笔记(一):安装和常用命令
- Redis sort 排序命令详解
- redis中修改配置文件中的端口号 密码方法
- 在Ruby on Rails上使用Redis Store的方法
- Redis和Memcache的区别总结
- 在Node.js应用中使用Redis的方法简介
- Redis服务器的启动过程分析
- web 应用中常用的各种 cache详解
- 利用yum安装Redis的方法详解
- 从MySQL到Redis的简单数据库迁移方法
- 为啥懒 Redis 是更好的 Redis
- 在Redis数据库中实现分布式速率限制的方法
- MySQL slave_net_timeout参数解决的一个集群问题案例
- redis2.8配置文件中文翻译版