redis 集群搭建及相关命令
来源:互联网 发布:西方现代哲学史知乎 编辑:程序博客网 时间:2024/05/18 12:33
1、下载redis 安装包redis-3.0.7.tar.gz
2、tar -zxvf redis-3.0.7.tar.gz 解压安装包
3、进入根目录,make 编译
4、进入src,make install 安装
5、新建目录/usr/local/redis/bin /usr/local/redis/etc
6、拷贝redis-server redis-cli 到bin下,拷贝redis.conf到etc下
7、修改redis.conf 包括端口号、后台启动等
8、启动 /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
9、客户端连接 /usr/local/redis/bin/redis-cli -p 8080 8080为定义的端口号
以上操作分别在10.202.15.193、10.202.15.195、10.202.15.198操作一遍
集群部署
10、新建文件夹
在机器10.202.15.193、10.202.15.195、10.202.15.198 分别建立以下文件夹
/usr/local/redis-cluster/7001/usr/local/redis-cluster/7002
11、把/usr/local/redis/etc/redis.conf分别拷贝到 7001、7002下
12、分别修改配置文件
port 7001
pidfile /var/run/redis-7001.pid
dbfilename dump-7001.rdb
appendfilename "appendonly-7001.aof"
cluster-config-file nodes-7001.conf
cluster-enabled yes
cluster-node-timeout 5000
appendonly yes
13、启动
在10.202.15.193、10.202.15.195、10.202.15.198分别操作
/usr/local/redis/bin/redis-server /usr/local/redis-cluster/7001/redis.conf/usr/local/redis/bin/redis-server /usr/local/redis-cluster/7002/redis.conf
14、安装ruby,rubygems
yum install ruby
yum install rubygems
换源
gem source --remove http://rubygems.org/
gem sources -a http://ruby.taobao.org/
gem install redis --version 3.0.0 //安装gem_redis
如果因为网络的原因无法直接下载安装,则可以先找到下载到gem,然后安装。
gem install redis -a 地址
https://rubygems.org/downloads/redis-3.0.7.gem
15、src 下执行
redis-trib.rb create --replicas 1 10.202.15.193:7001
10.202.15.193:7002
10.202.15.195:7001
10.202.15.195:7002
10.202.15.198:7001
10.202.15.198:7002
16、客户端连接
redis-cli -h 10.202.15.193 -c -p 7001 其中一定不能少了-c,否则会报(error) moved 错误
17、查看节点信息
redis-cli -c -h 10.202.15.193 -p 7001 cluster nodes
18、新增节点
创建文件夹7003,cp redis.conf ,更改配置文件中的端口,同以上操作
先启动节点
redis-server /usr/local/redis/redis-cluster/7003/redis.conf
然后加入集群
./redis-trib.rb add-node 10.202.15.193:7003 10.202.15.193:7001
出现以下信息
>>> Adding node 10.202.15.193:7003 to cluster 10.202.15.193:7001
>>> Performing Cluster Check (using node 10.202.15.193:7001)
M: 150ddf914c03f4e64fb3b9b95b2dc6ca4a6fc1ee 10.202.15.193:7001
slots:10923-16383 (5461 slots) master
1 additional replica(s)
S: 276546e824881f9aea3a50d85eb4cf36164a8a41 10.202.15.193:7002
slots: (0 slots) slave
replicates 150ddf914c03f4e64fb3b9b95b2dc6ca4a6fc1ee
S: e6c5e58e39d3dd6fd8a71aa1d40ba5c69750e747 10.202.15.198:7002
slots: (0 slots) slave
replicates bbb013a6286c2c678d0fd9e51d1bc205d6cc4799
S: 2048ac316f682f7c6d2ab115e63bc1809cdca269 10.202.15.195:7002
slots: (0 slots) slave
replicates a8da385c311fe7b12073ae87858c8c70ff261077
M: bbb013a6286c2c678d0fd9e51d1bc205d6cc4799 10.202.15.195:7001
slots:5461-10922 (5462 slots) master
1 additional replica(s)
M: a8da385c311fe7b12073ae87858c8c70ff261077 10.202.15.198:7001
slots:0-5460 (5461 slots) master
1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
>>> Send CLUSTER MEET to node 10.202.15.193:7003 to make it join the cluster.
[OK] New node added correctly.
加入后有可能是master节点,也有可能是slave节点。
19、移动槽
执行一下命令移动槽
./redis-trib.rb reshard 10.202.15.193:7001
提示移动多少个槽,输入1000,即移动1000个
然后指定移到哪个节点上,输入刚创建的节点ID ,查看节点ID可以用redis-cli -c -h 10.202.15.193 -p 7001 cluster nodes
95df1ee020021a5ca6fe6961431ded660b304229
然后提示需要移动哪几个节点的槽到新的节点上,可以输入all,表示从主节点中随机取一些槽到新的节点,也可以输入节点ID,指定从哪几个节点移,最后输入done结束
输入all后,会显示执行计划,输入yes,执行计划,移动槽
20、把这个节点变成从节点
把新的节点变成slave,新的节点中必须没有槽,并且对于的master也没有槽,有的话需要移动到其他的master,否则会报
ERR To set a master the node must be empty and without assigned slots 错误,移动槽参照上面步骤
新节点和对应的master上没有槽后,执行一下命令
./redis-cli -c -h 10.202.15.193 -p 7003 cluster replicate 150ddf914c03f4e64fb3b9b95b2dc6ca4a6fc1ee
150ddf914c03f4e64fb3b9b95b2dc6ca4a6fc1ee是对应的master节点ID
redis-cli -h 10.202.15.193 -p 7001 cluster nodes | grep slave | grep 150ddf914c03f4e64fb3b9b95b2dc6ca4a6fc1ee 查看master下对应的slave
276546e824881f9aea3a50d85eb4cf36164a8a41 10.202.15.193:7002 slave 150ddf914c03f4e64fb3b9b95b2dc6ca4a6fc1ee 0 1503403543612 9 connected
95df1ee020021a5ca6fe6961431ded660b304229 10.202.15.193:7003 slave 150ddf914c03f4e64fb3b9b95b2dc6ca4a6fc1ee 0 1503403540607 7 connected
21、查看节点信息
进入客户端
./redis-cli -c -h 10.202.15.198 -p 7001
输入 info replication 输出当前节点的信息,包括节点是master还是slave
Replication
role:master
connected_slaves:3
slave0:ip=10.202.15.198,port=7002,state=online,offset=1710,lag=1
slave1:ip=10.202.15.198,port=7003,state=online,offset=1724,lag=1
slave2:ip=10.202.15.195,port=7003,state=online,offset=1710,lag=1
master_repl_offset:1724
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:1723
- redis 集群搭建及相关命令
- redis集群搭建及分析
- redis集群搭建及分析
- redis集群搭建及注意事项
- redis集群搭建及注意事项
- redis集群搭建及注意事项
- Redis集群的搭建、维护、运营的相关命令与工具介绍
- Redis入门及集群环境搭建
- 自己动手搭建redis集群及使用
- redis 集群服务搭建及配置
- redis-cluser集群搭建及使用
- redis安装及cluster集群环境搭建
- Redis-Cluster集群搭建及配置
- redis集群及常用的操作命令
- redis学习五,redis集群搭建及添加主从节点
- Redis及Redis集群的搭建和使用
- redis 集群搭建过程及搭建问题处理
- Java Spring mvc 操作 Redis 及 Redis 集群Redis集群搭建与简单使用
- B
- http://blog.csdn.net/rongdeguoqian/article/details/8035080
- sdut3257——Square Number(打表)
- 每日一题 No.32 程序员的归宿问题
- iOS多线程初级
- redis 集群搭建及相关命令
- 07-S3C2440驱动学习(一)嵌入式linux字符设备驱动-LED字符设备驱动
- MVC属性过滤器
- fl2440移植RTC驱动及hwclock命令使用
- Java字符串数组初始化和赋值
- Java集合之List遍历找到匹配元素删除方法总结
- [BZOJ2303][Apio2011]方格染色(数学相关+加权并查集)
- 提高篇项目2-二分法解方程
- bzoj 2303: [Apio2011]方格染色 (并查集)