Centos7Redis-cluster集群搭建-创新互联

Redis集群的三种模式 一、主从模式

优点:
哨兵模式也是一种主从,主从的优点都有,具有监控的功能,当主节点宕机之后哨兵会推选一个健康的从节点做主节点,提高了可用性。
缺点:
需要多维护一套哨兵模式,比较麻烦,在重新选举主节点期间,无法确定主从,无法工作。并且较难支持在线扩容。

成都创新互联专业提供绵阳机房托管服务,为用户提供五星数据中心、电信、双线接入解决方案,用户可自行在线购买绵阳机房托管服务,并享受7*24小时金牌售后服务。二、哨兵模式

优点:
哨兵模式也是一种主从,主从的优点都有,具有监控的功能,当主节点宕机之后哨兵会推选一个健康的从节点做主节点,提高了可用性。
缺点:
需要多维护一套哨兵模式,比较麻烦,在重新选举主节点期间,无法确定主从,无法工作。并且较难支持在线扩容。

三、cluster模式

优点:
采用多主多从,去中心化。按照一定的规则进行分片,将数据分别存储,一定程度上解决了哨兵模式下单机存储有限的问题。
分片原理:
数据分片使用的是hash slot, redis集群有16384个哈希槽,每个Key通过CRC16校验后对16384取模来决定放置哪一个槽。当存取redis key时候,redis会根据CRC16算法得到一个结果,然后把结果和16384求余,通过这个值去对应得节点获取数据。这个时候,应用客户端实际上只需要连接其中任意一个节点即可,然后Redis Cluster 中每个节点都保存了其他节点得槽信息,这样当存取key计算完槽之后,通过保存槽信息从配置中获取节点信息,然后再去对应得节点获取数据。

Redis-cluster集群搭建 一、环境准备

1. 安装ruby环境

yum -y install ruby

2. 安装gcc

yum install -y gcc g++ gcc-c++ make

3. 安装tcl

yum install -y tcl
二、安装集群

1. 在 /usr/local 目录创建redis文件夹

mkdir /usr/local/redis

2. 在 /usr/local/redis 目录创建redis-cluster文件夹

mkdir /usr/local/redis/redis-cluster

3. 进入 /usr/local/redis 目录下载redis-6.2.1.tar.gz压缩包

wget https://download.redis.io/releases/redis-6.2.1.tar.gz

4. 解压压缩包

tar -zxvf redis-6.2.1.tar.gz

5. 进入 /usr/local/redis/redis-6.2.1/src 目录进行编译安装

cd /usr/local/redis/redis-6.2.1/src/
make
make install

6. 进入 /usr/local/redis/redis-cluster 目录,创建文件夹 7001 7002 7003 7004 7005 7006 

cd /usr/local/redis/redis-cluster/
mkdir 7001 7002 7003 7004 7005 7006

7. 将 /usr/local/redis/redis-6.2.1 目录下的redis.conf文件分别复制到 7001 7002 7003 7004 7005 7006 中,并修改以下配置,其中700X代表各自目录

# 端口
port 700X
# 绑定服务器IP地址 
bind 192.168.31.240
# 开启集群功能
cluster-enabled yes
# 让redis后台运行
daemonize yes
# 集群的配置文件名称,不需要我们创建,由redis自己维护
cluster-config-file nodes-700X.conf
# 日志
lo gfile /usr/local/redis/redis-cluster/700X/node-700X.log
#启动AOF增量持久化策略
appendonly yes

8. 分别启动6个Redis实例,并通过 ps -ef | grep redis 查看redis实列

redis-server /usr/local/redis/redis-cluster/7001/redis.conf
redis-server /usr/local/redis/redis-cluster/7002/redis.conf
redis-server /usr/local/redis/redis-cluster/7003/redis.conf
redis-server /usr/local/redis/redis-cluster/7004/redis.conf
redis-server /usr/local/redis/redis-cluster/7005/redis.conf
redis-server /usr/local/redis/redis-cluster/7006/redis.conf

9. 通过 redis-cli 命令创建集群

命令说明:

redis-cli --cluster或者./redis-trib.rb:代表集群操作命令

create:代表是创建集群

--replicas 1或者--cluster-replicas 1 :指定集群中每个master的副本个数为1,此时节点总数 ÷ (replicas + 1) 得到的就是master的数量。因此节点列表中的前n个就是master,其它节点都是slave节点,随机分配到不同master

redis-cli --cluster create --cluster-replicas 1 192.168.31.240:7001 192.168.31.240:7002 192.168.31.240:7003 192.168.31.240:7004 192.168.31.240:7005  192.168.31.240:7006

输入yes

创建成功

三、测试集群

1. 连接7001节点

redis-cli -c -h 192.168.31.240 -p 7001

2. 通过 Cluster Nodes 查看集群信息,7001-7004,7002-7005,7003-7006

3. 存取值测试

4. 选举机制测试

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享题目:Centos7Redis-cluster集群搭建-创新互联
新闻来源:http://pwwzsj.com/article/dpejci.html