redis多机集群部署文档
redis多机集群部署文档(centos6.2)
(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下)
10.168.32.116:6379
10.168.32.117:6379
10.168.32.118:6379
10.168.32.119:6379
10.168.32.120:6379
10.168.32.121:6379
在安装集群之前,需要在服务器上安装ruby环境,
yum install -y ruby rubygems
gem install redis
下载redis版本,
#git clone https://github.com/antirez/redis.git
#mv redis /usr/local/redis
#cd /usr/local/redis
#make && make install
修改配置集群需要的基本配置,其余部分,根据实际需要配置
#vi /usr/local/redis/redis.conf
bind 10.168.32.116
port 6379
daemonize yes
cluster-enabled yes
cluster-config-file nodes.conf
appendonly yes
修改完这几行,把redis.conf分发到其余的服务器,所有服务器的配置可以完全一致,bind是主机ip(如果是在同一台服务器进行实验,需要修改port,每个redis使用独立的端口)
配置同步之后,启动所有服务器的redis
redis-server /usr/local/redis/redis.conf
执行redis的创建集群命令创建集群:
#./redis-trib.rb create --replicas 1 10.168.32.116:6379 10.168.32.117:6379 10.168.32.118:6379 10.168.32.119:6379 10.168.32.120:6379 10.168.32.121:6379
>>> Creating cluster
Connecting to node 10.168.32.116:6379: OK
Connecting to node 10.168.32.117:6379: OK
Connecting to node 10.168.32.118:6379: OK
Connecting to node 10.168.32.119:6379: OK
Connecting to node 10.168.32.120:6379: OK
Connecting to node 10.168.32.121:6379: OK
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
10.168.32.121:6379
10.168.32.120:6379
10.168.32.119:6379
Adding replica 10.168.32.118:6379 to 10.168.32.121:6379
Adding replica 10.168.32.117:6379 to 10.168.32.120:6379
Adding replica 10.168.32.116:6379 to 10.168.32.119:6379
S: f3314ecda2ef4ea0ec140e06de3e4bf656a5e71b 10.168.32.116:6379
replicates a5a22ba976c05b1d495812241a8dd10a5d4a5b42
S: 314f957e1021b0c262e635ad4feeb340dfe5955c 10.168.32.117:6379
replicates 9880ecc98cde59e0d6341ba7c54bbcae9b27c877
S: 07634642c88fdf1b886d3db87dedc4b9857fce7c 10.168.32.118:6379
replicates b7f33a1b733fe4a51447a788e334fab625a984bc
M: a5a22ba976c05b1d495812241a8dd10a5d4a5b42 10.168.32.119:6379
slots:10923-16383 (5461 slots) master
M: 9880ecc98cde59e0d6341ba7c54bbcae9b27c877 10.168.32.120:6379
slots:5461-10922 (5462 slots) master
M: b7f33a1b733fe4a51447a788e334fab625a984bc 10.168.32.121:6379
slots:0-5460 (5461 slots) master
Can I set the above configuration? (type 'yes' to accept): yes 此次输入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 10.168.32.116:6379)
M: f3314ecda2ef4ea0ec140e06de3e4bf656a5e71b 10.168.32.116:6379
slots: (0 slots) master
replicates a5a22ba976c05b1d495812241a8dd10a5d4a5b42
M: 314f957e1021b0c262e635ad4feeb340dfe5955c 10.168.32.117:6379
slots: (0 slots) master
replicates 9880ecc98cde59e0d6341ba7c54bbcae9b27c877
M: 07634642c88fdf1b886d3db87dedc4b9857fce7c 10.168.32.118:6379
slots: (0 slots) master
replicates b7f33a1b733fe4a51447a788e334fab625a984bc
M: a5a22ba976c05b1d495812241a8dd10a5d4a5b42 10.168.32.119:6379
slots:10923-16383 (5461 slots) master
M: 9880ecc98cde59e0d6341ba7c54bbcae9b27c877 10.168.32.120:6379
slots:5461-10922 (5462 slots) master
M: b7f33a1b733fe4a51447a788e334fab625a984bc 10.168.32.121:6379
slots:0-5460 (5461 slots) master
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
至此redis集群即搭建成功!
执行命令redis-cli -c -p 6379 cluster nodes,查看集群节点
[root@puppetmaster1 src]# redis-cli -c -h 10.168.32.116 -p 6379 cluster nodes
314f957e1021b0c262e635ad4feeb340dfe5955c 10.168.32.117:6379 slave 9880ecc98cde59e0d6341ba7c54bbcae9b27c877 0 1425114266105 5 connected
a5a22ba976c05b1d495812241a8dd10a5d4a5b42 10.168.32.119:6379 master - 0 1425114267205 4 connected 10923-16383
07634642c88fdf1b886d3db87dedc4b9857fce7c 10.168.32.118:6379 slave b7f33a1b733fe4a51447a788e334fab625a984bc 0 1425114265605 6 connected
b7f33a1b733fe4a51447a788e334fab625a984bc 10.168.32.121:6379 master - 0 1425114266205 6 connected 0-5460
f3314ecda2ef4ea0ec140e06de3e4bf656a5e71b 10.168.32.116:6379 myself,slave a5a22ba976c05b1d495812241a8dd10a5d4a5b42 0 0 1 connected
9880ecc98cde59e0d6341ba7c54bbcae9b27c877 10.168.32.120:6379 master - 0 1425114266505 5 connected 5461-10922
7:使用redis-cli命令进入集群环境
|
redis-cli -c -h 10.168.32.117 -p 6379 |
Redis集群操作节点
1:新增一个节点,IP为10.168.32.122,端口为6379
首先把需要添加的节点启动
|
cd /usr/local/redis/ #vi /usr/local/redis/redis.conf bind 10.168.32.122 port 6379 启动redis redis-server /usr/local/redis/redis.conf 将新节点添加到集群 |
cd /usr/local/redis/src
[root@puppetmaster1 src]# ./redis-trib.rb add-node 10.168.32.122:6379 10.168.32.116:6379
>>> Adding node 10.168.32.122:6379 to cluster 10.168.32.116:6379
Connecting to node 10.168.32.116:6379: OK
Connecting to node 10.168.32.117:6379: OK
Connecting to node 10.168.32.119:6379: OK
Connecting to node 10.168.32.118:6379: OK
Connecting to node 10.168.32.121:6379: OK
Connecting to node 10.168.32.120:6379: OK
>>> Performing Cluster Check (using node 10.168.32.116:6379)
S: f3314ecda2ef4ea0ec140e06de3e4bf656a5e71b 10.168.32.116:6379
slots: (0 slots) slave
replicates a5a22ba976c05b1d495812241a8dd10a5d4a5b42
S: 314f957e1021b0c262e635ad4feeb340dfe5955c 10.168.32.117:6379
slots: (0 slots) slave
replicates 9880ecc98cde59e0d6341ba7c54bbcae9b27c877
M: a5a22ba976c05b1d495812241a8dd10a5d4a5b42 10.168.32.119:6379
slots:10923-16383 (5461 slots) master
1 additional replica(s)
S: 07634642c88fdf1b886d3db87dedc4b9857fce7c 10.168.32.118:6379
slots: (0 slots) slave
replicates b7f33a1b733fe4a51447a788e334fab625a984bc
M: b7f33a1b733fe4a51447a788e334fab625a984bc 10.168.32.121:6379
slots:0-5460 (5461 slots) master
1 additional replica(s)
M: 9880ecc98cde59e0d6341ba7c54bbcae9b27c877 10.168.32.120:6379
slots:5461-10922 (5462 slots) master
1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
Connecting to node 10.168.32.122:6379: OK
>>> Send CLUSTER MEET to node 10.168.32.122:6379 to make it join the cluster.
[OK] New node added correctly.
查看集群节点
[root@puppetmaster1 src]# redis-cli -c -h 10.168.32.116 -p 6379 cluster nodes
314f957e1021b0c262e635ad4feeb340dfe5955c 10.168.32.117:6379 slave 9880ecc98cde59e0d6341ba7c54bbcae9b27c877 0 1425114360107 5 connected
38c2f060533c24698334a16b26f678ae6bd7ec41 10.168.32.122:6379 master - 0 1425114361107 0 connected
a5a22ba976c05b1d495812241a8dd10a5d4a5b42 10.168.32.119:6379 master - 0 1425114361507 4 connected 10923-16383
07634642c88fdf1b886d3db87dedc4b9857fce7c 10.168.32.118:6379 slave b7f33a1b733fe4a51447a788e334fab625a984bc 0 1425114362507 6 connected
b7f33a1b733fe4a51447a788e334fab625a984bc 10.168.32.121:6379 master - 0 1425114360507 6 connected 0-5460
f3314ecda2ef4ea0ec140e06de3e4bf656a5e71b 10.168.32.116:6379 myself,slave a5a22ba976c05b1d495812241a8dd10a5d4a5b42 0 0 1 connected
9880ecc98cde59e0d6341ba7c54bbcae9b27c877 10.168.32.120:6379 master - 0 1425114362107 5 connected 5461-10922
删除redis集群节点
redis-trib.rb del-node host:port node_id
./redis-trib.rb del-node 10.168.32.122:6379 38c2f060533c24698334a16b26f678ae6bd7ec41
redis多机集群部署文档的更多相关文章
- Redis集群部署文档(Ubuntu15.10系统)
Redis集群部署文档(Ubuntu15.10系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如 ...
- HP DL160 Gen9服务器集群部署文档
HP DL160 Gen9服务器集群部署文档 硬件配置=======================================================Server Memo ...
- Apache ZooKeeper 单机、集群部署文档
简介: Apache ZooKeeper 是一个分布式应用的高性能协调服务,功能包括:配置维护.统一命名.状态同步.集群管理.仲裁选举等. 下载地址:http://apache.fayea.com/z ...
- kafka集群部署文档(转载)
原文链接:http://www.cnblogs.com/luotianshuai/p/5206662.html Kafka初识 1.Kafka使用背景 在我们大量使用分布式数据库.分布式计算集群的时候 ...
- 二进制搭建一个完整的K8S集群部署文档
服务器规划 角色 IP 组件 k8s-master1 192.168.31.63 kube-apiserver kube-controller-manager kube-scheduler etcd ...
- 从零开始,无DNS vcenter 6.7 vmotion热迁移,存储集群部署文档。
1,环境准备 准备:Vmware workstation环境 IP地址段规划 ESXI主机IP地址段 192.168.197.4-192.168.197.10 Vcenter Server集群IP地址 ...
- Apache Hadoop 集群安装文档
简介: Apache Hadoop 集群安装文档 软件:jdk-8u111-linux-x64.rpm.hadoop-2.8.0.tar.gz http://www.apache.org/dyn/cl ...
- 面试连环炮系列(二):你们的项目Redis做了集群部署吗
你们的项目Redis做了集群部署吗? 我们有大量数据需要缓存,而单实例的容量毕竟是有限的,于是做了Redis集群部署. 采取的方案是什么,Codis还是Redis Cluster,为什么要选择这个方案 ...
- kafka集群搭建文档
kafka集群搭建文档 一. 下载解压 从官网下载Kafka,下载地址http://kafka.apache.org/downloads.html 注意这里最好下载scala2.10版本的kafka, ...
随机推荐
- springboot工程的结构
1 springboot的工程结构是什么 就是我们组织springboot工程时遵循的代码的目录结构. 2 spring initializr创建的工程的目录结构 源码目录:src/main/java ...
- UITableview刷新时界面“乱跑”现象
Self-Sizing在iOS11下是默认开启的,Headers, footers, and cells都默认开启Self-Sizing,所有estimated 高度默认值从iOS11之前的 0 改变 ...
- Alamofire 小试牛刀
1.定义请求头 let headers: HTTPHeaders = [ "token": "W4SIjb3gHgJqgG8LRWj0jM==", " ...
- height为auto, 滚动条出现时, 使页面不跳动
<style> html { margin-left: calc(100vw - 100%); } </style> ;
- JavaScript 中 onload 事件绑定多个方法的优化建议
页面加载完毕时会触发 onload 事件.基于内容(HTML)要与行为(JavaScript)分离的编码思想,我们需要将一些对页面的初始化操作写在方法内,并通过window.onload = func ...
- zip filter map 列表生成器
map map(function, list): 就是对list 中的每一个元素都调用function函数进行处理,返回一个map的对象 list一下就可以生成一个列表 或者for循环该对象就可以输出 ...
- PHP网页导出Word文档的方法分离
今天要探讨的是PHP网页导出Word文档的方法,使用其他语言的朋友也可以参考,因为原理是差不多的. 原理 一般,有2种方法可以导出doc文档,一种是使用com,并且作为php的一个扩展库安装到服务器上 ...
- MySQL查看和修改字符集的方法
一.查看字符集 1.查看MYSQL数据库服务器和数据库字符集 方法一:show variables like '%character%';方法二:show variables like 'collat ...
- web开发工具网站
配色 http://peise.net/tools/web/ http://retinaicon.com/ http://flattyshadow.com/ 免费图片网站 https: ...
- IOS NSDate 调整当前时间戳为明天
这个可以根据需要调整 在day month hour minute second 等都行 以下是以当前时间戳为基础,调整时间为明天的零点零时零分零秒 可以根据需要 写成毫秒的 +(NSStri ...