Linux - redis-cluster搭建
Linux - redis-cluster搭建
1.准备6个数据库节点,也就是6个redis实例,也就是6个配置文件
配置文件如下
redis-7000.conf redis-7002.conf redis-7004.conf
redis-7001.conf redis-7003.conf redis-7005.conf
配置文件,内容如下
port 7000
daemonize yes
dir "/opt/data"
logfile "7000.log"
dbfilename "dump-7000.rdb"
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-require-full-coverage no
分别准备6个redis节点,通过sed命令快速创建,仅仅是端口的区分
[root@master clusterredis]# sed "s/7000/7001/g" redis-7000.conf > redis-7001.conf
[root@master clusterredis]#
[root@master clusterredis]# sed "s/7000/7002/g" redis-7000.conf > redis-7002.conf
[root@master clusterredis]# sed "s/7000/7003/g" redis-7000.conf > redis-7003.conf
[root@master clusterredis]#
[root@master clusterredis]#
[root@master clusterredis]#
[root@master clusterredis]# sed "s/7000/7004/g" redis-7000.conf > redis-7004.conf
[root@master clusterredis]# sed "s/7000/7005/g" redis-7000.conf > redis-7005.conf
2.分别启动6个数据库实例
root@master clusterredis]# redis-server redis-7000.conf
[root@master clusterredis]# redis-server redis-7001.conf
[root@master clusterredis]# redis-server redis-7002.conf
[root@master clusterredis]# redis-server redis-7003.conf
[root@master clusterredis]# redis-server redis-7004.conf
[root@master clusterredis]# redis-server redis-7005.conf
3.开始分配redis数据库的槽位, 通过ruby脚本,自动化分配槽位
4.配置ruby的解释器环境
1.下载源码
wget https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.gz
2.释放编译文件
#安装ruby
tar -xvf ruby-2.3.1.tar.gz
./configure --prefix=/opt/ruby/
make && make install
3.配置ruby的环境变量
/opt/ruby/bin
source /etc/profile
vim /etc/profile
4.下载ruby操作redis的模块
wget http://rubygems.org/downloads/redis-3.3.0.gem
5.通过ruby的包管理工具安装它
gem install -l redis-3.3.0.gem
6.通过ruby的脚本,自动化分配redis虚拟槽位,开启集群功能
/opt/redis-4.0.10/src/redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
7.验证集群是否开启
redis-cli -p 7000 cluster info
如下:
[root@yugo /opt/redis/src 18:42:14]#redis-cli -p 7000 cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_ping_sent:10468
cluster_stats_messages_pong_sent:10558
cluster_stats_messages_sent:21026
cluster_stats_messages_ping_received:10553
cluster_stats_messages_pong_received:10468
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:21026
8.登陆redis集群,写入数据,查看数据流向
127.0.0.1:7000> set name chao
-> Redirected to slot [5798] located at 127.0.0.1:7001
OK
127.0.0.1:7001> exit
[root@yugo /opt/redis/src 18:46:07]#redis-cli -c -p 7000
127.0.0.1:7000> ping
PONG
127.0.0.1:7000> keys *
(empty list or set)
127.0.0.1:7000> get name
-> Redirected to slot [5798] located at 127.0.0.1:7001
"chao"
数据会在集群中,在节点间重定向
9.redis集群到此完毕
Linux - redis-cluster搭建的更多相关文章
- Redis Cluster搭建方法简介22211111
Redis Cluster搭建方法简介 (2013-05-29 17:08:57) 转载▼ Redis Cluster即Redis的分布式版本,将是Redis继支持Lua脚本之后的又一重磅 ...
- Redis Cluster搭建高可用Redis服务器集群
一.Redis Cluster集群简介 Redis Cluster是Redis官方提供的分布式解决方案,在3.0版本后推出的,有效地解决了Redis分布式的需求,当一个节点挂了可以快速的切换到另一个节 ...
- 最适合新手的Redis Cluster搭建过程
好记性不如烂笔头,记录分片高可用Redis Cluster的搭建过程 Redis集群演进过程 Redis单节点 主从复制: 复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复. 故 ...
- Redis(1.12)Redis cluster搭建常见错误
[1]gem install redis 报错 redis-cluster安装需要通过gem install redis来安装相关依赖.否则报错.通过gem install redis执行后会出现两个 ...
- redis cluster搭建
一 .准备文件: Ruby :http://www.ruby-lang.org/en/downloads/ redis-3.0.5.tar.gz Redis:http://www.redis.c ...
- Linux redis服务搭建记录
Redis的安装 1.安装redis需要C语言的编译环境 //gcc在线安装 yum install gcc-c++ 如果提示 /var/run/yum.pid 已被锁定,解决办法,删除yum.pid ...
- Ubuntu 16.04在搭建Redis Cluster搭建时,使用gem install redis时出现:ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /var/lib/gems/2.3.0 directory.
注意:千万不要使用sudo来执行gem install redis. 解决方法: sudo apt-get update sudo apt-get install git-core curl zlib ...
- redis cluster以及master-slave在windows下环境搭建
一.redis cluster环境搭建: 1.了解Redis Cluster原理: 详细了解可参考:http://doc.redisfans.com/topic/cluster-tutorial.ht ...
- Redis Cluster 3.0搭建与使用
Redis Cluster终于出了Stable,这让人很是激动,等Stable很久了,所以还是先玩玩. 一. 集群简单概念. Redis 集群是一个可以在多个 Redis 节点之间进行数据共享的设施( ...
- Redis Cluster 介绍与搭建
转:http://blog.csdn.net/men_wen/article/details/72853078 Redis Cluster 介绍与搭建 1. Redis Cluster介绍 Redis ...
随机推荐
- 某Android手游的lua源码逆向分析与还原
近日分析某一款Android上面的手游,反编译后再起asset目录下可以看到加密过的脚本,lib目录下发现lua的so 初步怀疑其使用lua脚本实现的 解密函数定位 动态跟踪解密函数流程 静态分析解密 ...
- 配置远程连接mysql数据库 Connect to remote mysql database
设有本地机器(local machine), ip地址为localip 远程机器(remote machine), ip地址remoteip 要通过在local machine的终端连接remote ...
- 解决无线网卡 RTL8723BE ubuntu环境下不稳定情况
jiqing@ThinkPad:~$ lspci | grep -i net 00:19.0 Ethernet controller: Intel Corporation Ethernet Conne ...
- 关于OpenFileDialog的使用(转)
OpenFileDialog控件有以下基本属性 InitialDirectory 对话框的初始目录 Filter 要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.txt|所 ...
- 洛谷 P3398 仓鼠找sugar —— 树链剖分
题目:https://www.luogu.org/problemnew/show/P3398 树链剖分一下,路径就变成线段树上的几个区间: 两条路径相交就是线段树上有区间相交,所以在相应位置打个标记, ...
- Salvation -- ---广搜 + 限定方向 ,
这个欣求 , 在迷宫里密室了方向 , 走过了一个地方 不做标记 还一个劲 , 找不到媳妇不亏 . 这个题 我跳了两个坑 , 1 : 习惯性添加标记走过的 位置 ,导致所有的位置都能 走过一遍 , ...
- ios-判断手机上是否安装了某个App
方法一 1.获取手机中安装的所有App 1.1.runtime中的方法,所以要导入 #include <objc/runtime.h> 1.2.在 AppDel ...
- Log4J2的 PatternLayout
Log4J2 PatternLayout 参考 日志样例 : 2018-10-21 07:30:05,184 INFO - DeviceChannelServiceImpl.java:434[defa ...
- 大数据插入Excel报错处理
发现问题: 最近运行程序时,发现了一个问题,就是在导出excel时,报了一下错误 分析问题: 原来是由于NPOI这个动态库导致的,然后看了下版本,发现是1.2.5.然后百度了下,发现这个版本的NPOI ...
- iOS - UITableView 多选功能实现
:自定义Cell中的代码 #import <UIKit/UIKit.h> @interface TestCell : UITableViewCell @property(nonatomic ...