redis-cluster集群安装(基于redis-3.2.10)
上节主要演示了redis单节点的安装部署,对于数据量更大的服务可以安装redis-cluster进行处理
1. 安装ruby
yum install ruby ruby-devel rubygems rpm-build -y
rpm -qa|grep ruby
ruby -v
2.安装redis-cluster
gem install redis --version 3.2.
gem list
3.到redis源码目录找到集群创建工具
/bin/cp /server/tools/redis-3.2./src/redis-trib.rb /usr/local/redis/bin/
4.创建redis-cluster集群节点
(1)创建节点目录,修改配置文件
[root@redis-server tools]# mkdir -p /usr/local/redis/redis-cluster/{7001,7002,7003}
cluster-enabled yes
cluster-config-file /usr/local/redis/redis-cluster//nodes-.conf
cluster-node-timeout
appendonly yes
[root@redis-server tools]# sh -x add_redis-cluster-port_rc.sh
+ echo '------ Start Create redis-cluster ------'
------ Start Create redis-cluster ------
+ redisport1=
+ redisport2=
+ redisport3=
+ redis_path=/usr/local/redis
+ redis_cluster_path=/usr/local/redis/redis-cluster
++ grep -v 127.0.0.1
++ grep -v inet6
++ grep inet
++ awk '{print $2}'
++ /sbin/ifconfig -a
++ tr -d addr:
+ localIP=192.168.1.71
+ '[' -z ']'
+ echo 'The redis-port is 8001'
The redis-port is
+ '[' -z ']'
+ echo 'The redis-port is 8002'
The redis-port is
+ '[' -z ']'
+ echo 'The redis-port is 8003'
The redis-port is
+ echo /usr/local/redis/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
/usr/local/redis/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
+ sleep
+ mkdir -p /usr/local/redis/redis-cluster/ /usr/local/redis/redis-cluster/ /usr/local/redis/redis-cluster/
+ cd /server/tools/
+ /bin/cp democonf_redis-cluster_6379.conf /usr/local/redis/redis-cluster//conf-.conf
+ sed -i s###g /usr/local/redis/redis-cluster//conf-.conf
+ /bin/cp democonf_redis-cluster_6379.conf /usr/local/redis/redis-cluster//conf-.conf
+ sed -i s###g /usr/local/redis/redis-cluster//conf-.conf
+ /bin/cp democonf_redis-cluster_6379.conf /usr/local/redis/redis-cluster//conf-.conf
+ sed -i s###g /usr/local/redis/redis-cluster//conf-.conf
+ tree /usr/local/redis/redis-cluster
/usr/local/redis/redis-cluster
├──
│ └── conf-.conf
├──
│ └── conf-.conf
└──
└── conf-.conf directories, files
+ echo '------ Start redis-cluster nodes ------'
------ Start redis-cluster nodes ------
+ sleep
+ /usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster//conf-.conf
+ /usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster//conf-.conf
+ /usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster//conf-.conf
++ date +%F
+ echo '# redis-cluster-port for 8001,8002,8003 in 2017-09-21'
+ echo '/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/8001/conf-8001.conf'
+ echo '/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/8002/conf-8002.conf'
+ echo '/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/8003/conf-8003.conf'
+ tail - /etc/rc.local
tail: 无法使用 inotify 机制,回归为 polling 机制
# redis-cluster-port for ,, in --
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster//conf-.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster//conf-.conf
/usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster//conf-.conf
+ echo '------ Create redis-cluster ------'
------ Create redis-cluster ------
+ sleep
+ /usr/local/redis/bin/redis-trib.rb create --replicas 192.168.1.71: 192.168.1.71: 192.168.1.71:
>>> Creating cluster
Connecting to node 192.168.1.71:: OK
Connecting to node 192.168.1.71:: OK
Connecting to node 192.168.1.71:: OK
>>> Performing hash slots allocation on nodes...
Using masters:
192.168.1.71:
192.168.1.71:
192.168.1.71:
M: 97ca887459268c2effca0af3263dcd00e83cae37 192.168.1.71:
slots:- ( slots) master
M: e43cda13f069241a25786bb4916e21e7e8a5e1d5 192.168.1.71:
slots:- ( slots) master
M: 53383a751348ed8bd2ec88fd487ada344c7a7bc8 192.168.1.71:
slots:- ( slots) master
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join.
>>> Performing Cluster Check (using node 192.168.1.71:)
M: 97ca887459268c2effca0af3263dcd00e83cae37 192.168.1.71:
slots:- ( slots) master
M: e43cda13f069241a25786bb4916e21e7e8a5e1d5 192.168.1.71:
slots:- ( slots) master
M: 53383a751348ed8bd2ec88fd487ada344c7a7bc8 192.168.1.71:
slots:- ( slots) master
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All slots covered.
+ echo '------ Test redis-cluster ------'
------ Test redis-cluster ------
+ sleep
+ grep --color=auto redis-server
+ netstat -anptl
tcp 0.0.0.0: 0.0.0.0:* LISTEN /redis-server
tcp 0.0.0.0: 0.0.0.0:* LISTEN /redis-server
tcp 0.0.0.0: 0.0.0.0:* LISTEN /redis-server
tcp 0.0.0.0: 0.0.0.0:* LISTEN /redis-server
tcp 0.0.0.0: 0.0.0.0:* LISTEN /redis-server
tcp 0.0.0.0: 0.0.0.0:* LISTEN /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
tcp 192.168.1.71: 192.168.1.71: ESTABLISHED /redis-server
+ /usr/local/redis/bin/redis-cli -c -p
127.0.0.1:> exit
+ echo '------ Create redis-cluster is OK! ------'
------ Create redis-cluster is OK! ------
[root@zstest1 tools]#
redis-cluster集群安装(基于redis-3.2.10)的更多相关文章
- redis cluster 集群 安装 配置 详解
redis cluster 集群 安装 配置 详解 张映 发表于 2015-05-01 分类目录: nosql 标签:cluster, redis, 安装, 配置, 集群 Redis 集群是一个提供在 ...
- Redis Cluster集群知识学习总结
Redis集群解决方案有两个: 1) Twemproxy: 这是Twitter推出的解决方案,简单的说就是上层加个代理负责分发,属于client端集群方案,目前很多应用者都在采用的解决方案.Twem ...
- centos6下redis cluster集群部署过程
一般来说,redis主从和mysql主从目的差不多,但redis主从配置很简单,主要在从节点配置文件指定主节点ip和端口,比如:slaveof 192.168.10.10 6379,然后启动主从,主从 ...
- 深入分析redis cluster 集群
深入分析redis cluster 集群安装配置详解 下面小编来为各位介绍一篇深入分析redis cluster 集群安装配置详解,如果你希望做数据库集群就可以来看看此文章的哦. http://rub ...
- CentOS7 安装Redis Cluster集群
上一篇中已经讲到了如何安装单击版Redis,这一篇我们来说下如何安装Cluster,关于哨兵模式这里我就不写文章安装了,有兴趣的同学可以自己去研究,哨兵模式可以在主从模式下在创建三台机器的哨兵集群监控 ...
- 【原创】强撸基于 .NET 的 Redis Cluster 集群访问组件
Hello 大家好,我是TANZAME,我们又见面了.今天我们来聊聊怎么手撸一个 Redis Cluster 集群客户端,纯手工有干货,您细品. 随着业务增长,线上环境的QPS暴增,自然而然将当前的单 ...
- Redis Cluster集群搭建与应用
1.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper,但从redis 3.0之后版本支持redis-cluster集群,redis-cluster采用无中心结 ...
- Redis cluster集群:原理及搭建
Redis cluster集群:原理及搭建 2018年03月19日 16:00:55 阅读数:6120 1.为什么使用redis? redis是一种典型的no-sql 即非关系数据库 像python的 ...
- Redis Cluster集群搭建<原>
一.环境配置 一台window 7上安装虚拟机,虚拟机中安装的是centos系统. 二.目标 Redis集群搭建的方式有多种,根据集群逻辑的位置,大致可以分为三大类:基于客户端分片的Redis ...
- redis cluster 集群畅谈(三) 之 水平扩容、slave自动化迁移
上一篇http://www.cnblogs.com/qinyujie/p/9029522.html, 主要讲解 实验多master写入.读写分离.实验自动故障切换(高可用性),那么本篇我们就来聊了聊r ...
随机推荐
- 单机部署PXC
在一台机器上安装PXC Linux:centos 7 IP:192.168.30.221 PXC版本:Percona-XtraDB-Cluster-5.7.17-rel13-29.20.3.L ...
- Django 模型(数据库)
Django 模型(数据库) ) email = models.EmailField() memo = models.TextField() def __unico ...
- cocos代码研究(24)Widget子类PageView学习笔记
理论基础 PageView类又称Layout的管理器,可以让用户在多个Layout之间左右或者上下切换显示,继承自 Layout . 代码实践 static PageView * create ()创 ...
- devise修改密码
https://ruby-china.org/topics/1314 password/edit不是给你直接改密码用的 这个是忘记密码后,发送重置密码的邮件到你邮箱,同时生成一个token 然后你点那 ...
- poj1981 Circle and Points
地址:http://poj.org/problem?id=1981 题目: Circle and Points Time Limit: 5000MS Memory Limit: 30000K To ...
- uva1391 2-SAT 问题
题意在大白书上. 有3 种工作 abc 大于等于平均年龄的可以去做a c 工作, 小于平均年龄的可以去做 bc , 同样转化为2 -sat 去做, 因为对于每个人也只有2 种情况可以作为选择 #inc ...
- ng-深度学习-课程笔记-15: 循环序列模型(Week1)
1 数学符号(Notation) $ x^{<1>}, x^{<2>}, ..., x^{<t>}, ..., x^{<q>} $ 表示一段输入序列x, ...
- 478. Generate Random Point in a Circle
1. 问题 给定一个圆的半径和圆心坐标,生成圆内点的坐标. 2. 思路 简单说 (1)在圆内随机取点不好做,但是如果画出这个圆的外接正方形,在正方形里面采样就好做了. (2)取两个random确定正方 ...
- Linux学习笔记之Linux计划任务Crontab
0x00 cron 简介 cron 是 UNIX, SOLARIS,LINUX 下的一个十分有用的工具.通过 cron 脚本能使计划任务定期地在系统后台自动运行. 0x01 cron 命令 cront ...
- Vim编程常用命令
1.全文覆盖 程序发布到测试.开发环境后,经常需要远程登录Linux更改代码.平时在IDE中直接Ctrl+A.Ctrl+V覆盖整个文档,在vim中需要这样做 vim filename gg --跳到首 ...