Redis集群部署文档(Ubuntu15.10系统)
(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下)
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

1:下载redis。官网下载3.0.0版本,之前2.几的版本不支持集群模式
下载地址:http://download.redis.io/releases/redis-3.0.7.tar.gz
2:上传服务器,解压,编译

tar -zxvf redis-3.0.7.tar.gz
mv redis-3.0.7 /usr/local/redis3.0
cd /usr/local/redis3.0
make

之后就生成了 redis-server redis-client 等文件在 src里。

3:创建集群需要的目录

mkdir -p /usr/local/cluster
cd /usr/local/cluster
mkdir 7000
mkdir 7001
mkdir 7002
mkdir 7003
mkdir 7004
mkdir 7005

4:修改配置文件redis.conf
cp /usr/local/redis3.0/redis.conf /usr/local/cluster
vi redis.conf
##修改配置文件中的下面选项

pidfile /var/run/redis.7000.pid #个性化
port 7000 #个性化
daemonize yes
cluster-enabled yes
cluster-config-file nodes.7000.conf #个性化
cluster-node-timeout 5000
appendonly yes
appendfilename "appendonly.7000.aof" #个性化

##修改完redis.conf配置文件中的这些配置项之后把这个配置文件分别拷贝到7000/7001/7002/7003/7004/7005目录下面

cp /usr/local/cluster/redis.conf /usr/local/cluster/7000
cp /usr/local/cluster/redis.conf /usr/local/cluster/7001
cp /usr/local/cluster/redis.conf /usr/local/cluster/7002
cp /usr/local/cluster/redis.conf /usr/local/cluster/7003
cp /usr/local/cluster/redis.conf /usr/local/cluster/7004
cp /usr/local/cluster/redis.conf /usr/local/cluster/7005

##注意:拷贝完成之后要修改7001/7002/7003/7004/7005目录下面redis.conf文件中 标注个性化的 参数,分别改为对应的文件夹的名称

5:分别启动这6个redis实例
vi /usr/local/cluster/redis-start.sh
加入以下内容

#!/bin/sh
/usr/local/redis3.0/src/redis-server /usr/local/cluster/7000/redis.conf &
/usr/local/redis3.0/src/redis-server /usr/local/cluster/7001/redis.conf &
/usr/local/redis3.0/src/redis-server /usr/local/cluster/7002/redis.conf &
/usr/local/redis3.0/src/redis-server /usr/local/cluster/7003/redis.conf &
/usr/local/redis3.0/src/redis-server /usr/local/cluster/7004/redis.conf &
/usr/local/redis3.0/src/redis-server /usr/local/cluster/7005/redis.conf &

然后

chmod +x /usr/local/cluster/redis-start
/usr/local/cluster/redis-start

##启动之后使用命令查看redis的启动情况ps -ef|grep redis

6:执行redis的创建集群命令创建集群
安装ruby ,因为./redis-trib.rb 是执行的ruby的脚本,需要ruby的环境
sudo apt-get install ruby

为了执行 redis-trib.rb 需要安装 gem redis sudo gem install redis 可能会有长城防火墙的问题
可以去https://rubygems.org/gems/redis/versions/3.2.2 下载最新版本。
然后用命令 sudo gem install redis-3.2.2.gem

cd /usr/local/redis3.0/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

有下面输出表示成功了。

>>> Creating cluster
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
127.0.0.1:7000
127.0.0.1:7001
127.0.0.1:7002
Adding replica 127.0.0.1:7003 to 127.0.0.1:7000
Adding replica 127.0.0.1:7004 to 127.0.0.1:7001
Adding replica 127.0.0.1:7005 to 127.0.0.1:7002
M: 1cdc6971ddbcf64427a9499e19b048afa55aff08 127.0.0.1:7000slots:0-5460 (5461 slots) master
M: a355b2ccb1fdf413652a14cec722076af958a079 127.0.0.1:7001slots:5461-10922 (5462 slots) master
M: 0bc286b514d36e7195142ff0d55a87542048b5a9 127.0.0.1:7002slots:10923-16383 (5461 slots) master
S: a3b7c85fe957917bd383b181de3f1a3f31df8a05 127.0.0.1:7003replicates 1cdc6971ddbcf64427a9499e19b048afa55aff08
S: 9f0f4045497a72b64783fd9c2387f38b7e3bda6c 127.0.0.1:7004replicates a355b2ccb1fdf413652a14cec722076af958a079
S: f4b371c4e1d0fddfbe1552e540ddd36a5a00200b 127.0.0.1:7005replicates 0bc286b514d36e7195142ff0d55a87542048b5a9
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 127.0.0.1:7000)
M: 1cdc6971ddbcf64427a9499e19b048afa55aff08 127.0.0.1:7000slots:0-5460 (5461 slots) master
M: a355b2ccb1fdf413652a14cec722076af958a079 127.0.0.1:7001slots:5461-10922 (5462 slots) master
M: 0bc286b514d36e7195142ff0d55a87542048b5a9 127.0.0.1:7002slots:10923-16383 (5461 slots) master
M: a3b7c85fe957917bd383b181de3f1a3f31df8a05 127.0.0.1:7003slots: (0 slots) masterreplicates 1cdc6971ddbcf64427a9499e19b048afa55aff08
M: 9f0f4045497a72b64783fd9c2387f38b7e3bda6c 127.0.0.1:7004slots: (0 slots) masterreplicates a355b2ccb1fdf413652a14cec722076af958a079
M: f4b371c4e1d0fddfbe1552e540ddd36a5a00200b 127.0.0.1:7005slots: (0 slots) masterreplicates 0bc286b514d36e7195142ff0d55a87542048b5a9
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

