Redis伪集群
来源:互联网 发布:阿里云深圳节点怎么样 编辑:程序博客网 时间:2024/06/05 19:26
集群正常工作至少需要3个主节点(本示例创建6个节点,3主3从节点)
安装前提,要有ruby、rubygems环境,先安装一下:
#安装rubyyum --nogpgcheck -y install rubyyum --nogpgcheck -y install ruby-devel.x86_64#安装rubygemyum --nogpgcheck -y install rubygems#安装Ruby的redis接口gem-redis
安装Redis软件
#进入安装目录cd /usr/local/rm -rf redisrm -rf redis-3.0.3#解压tar -zxvf redis-3.0.3.tar.gzmv redis-3.0.3 redis#进入源码目录cd redis#编译安装make && make install
创建集群的相关配置
#创建集群需要的目录mkdir -p /usr/local/redis/cluster/16001/mkdir -p /usr/local/redis/cluster/16002/mkdir -p /usr/local/redis/cluster/16003/mkdir -p /usr/local/redis/cluster/16004/mkdir -p /usr/local/redis/cluster/16005/mkdir -p /usr/local/redis/cluster/16006/#修改配置文件redis.conf#cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16001/redis.conf#cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16002/redis.conf#cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16003/redis.conf#cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16004/redis.conf#cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16005/redis.conf#cp /usr/local/redis/redis.conf /usr/local/redis/cluster/16006/redis.conf
配置文件示例:
daemonize nopidfile /var/run/redis.pid#修改端口port 16001tcp-backlog 511timeout 0tcp-keepalive 0loglevel noticelogfile ""databases 16save 900 1save 300 10save 60 10000stop-writes-on-bgsave-error yesrdbcompression yesrdbchecksum yesdbfilename dump.rdbdir ./slave-serve-stale-data yesslave-read-only yesrepl-diskless-sync norepl-diskless-sync-delay 5repl-disable-tcp-nodelay noslave-priority 100#修改为yesappendonly yesappendfilename "appendonly.aof"appendfsync everysecno-appendfsync-on-rewrite noauto-aof-rewrite-percentage 100auto-aof-rewrite-min-size 64mbaof-load-truncated yeslua-time-limit 5000slowlog-log-slower-than 10000slowlog-max-len 128latency-monitor-threshold 0notify-keyspace-events ""hash-max-ziplist-entries 512hash-max-ziplist-value 64list-max-ziplist-entries 512list-max-ziplist-value 64set-max-intset-entries 512zset-max-ziplist-entries 128zset-max-ziplist-value 64hll-sparse-max-bytes 3000activerehashing yesclient-output-buffer-limit normal 0 0 0client-output-buffer-limit slave 256mb 64mb 60client-output-buffer-limit pubsub 32mb 8mb 60hz 10aof-rewrite-incremental-fsync yes#=========================新增===============================daemonize yescluster-enabled yescluster-config-file nodes.confcluster-node-timeout 5000#========================================================
启动Redis实例:
#分别启动这6个redis实例(此时,节点均以Redis Cluster的方式运行,但并没有自动构建集群,因为还处于“我不认识你,你不属于我”的状态,它们每个都是孤零零的Redis节点,或者说只包含了一个节点的集群)cd /usr/local/redis/cluster/16001 && redis-server redis.conf > redis.log 2>&1 &cd /usr/local/redis/cluster/16002 && redis-server redis.conf > redis.log 2>&1 &cd /usr/local/redis/cluster/16003 && redis-server redis.conf > redis.log 2>&1 &cd /usr/local/redis/cluster/16004 && redis-server redis.conf > redis.log 2>&1 &cd /usr/local/redis/cluster/16005 && redis-server redis.conf > redis.log 2>&1 &cd /usr/local/redis/cluster/16006 && redis-server redis.conf > redis.log 2>&1 &
##启动之后使用命令查看redis的启动情况
ps -ef|grep redis
创建集群,让上面的实例互相通讯
#创建集群,让上面的实例互相通讯(1 表示为每个master分配一个salve)/usr/local/redis/src/redis-trib.rb create --replicas 1 \127.0.0.1:16001 \127.0.0.1:16002 \127.0.0.1:16003 \127.0.0.1:16004 \127.0.0.1:16005 \127.0.0.1:16006
集群创建完成,可以使用下面的命令查看相关信息:
#查看集群目前状况redis-cli -c -p 16001#打印集群的信息cluster info#列出集群当前已知的所有节点(node),以及这些节点的相关信息。cluster nodes
输出的信息:
127.0.0.1:16002 master - 0 1439345771781 2 connected 5461-10922127.0.0.1:16003 master - 0 1439345772286 3 connected 10923-16383127.0.0.1:16001 myself,master - 0 0 1 connected 0-5460127.0.0.1:16004 slave 2566ea486fc30c911aafaf1b71130fd24a38dba9 0 1439345772791 4 connected127.0.0.1:16005 slave edea1e50bd224c6895b1904bce79e83fa07d6017 0 1439345772286 5 connected127.0.0.1:16006 slave ab06e033698627ce0ecd4c8c645585a1ae70cc84 0 1439345771276 6 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
正常输出信息的话,集群建立成功,集群搭建完成。
阅读全文
0 0
- redis伪集群搭建
- redis伪集群搭建
- Redis伪集群
- redis伪集群部署
- redis 伪分布式集群搭建
- mac redis 伪分布式集群
- Redis伪集群的搭建
- redis集群的搭建(伪集群)
- centos7下redis伪集群安装
- linux上搭建redis伪集群
- CentOS中搭建Redis伪分布式集群
- redis集群搭建(伪集群为例)
- 【Redis进阶】Redis伪集群搭建与简单应用
- linux redis-3.0.0 伪分布式集群的搭建
- 【Docker】docker创建测试环境的伪分布式Redis集群
- RedHat6.5虚拟机架设Redis和Kafka伪集群
- 在centos上搭建redis集群并附测试(真集群非伪集群)
- Zookeeper,SolrCloud,Redis Cluster三种集群(伪集群)的搭建
- Android开发中遇到的各类问题汇总
- django 入门-安装Django
- hdu6085 Rikka with Candies
- 通过DNS AAAA记录和IPv6地址传输后门有效载荷
- Elven Postman HDU
- Redis伪集群
- 割接—— 业务转移
- tensorflow问题集合
- 经典笔试题 ——判断两个字符串是否为变形词
- Java虚拟机的JVM垃圾回收机制
- 根据当前日期得到前/后n天日期 根据指定日期得到前/后n天日期
- hdoj-1096
- Myeclipse出现Could not create the view: An unexpected exception was thrown.的问题
- 缩放动画源码分析