Redis集群的安装测试(伪分布模式 - 主从复制)
想跑一下Redis集群,但是没有那么多服务器,所以使用伪分布式模式,模拟一下,记录一下安装过程。
软件: redis-3.0.3.tar.gz
集群正常工作至少需要3个主节点(本示例创建6个节点,3主3从节点)
安装前提,要有ruby、rubygems环境,先安装一下:
#安装ruby
yum --nogpgcheck -y install ruby
yum --nogpgcheck -y install ruby-devel.x86_64 #安装rubygem
yum --nogpgcheck -y install rubygems #安装Ruby的redis接口gem-redis
安装Redis软件
#进入安装目录
cd /usr/local/
rm -rf redis
rm -rf redis-3.0. #解压
tar -zxvf redis-3.0..tar.gz mv redis-3.0. redis #进入源码目录
cd redis #编译安装
make && make install
创建集群的相关配置
#创建集群需要的目录
mkdir -p /usr/local/redis/cluster//
mkdir -p /usr/local/redis/cluster//
mkdir -p /usr/local/redis/cluster//
mkdir -p /usr/local/redis/cluster//
mkdir -p /usr/local/redis/cluster//
mkdir -p /usr/local/redis/cluster// #修改配置文件redis.conf
#cp /usr/local/redis/redis.conf /usr/local/redis/cluster//redis.conf
#cp /usr/local/redis/redis.conf /usr/local/redis/cluster//redis.conf
#cp /usr/local/redis/redis.conf /usr/local/redis/cluster//redis.conf
#cp /usr/local/redis/redis.conf /usr/local/redis/cluster//redis.conf
#cp /usr/local/redis/redis.conf /usr/local/redis/cluster//redis.conf
#cp /usr/local/redis/redis.conf /usr/local/redis/cluster//redis.conf
配置文件示例:
daemonize no
pidfile /var/run/redis.pid #修改端口
port tcp-backlog
timeout
tcp-keepalive
loglevel notice
logfile ""
databases
save
save
save
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir ./
slave-serve-stale-data yes
slave-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay
repl-disable-tcp-nodelay no
slave-priority #修改为yes
appendonly yes appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
lua-time-limit
slowlog-log-slower-than
slowlog-max-len
latency-monitor-threshold
notify-keyspace-events ""
hash-max-ziplist-entries
hash-max-ziplist-value
list-max-ziplist-entries
list-max-ziplist-value
set-max-intset-entries
zset-max-ziplist-entries
zset-max-ziplist-value
hll-sparse-max-bytes
activerehashing yes
client-output-buffer-limit normal
client-output-buffer-limit slave 256mb 64mb
client-output-buffer-limit pubsub 32mb 8mb
hz
aof-rewrite-incremental-fsync yes
#=========================新增===============================
daemonize yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout
#========================================================
启动Redis实例:
#分别启动这6个redis实例(此时,节点均以Redis Cluster的方式运行,但并没有自动构建集群,因为还处于“我不认识你,你不属于我”的状态,它们每个都是孤零零的Redis节点,或者说只包含了一个节点的集群)
cd /usr/local/redis/cluster/ && redis-server redis.conf > redis.log >& & cd /usr/local/redis/cluster/ && redis-server redis.conf > redis.log >& & cd /usr/local/redis/cluster/ && redis-server redis.conf > redis.log >& & cd /usr/local/redis/cluster/ && redis-server redis.conf > redis.log >& & cd /usr/local/redis/cluster/ && redis-server redis.conf > redis.log >& & cd /usr/local/redis/cluster/ && redis-server redis.conf > redis.log >& &
##启动之后使用命令查看redis的启动情况
ps -ef|grep redis
创建集群,让上面的实例互相通讯
#创建集群,让上面的实例互相通讯( 表示为每个master分配一个salve)
/usr/local/redis/src/redis-trib.rb create --replicas \
127.0.0.1: \
127.0.0.1: \
127.0.0.1: \
127.0.0.1: \
127.0.0.1: \
127.0.0.1:
集群创建完成,可以使用下面的命令查看相关信息:
#查看集群目前状况
redis-cli -c -p #打印集群的信息
cluster info #列出集群当前已知的所有节点(node),以及这些节点的相关信息。
cluster nodes
输出的信息:
127.0.0.1: master - connected -
127.0.0.1: master - connected -
127.0.0.1: myself,master - connected -
127.0.0.1: slave 2566ea486fc30c911aafaf1b71130fd24a38dba9 connected
127.0.0.1: slave edea1e50bd224c6895b1904bce79e83fa07d6017 connected
127.0.0.1: slave ab06e033698627ce0ecd4c8c645585a1ae70cc84 connected
从上面的信息可以明显看到哪些是主节点、从节点。
#将节点的配置文件保存到硬盘里
cluster saveconfig
#------------------------测试-----------------------------------
#连接端口(可以使用其他端口测试16001 -> 16006)
redis-cli -c -p 16001
127.0.0.1:16001> set key001 v001
127.0.0.1:16001> get key001
正常输出信息的话,集群建立成功,集群搭建完成。
祝好运!!
Redis集群的安装测试(伪分布模式 - 主从复制)的更多相关文章
- Dubbo入门到精通学习笔记(十五):Redis集群的安装(Redis3+CentOS)、Redis集群的高可用测试(含Jedis客户端的使用)、Redis集群的扩展测试
文章目录 Redis集群的安装(Redis3+CentOS) 参考文档 Redis 集群介绍.特性.规范等(可看提供的参考文档+视频解说) Redis 集群的安装(Redis3.0.3 + CentO ...
- Redis 集群的安装
Redis 集群介绍.特性.规范等Redis 集群的安装(Redis3.0.3 + CentOS6.6_x64)要让 Redis3.0 集群正常工作至少需要 3 个 Master 节点,要想实现高可用 ...
- Redis集群的使用测试(Jedis客户端的使用)
Redis集群的使用测试(Jedis客户端的使用)1.Jedis客户端建议升级到最新版(当前为2.7.3),这样对3.0.x集群有比较好的支持.https://github.com/xetorthio ...
- redis集群离线安装
环境准备: redis-4.0.7.tar.gz redis的安装包 Ruby环境(集群搭建需要用ruby创建, ruby环境在2.2以上.) rubygems-2.7.4.tgz 和 redis-3 ...
- redis 集群模式安装
概念 Redis集群提供一种方式自动将数据分布在多个Redis节点上. 每个Redis集群中的节点都需要打开两个TCP连接.一个连接用于正常的给Client提供服务,比如6379,还有一个额外的端口( ...
- Mac 下,Redis(集群)的安装和配置
1. Redis 安装步骤 1. 到github下载redis,我下载的是3.0.4 下载地址:GitHub 2. 将下载下来的redis-3.0.4.tar.gz拷贝到 /usr/local 目录下 ...
- Centos7搭建redis集群及安装sentinel
准备三个节点,系统版本为CentOS7.3 11.0.8.15 master 11.0.8.16 slave01 11.0.8.17 slave02 1.安装redis # yum install - ...
- Redis集群的安装和使用
- 离线安装redis集群
Step0:redis集群组件需求 Step1:离线安装ruby Step2:离线安装rubygems Step3:安装rubygems的 redis api Step4:离线安装tcl 8.6 St ...
随机推荐
- [转]MinGW编译wxWidgets问题
其实利用MinGW编译wxWidgets是一件挺简单的事情,但是最近在编译的时候遇到一些问题,并找到解决方案,因此在此分享一下个人经验.编译出错的原因是由于安装了MSYS的缘故. 错误信息类似于如 ...
- Percona-Toolkit学习之安装和配置
http://blog.chinaunix.net/uid-26446098-id-3390779.html
- c#面试3(选择题)
1.下列有关基本类的大小不正确的是 A.int类型是4个字节 B.bool类型是1个字节 C.long类型是8个字节 D.char类型是一个字节 3.有关数组说法不正确的是 A.数组的内存是分配在栈中 ...
- Webstorm实时编译SASS和LESS
Webstorm自带一个File Watchers功能,设置一下,即可实时编译SASS,LESS等 菜单:File->Settings->左栏Tools下的File Watchers,按右 ...
- Android学习之Http使用Post方式进行数据提交(普通数据和Json数据)
转自:http://blog.csdn.net/wulianghuan/article/details/8626551 我们知道通过Get方式提交的数据是作为Url地址的一部分进行提交,而且对字节数的 ...
- 替换Android系统镜像system.img的方法
之前改动了Android的系统源代码的framework层代码,定制ROM.通过make之后会生成三个镜像文件userdata.img.system.img.ramdisk.img三个文件.这个时候我 ...
- VC获得控制台HWND GetConsoleHwnd
HWND GetConsoleHwnd(void) { #define MY_BUFSIZE 1024 // Buffer size for console window titles. HWND h ...
- Python学习(四)数据结构 —— set frozenset
集合类型 set frozenset 赋值及去重 set 是一个无序不重复元素集,还有个frozenset 类型(顾明思议,就是不可改变元素的集合): 基本功能包括关系测试和消除重复元素:set支持 ...
- 【云计算】Docker容器不能修改hosts文件怎么解决?
参考资料: http://bbs.csdn.net/topics/390871429 http://tieba.baidu.com/p/4295556808 http://stackoverflow. ...
- [转]Clean Code Principles: Be a Better Programmer
原文:https://www.webcodegeeks.com/web-development/clean-code-principles-better-programmer/ ----------- ...