这样redis-cluster集群就启动了

7、查看集群目前状况:

$ redis-cli -c -p 7000
127.0.0.1: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:0
cluster_stats_messages_sent:8770
cluster_stats_messages_received:8770

8、测试存值取值:每一次操作过后可能就跳到别的里面了。就是那个Redirected to slot ……

127.0.0.1:7002> set foo bar
OK
127.0.0.1:7000> set hello world
OK
127.0.0.1:7000> get foo
-> Redirected to slot [12182] located at 127.0.0.1:7002
"bar"
127.0.0.1:7002> get hello
-> Redirected to slot [866] located at 127.0.0.1:7000
"world"
127.0.0.1:7000> get name
-> Redirected to slot [5798] located at 127.0.0.1:7001
(nil)
127.0.0.1:7001>
127.0.0.1:7002> get name
-> Redirected to slot [5798] located at 127.0.0.1:7001
(nil)
127.0.0.1:7001> 

转载于:https://www.cnblogs.com/wayne173/p/5338131.html

Redis集群部署文档(Ubuntu15.10系统)相关推荐

  1. Redis集群明细文档(转)

    相信很多用过Redis的同学都知道,Redis目前版本是没有提供集群功能的,只能单打独斗.如果要实现多台Redis同时提供服务只能通过客户端自身去实现.目前根据文档已经看到Redis正在开发集群功能, ...

  2. Kubernetes(k8s)入门及集群部署文档

    文章目录 一.k8s 快速入门 简介 部署方式的进化 k8s能做什么 架构 整体主从方式 Master 节点架构 Node 节点架构 概念 快速体验 流程叙述 二.k8s 集群安装 前置要求 了解ku ...

  3. 3.redis集群部署3主3从

    redis集群部署 一:安装redis (使用redis3.0.6版本),同<1.redis安装> 1.下载源码 $ tar xzf redis-3.0.6.tar.gz $ cd red ...

  4. 达梦数据库DSC集群安装文档

    达梦数据库DSC集群安装文档 一. DSC安装准备工作 1 1.1. 创建安装用户 2 1.2. 配置udev存储 2 二. DMDSC 搭建 8 三. 搭建DW容灾架构 39 修改dm.ini,数据 ...

  5. 细细品味Hadoop_Hadoop集群精华文档合集

    为什么80%的码农都做不了架构师?>>>    细细品味Hadoop_Hadoop集群精华文档合集 Hadoop作为开源的云计算平台,已引起了学术界和企业的普遍兴趣.本文集整理了Ha ...

  6. kubeadm安装Kubernetes V1.10集群详细文档

    1:服务器信息以及节点介绍 系统信息:centos1708 minimal    只修改IP地址 主机名称 IP 备注 node01 192.168.150.181 master and etcd r ...

  7. 云服务器Redis集群部署及客户端通过公网IP连接问题

    目录 1.配置文件 2.启动服务并创建集群 (1)启动6个Redis服务 (2)通过客户端命令创建集群 3.客户端连接 (1)客户端配置 (2)测试用例 (3)错误日志分析 4.问题解决 (1)查re ...

  8. Redis集群部署的三种模式

    一.Redis简介 Redis 是一款完全开源免费.遵守BSD协议的高性能(NOSQL)的key-value数据库.它使用ANSI C语言编写,支持网络.可基于内存亦可持久化的日志型.Key-Valu ...

  9. 基于Codis的Redis集群部署

    Codis是基于代理的高性能Redis集群方案,使用Go语言进行开发,现在在在豌豆荚及其它公司内已经广泛使用,当然也包括我们公司. Codis与常见的Redis集群方案对比. 在搭建的时候,个人觉得R ...

最新文章

  1. TD321DCAN 隔离CAN总线驱动器
  2. VC包含目录、附加依赖项、库目录及具体设置
  3. 周报速递丨小红书提出 IDEA 方法论;金融业七大数字化趋势
  4. PW Live 直播 | 清华大学王晓智:事件抽取的进展与挑战
  5. 拆!对比详解 Flutter Widget 和 CSS,你关心的布局原理都在这儿了
  6. USACO 2.4.1 The Tamworth Two
  7. npm全局环境变量配置及解决VsCode使用时遇到的问题
  8. AR识别卡制作工具 1.0终于完工了
  9. Python风格总结:翻转列表、数组
  10. 随想录(写给自己的C++编程规范)
  11. linux mysql --help_深入理解mysql帮助命令(help)
  12. Q112:用Xcode调试程序(以PBRT-V3中的pbrt为例)
  13. 马什么梅?I什么N?浅谈 web 前端开发中的国际化
  14. cad连筋字体怎么安装_CAD图纸乱码怎么办?送你2800款字体,解决烦人的乱码问题...
  15. 学计算机的 1加1,如何用“一加一等于几”解析人生
  16. html图片闪动效果,用CSS制造出光泽一闪而过的图片效果
  17. 【工具分享】任意坐标系CAD范围线多点配准及准确导入导入LSV
  18. 老九学堂 学习 C++ 第七、八天
  19. python3:urllib/urllib2
  20. document.getElementByTagName的用法

热门文章

  1. (5) 百度2011研发工程师笔试卷
  2. chrome不认documentElement.scrollTop
  3. 简单的flash小动画成品_怎么制作flash动画?看这里怎么说。
  4. 记录mysql中的隐患特性
  5. 第06课:动手实战基于 ML 的中文短文本分类
  6. Cacheable注解使用详解
  7. jsp与jsp页面间的值传递与接收
  8. nginx+php+mysql+erlang+mongo环境安装
  9. 光伏行业春意盎然?一文看懂行业家底和五大趋势
  10. primeNG DataTable中Templating ng-template标签报错