复述,集群搭建的方法

  介绍

这篇文章主要介绍复述,集群搭建的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

复述,集群搭建

在介绍正式内容之前,首先我们来介绍一下复述,单机版的搭建步骤是怎样的。

<李>

下载复述,压缩包,然后解压压缩文件;

<李>

进入到解压缩后的复述,文件目录(此时可以看到Makefile文件),编译复述,源文件;

<李>

把编译好的复述,源文件安装到/usr/地方/复述,目录下,如果/当地目录下没有复述,目录,会自动新建复述,目录;

<李>

进入/usr/地方/复述/bin目录,直接。/redis-server启动复述(此时为前端启动复述);

<李>

将复述,启动方式改为后端启动,具体做法:把解压缩的复述,文件下的redis.conf文件复制到/usr/地方/复述/bin目录下,然后修改该redis.conf文件→daemonize:不改为daemonize:试验;

<李>

在/bin目录下通过。/redis-server复述。参看启动复述(此时为后台启动)。
综上复述,单机版安装启动完成。
具体详细带图步骤请参考→复述,入门
<强>请原谅我的啰嗦,好,接着咱们回到本次话题——复述,集群搭建!

<强>一、复述,集群(复述,集群)简介

<李>

复述是一个开源的键值存储系统,受到了广大互联网公司的青睐.redis3.0版本之前只支持单例模式,在3.0版本及以后才支持集群,我这里用的是redis3.0.0版本;

<李>

复述,集群采用P2P模式,是完全去中心化的,不存在中心节点或者代理节点;

<李>

复述,集群是没有统一的入口的,客户端(客户端)连接集群的时候连接集群中的任意节点(节点)即可,集群内部的节点是相互通信的乒乓球机(制),每个节点都是一个复述,实例;

<李>

为了实现集群的高可用,即判断节点是否健康(能否正常使用),redis-cluster有这么一个投票容错机制:如果集群中超过半数的节点投票认为某个节点挂了,那么这个节点就挂了(失败)。这是判断节点是否挂了的方法;

<李>

那么如何判断集群是否挂了呢?→如果集群中任意一个节点挂了,而且该节点没有从节点(备份节点),那么这个集群就挂了。这是判断集群是否挂了的方法;

<李>

那么为什么任意一个节点挂了(没有从节点)这个集群就挂了呢?→因为集群内置了16384个槽(哈希槽),并且把所有的物理节点映射到了这16384(0 - 16383)个插槽上,或者说把这些槽均等的分配给了各个节点。当需要在复述,集群存放一个数据(键值)时,复述,会先对这个关键进行crc16算法,然后得到一个结果。再把这个结果对16384年进行求余,这个余数会对应(0 - 16383)其中一个槽,进而决定键-值存储到哪个节点中。所以一旦某个节点挂了,该节点对应的槽就无法使用,那么就会导致集群无法正常工作。

<李>

综上所述,每个复述,集群理论上最多可以有16384个节点。

<强>二,集群搭建需要的环境
2.1复述,集群至少需要3个节点,因为投票容错机制要求超过半数节点认为某个节点挂了该节点才是挂了,所以2个节点无法构成集群。
2.2要保证集群的高可用,需要每个节点都有从节点,也就是备份节点,所以复述,集群至少需要6台服务器,因为我没有那么多服务器,也启动不了那么多虚拟机,所在这里搭建的是伪分布式集群,即一台服务器虚拟运行6个复述,实例,修改端口号为(7001 - 7006),当然实际生产环境的复述,集群搭建和这里是一样的。
2.3安装ruby
<强>三,集群搭建具体步骤如下(注意要关闭防火墙)
3.1在usr/当地目录下新建redis-cluster目录,用于存放集群节点
复述,集群搭建的方法”> <br/> 3.2把复述,目录下的本目录下的所有文件复制到/usr/地方/redis-cluster/redis01目录下,不用担心这里没有redis01目录,会自动创建的。操作命令如下(注意当前所在路径):</p> <pre类= cp  -r 复述/bin/, redis-cluster/redis01

复述,集群搭建的方法”> <br/> 3.3删除redis01目录下的快照文件dump.rdb,并且修改该目录下的redis.cnf文件,具体修改两处地方:一是端口号修改为7001,二是开启集群创建模式,打开注释即可。分别如下图所示:<br/>删除转储。rdb文件<br/> <img src=复述,集群搭建的方法