redis集群安装部署
2017-12-05 18:59
489 查看
redis集群规划,redis集群至少需要6个节点(3主3从),此操作是把6各节点都安装在一台服务器上,若服务器多,
可分开进行安装。此实验前提是机器上已经装好了redis。若不会安装redis参考 http://blog.csdn.net/linux_newbie_rookie/article/details/78723586
安装redis集群可参考博客:http://www.cnblogs.com/mafly/p/redis_cluster.html
以下安装是伪集群,若安装真正的集群,则在最少3台机器上,搭建为3主3从,只需要在创建集群节点时输入对应的地址即可。
/redis-cluster/bin/redis-trib.rb create --replicas 1 192.168.6.190:9001 192.168.6.190:9002 192.168.6.191:9003 192.168.6.191:9004 192.168.6.192:9005 192.168.6.192:9006
1. 创建文件夹,计划集群中redis节点的端口号为9001-9006,数据存放在端口号/data下。
mkdir /redis-cluster
mkdir -p 9001/data 9002/data 9003/data 9004/data 9005/data 9006/data
2. 复制执行脚本
在 /redis-cluster下创建 bin 文件夹,用来存放集群运行脚本,并把安装好的 Redis 的 src 路径下的运行脚本拷贝过来。
mkdir /redis-cluster/bin
cd /usr/local/redis/src
cp mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server redis-trib.rb /usr/redis-cluster/bin
3. 复制一个新的redis实例
从已经安装好的(/usr/local/redis/)redis中复制一个新实例到9001--9006中
cp /usr/local/redis/* /redis-cluster/9001
修改9001下的redis.conf配置文件:
port 9001(每个节点的端口号)
daemonize yes
bind 192.168.119.131(绑定当前机器 IP)
dir /usr/local/redis-cluster/9001/data/(数据文件存放位置)
pidfile /var/run/redis_9001.pid(pid 9001和port要对应)
cluster-enabled yes(启动集群模式)
cluster-config-file nodes9001.conf(9001和port要对应)
cluster-node-timeout 15000
appendonly yes
4. 复制新实例到9002-9006,然后修改配置文件对应的端口号以及相关信息
(可在vim里面:$s###g进行修改,也可以采用下面的sed进行修改)
配置文件修改:
sed -i 's/cluster-config-file nodes-9001.conf/cluster-config-file nodes-9006.conf/g' redis.conf
sed -i 's/\/var\/run\/redis_9001.pid/\/var\/run\/redis_9006.pid/g' redis.conf
sed -i 's/logfile ""/logfile "\/redis-cluster\/9006\/log"/g' redis.conf
sed -i 's/\/redis-cluster\/9001\/data\//\/redis-cluster\/9006\/data\//g' redis.conf
sed -i 's/port 9001/port 9006/g' redis.conf
5. 启动9001-9006的所有节点。
/usr/local/bin/redis-server /redis-cluster/9001/redis.conf
...
...
...
5. 找个节点进行测试
/redis-cluster/bin/redis-cli -h 192.168.119.131 -p 9001
keys *
set name mm
报错:(error) CLUSTERDOWN Hash slot not served(不提供集群的散列槽)
原因:虽然配置启动了redis集群服务,但是还不在一个集群中,互相不能发现,没有可存储的位置,就是slot(槽)。
6. 安装集群所需软件
yum install -y ruby
gem install redis
报错:
ERROR: Error installing redis:
redis requires Ruby version >= 2.2.2.2
原因:Centos7yum安装的ruby版本为2.2.2.2,但是安装redis时要求最低为2.2.2.2,自己进行源码编译安装依然还是报错,
解决方法用rvm来更新ruby
参考博客:http://blog.csdn.net/FengYe_YuLu/article/details/77628094
出来这样即为成功
[root@bogon test]# gem install redis
Successfully installed redis-3.0.0
Parsing documentation for redis-3.0.0
Installing ri documentation for redis-3.0.0
Done installing documentation for redis after 1 seconds
1 gem installed
7. /redis-cluster/bin/redis-trib.rb create --replicas 1 192.168.6.190:9001 192.168.6.190:9002 192.168.6.190:9003 192.168.6.190:9004 192.168.6.190:9005 192.168.6.190:9006
成功则会出来3主3从,有系统自动分配
Using 3 masters:
192.168.6.190:9001
192.168.6.190:9002
192.168.6.190:9003
上面命令解释:调用 ruby 命令来进行创建集群,--replicas 1 表示主从复制比例为 1:1,即一个主节点对应一个从节点;然后,默认给我们分配好了每个主节点和对应从节点服务,
以及 solt 的大小,因为在 Redis 集群中有且仅有 16383 个 solt ,默认情况会给我们平均分配,当然你可以指定,后续的增减节点也可以重新分配。
8. 做到以上则代表redis集群搭建成功,可以在验证下:
redis-cli -c -h 192.168.6.190 -p 9001
cluster info 显示集群状态
cluster nodes 显示集群节点
此时在设置mm时就可以设置:set name mm
192.168.6.190:9001> set name mm
-> Redirected to slot [5798] located at 192.168.6.190:9002
OK
可分开进行安装。此实验前提是机器上已经装好了redis。若不会安装redis参考 http://blog.csdn.net/linux_newbie_rookie/article/details/78723586
安装redis集群可参考博客:http://www.cnblogs.com/mafly/p/redis_cluster.html
以下安装是伪集群,若安装真正的集群,则在最少3台机器上,搭建为3主3从,只需要在创建集群节点时输入对应的地址即可。
/redis-cluster/bin/redis-trib.rb create --replicas 1 192.168.6.190:9001 192.168.6.190:9002 192.168.6.191:9003 192.168.6.191:9004 192.168.6.192:9005 192.168.6.192:9006
1. 创建文件夹,计划集群中redis节点的端口号为9001-9006,数据存放在端口号/data下。
mkdir /redis-cluster
mkdir -p 9001/data 9002/data 9003/data 9004/data 9005/data 9006/data
2. 复制执行脚本
在 /redis-cluster下创建 bin 文件夹,用来存放集群运行脚本,并把安装好的 Redis 的 src 路径下的运行脚本拷贝过来。
mkdir /redis-cluster/bin
cd /usr/local/redis/src
cp mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server redis-trib.rb /usr/redis-cluster/bin
3. 复制一个新的redis实例
从已经安装好的(/usr/local/redis/)redis中复制一个新实例到9001--9006中
cp /usr/local/redis/* /redis-cluster/9001
修改9001下的redis.conf配置文件:
port 9001(每个节点的端口号)
daemonize yes
bind 192.168.119.131(绑定当前机器 IP)
dir /usr/local/redis-cluster/9001/data/(数据文件存放位置)
pidfile /var/run/redis_9001.pid(pid 9001和port要对应)
cluster-enabled yes(启动集群模式)
cluster-config-file nodes9001.conf(9001和port要对应)
cluster-node-timeout 15000
appendonly yes
4. 复制新实例到9002-9006,然后修改配置文件对应的端口号以及相关信息
(可在vim里面:$s###g进行修改,也可以采用下面的sed进行修改)
配置文件修改:
sed -i 's/cluster-config-file nodes-9001.conf/cluster-config-file nodes-9006.conf/g' redis.conf
sed -i 's/\/var\/run\/redis_9001.pid/\/var\/run\/redis_9006.pid/g' redis.conf
sed -i 's/logfile ""/logfile "\/redis-cluster\/9006\/log"/g' redis.conf
sed -i 's/\/redis-cluster\/9001\/data\//\/redis-cluster\/9006\/data\//g' redis.conf
sed -i 's/port 9001/port 9006/g' redis.conf
5. 启动9001-9006的所有节点。
/usr/local/bin/redis-server /redis-cluster/9001/redis.conf
...
...
...
5. 找个节点进行测试
/redis-cluster/bin/redis-cli -h 192.168.119.131 -p 9001
keys *
set name mm
报错:(error) CLUSTERDOWN Hash slot not served(不提供集群的散列槽)
原因:虽然配置启动了redis集群服务,但是还不在一个集群中,互相不能发现,没有可存储的位置,就是slot(槽)。
6. 安装集群所需软件
yum install -y ruby
gem install redis
报错:
ERROR: Error installing redis:
redis requires Ruby version >= 2.2.2.2
原因:Centos7yum安装的ruby版本为2.2.2.2,但是安装redis时要求最低为2.2.2.2,自己进行源码编译安装依然还是报错,
解决方法用rvm来更新ruby
参考博客:http://blog.csdn.net/FengYe_YuLu/article/details/77628094
出来这样即为成功
[root@bogon test]# gem install redis
Successfully installed redis-3.0.0
Parsing documentation for redis-3.0.0
Installing ri documentation for redis-3.0.0
Done installing documentation for redis after 1 seconds
1 gem installed
7. /redis-cluster/bin/redis-trib.rb create --replicas 1 192.168.6.190:9001 192.168.6.190:9002 192.168.6.190:9003 192.168.6.190:9004 192.168.6.190:9005 192.168.6.190:9006
成功则会出来3主3从,有系统自动分配
Using 3 masters:
192.168.6.190:9001
192.168.6.190:9002
192.168.6.190:9003
上面命令解释:调用 ruby 命令来进行创建集群,--replicas 1 表示主从复制比例为 1:1,即一个主节点对应一个从节点;然后,默认给我们分配好了每个主节点和对应从节点服务,
以及 solt 的大小,因为在 Redis 集群中有且仅有 16383 个 solt ,默认情况会给我们平均分配,当然你可以指定,后续的增减节点也可以重新分配。
8. 做到以上则代表redis集群搭建成功,可以在验证下:
redis-cli -c -h 192.168.6.190 -p 9001
cluster info 显示集群状态
cluster nodes 显示集群节点
此时在设置mm时就可以设置:set name mm
192.168.6.190:9001> set name mm
-> Redirected to slot [5798] located at 192.168.6.190:9002
OK
相关文章推荐
- Redis单机版和集群版的安装和部署
- redis3.0.5集群部署安装详细步骤
- Redis单台的安装部署及集群部署
- Redis集群安装部署
- Redis3.0--集群安装部署
- redis集群部署rvm安装问题
- Redis3.0--集群安装部署
- redis4.0.1集群安装部署
- Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)
- 1--redis3.0.5集群部署安装详细步骤
- linux下redis 3.2.1双节点集群安装部署
- redis4.0.1集群安装部署
- redis3.2.1集群安装部署
- redis3.0集群安装部署
- Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)
- redis-3.2.8-Sentinel集群安装和部署
- Centos 安装部署redis集群 及 jedis连接集群遇到的问题
- redis系列(1)之安装和集群部署
- Linux下Redis集群安装部署及使用详解
- Redis安装与集群部署