返回顶部
首页 > 资讯 > 数据库 >Redis7.0部署集群的实现步骤
  • 333
分享到

Redis7.0部署集群的实现步骤

Redis7.0部署集群Redis 部署集群 2022-06-26 17:06:16 333人浏览 泡泡鱼
摘要

目录Redis7.0部署集群详细版1、Redis集群内部结构设计2、cluster集群内部结构搭建3、主从下线和主从切换Redis7.0部署集群详细版 集群的架构:集群就是使用网络将若干台计算机联通起来,并提供统一的管理

Redis7.0部署集群详细版

集群的架构:集群就是使用网络将若干台计算机联通起来,并提供统一的管理方式,使其对外呈现单机的服务效果

集群的作用:

  • 分散单台服务器的访问压力,实现负载均衡

  • 分散单台服务器的存储压力,实现可扩展性

  • 降低单台服务器宕机带来业务灾难

Redis7.0部署集群的实现步骤

1、Redis集群内部结构设计

数据存储设计

  • 通过算法设计,计算出key应该保存的位置
  • 将所有的存储空间计划切割成16384份,每台主机保存一部分,每份代表的是一个存储空间,不是一个key的保存空间
  • 将key按照计算出的结果放到对应的存储空间
  • 增强可扩展性(有新的存储空间加入,官方叫做

集群内部通讯设计

  • 各个数据库相互通信,保存各个库中槽的编号数据
  • 一次命中,直接返回
  • 一次未命中,告知具体位置

2、cluster集群内部结构搭建

虚拟机中启动多个窗口进行集群搭建演示

Redis7.0部署集群的实现步骤

主要命令在主命令操作客户端执行

修改redis.conf配置文件

添加如下内容

cluster-enabled yes # 启动为节点
cluster-config-file nodes-6379.conf # cluster配置文件名,该文件属于自动生成,仅用于快速查找文件并查询文件内容
cluster-node-timeout 10000 # 节点服务响应超时时间,用于判定该节点是否下线或切换为从节点
cluster-migration-barrier <count> # master连接的slave最小数量

快速复制5分配置文件并替换里面的端口

[root@localhost conf]# sed "s/6379/6380/g" redis-6379.conf > redis-6380.conf 
[root@localhost conf]# sed "s/6379/6381/g" redis-6379.conf > redis-6381.conf 
[root@localhost conf]# sed "s/6379/6382/g" redis-6379.conf > redis-6382.conf 
[root@localhost conf]# sed "s/6379/6383/g" redis-6379.conf > redis-6383.conf 
[root@localhost conf]# sed "s/6379/6384/g" redis-6379.conf > redis-6384.conf 
[root@localhost conf]# sed "s/6379/6385/g" redis-6379.conf > redis-6385.conf 

全部执行后可以通过cat指令查看内容确保被修改

启动redis服务集群

# 在第一个窗口执行6379服务
redis-server redis-6379.conf
# 在第二个窗口执行6380服务
redis-server redis-6380.conf
# 在第三个窗口执行6381服务
redis-server redis-6381.conf
# 下面的代码依次类推到6385

执行命令查看redis进程和端口

ps -ef | grep redis-

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DPkULwye-1655210548732)(images/image-20220614160930499.jpg)]

连接节点

在src目录下查看redis-trib.rb

在高版本中已经将启动操作移动到redis-cli

启动需要两个下载两个文件分别是rubygem

# 下载命令也会将gem一起
yum -y install rubygems

 

 # --cluster create 创建集群
 # --cluster-replicas 1 指定集群的内部结构(1代表一个master连接1个slave,2代表一个master连接两个save)
 # 后面的连接端口按数量实现master连接哪一个slave,1对1,1对2
 redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 --cluster-replicas 1

执行的结果如下

Redis7.0部署集群的实现步骤

查看配置信息的结果如下

Redis7.0部署集群的实现步骤

执行yes命令后的信息如下

Redis7.0部署集群的实现步骤

再次查看配置文件的信息,里面记录这所有集群信息

启动客户端存储数据

因为使用了集群部署,所以通过-c参数可以操作集群,如果不指定的是操作redis命令会提示(error) MOVED 5798 127.0.0.1:6380

注意:-c操作集群

redis-cli -c
# 创建key,通过返回信息可以知道key存储到6380下了
127.0.0.1:6379> set name 123
-> Redirected to slot [5798] located at 127.0.0.1:6380
OK

指定端口连接客户端

# 连接指定的集群客户端
[root@localhost data]# redis-cli -c -p 6382
# 获取key
127.0.0.1:6382> get name
-> Redirected to slot [5798] located at 127.0.0.1:6380
"123"
127.0.0.1:6380> 

Cluster节点操作命令

查看集群节点信息

cluster nodes

进入一个从节点 redis,切换其主节点

cluster replicate <master-id>

发现一个新节点,新增主节点

cluster meet ip:port

忽略一个没有solt的节点

cluster forget <id>

手动故障转移

cluster failover

redis-trib命令

添加节点

redis-trib.rb add-node

删除节点

redis-trib.rb del-node

重新分片

redis-trib.rb reshard

3、主从下线和主从切换

1、模拟从机下线操作

在从机服务器执行Ctrl + C下载服务

观察连接的主机情况,主机会在10秒内连接不上从机就会标记从机失败,其他集群服务会连接上失败的,其他服务会接收到信息

再次启动从机,主机就会重新连接上从机

如果主机下线了,从机会某槽换位,当主机重新上线的时候,原来的主机就会变成从机

到此这篇关于Redis7.0部署集群的实现步骤的文章就介绍到这了,更多相关Redis7.0部署集群内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: Redis7.0部署集群的实现步骤

本文链接: https://lsjlt.com/news/33060.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Redis7.0部署集群的实现步骤
    目录Redis7.0部署集群详细版1、Redis集群内部结构设计2、cluster集群内部结构搭建3、主从下线和主从切换Redis7.0部署集群详细版 集群的架构:集群就是使用网络将若干台计算机联通起来,并提供统一的管理...
    99+
    2022-06-26
    Redis7.0部署集群 Redis 部署集群
  • Redis7.0部署集群怎么实现
    这篇“Redis7.0部署集群怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Redis7.0部署集群怎么实现”文章吧...
    99+
    2023-07-02
  • docker-compose部署etcd集群的实现步骤
    目录编写docker-compose.yml 运行docker-compose 检查搭建状态 测试节点 Golang 与 etcd 简单交互 编写docker-compose.yml...
    99+
    2024-04-02
  • Docker部署MySQL8集群(一主二从)的实现步骤
    目录一.CentOS7.9安装Docker20二.部署MySQL集群(一主二从)三.结果一.CentOS7.9安装Docker20 1.安装yum-utils工具 yum ins...
    99+
    2024-04-02
  • k8s集群部署的步骤是什么
    部署Kubernetes集群的步骤如下:1. 准备环境:为部署Kubernetes集群的所有节点准备合适的操作系统(如Ubuntu、...
    99+
    2023-10-11
    k8s
  • openstack集群部署的步骤是什么
    OpenStack集群部署的步骤通常包括以下几个主要阶段: 配置网络:创建用于OpenStack集群的网络基础设施,包括物理网络、...
    99+
    2023-10-25
    openstack
  • 在K8s上部署Redis集群的方法步骤
    目录一、前言 二、准备操作 三、StatefulSet简介 四、部署过程 1.创建NFS存储 2.创建Configmap 3.创建Headless service 4.创建Redis...
    99+
    2024-04-02
  • php中什么是集群部署?如何实现集群部署?
    随着互联网进入快速发展的时代,各种网站、应用如雨后春笋般出现,人们对于服务的需求越来越高。而随着用户量增加,单一服务器已经无法满足需求,集群部署PHP项目成为解决方案之一。一、什么是集群部署?集群部署是将多台服务器组合在一起,按照特定的方式...
    99+
    2023-05-14
    集群部署 php
  • IDEA集成docker实现远程部署的步骤
    1. docker 服务器开启远程访问 登录 docker 所在的远程服务器,使用命令 vim /usr/lib/systemd/system/docker.service 修改配置...
    99+
    2024-04-02
  • k8s部署redis cluster集群的实现
    目录Redis 介绍为什么要用Redis什么是Redis Cluster集群k8s以StatefulSet方式部署redis cluster集群:部署nfs创建pv部署redis初始...
    99+
    2024-04-02
  • php集群部署怎么实现
    PHP集群部署是指将多台服务器组成一个集群,共同处理PHP程序的请求。通过集群部署,可以提高系统的稳定性和性能。以下是实现PHP集群...
    99+
    2024-04-02
  • Docker部署Mysql8的实现步骤
    目录一、前置需求二、部署方法三、访问测试一、前置需求 1.linux系统 本人用的Centos7 2.安装docker 参考这篇文章 二、部署方法 1.拉取mysql8镜像 docker pull mysql:8 2...
    99+
    2022-07-06
    Docker部署Mysql8
  • IIS部署ASP.NET5的实现步骤
    目录介绍安装环境安装ASP.NET Core托管捆绑包发布项目托管方式进程内托管(IIS HTTP 服务器)进程外托管(Kestrel服务器)部署项目参考文档介绍 Internet ...
    99+
    2024-04-02
  • docker部署fastapi的实现步骤
    项目结构: pycharm结构: 拷贝到xftp时的结构  入口文件:main.py from fastapi import FastAPI app = FastA...
    99+
    2023-03-02
    docker部署fastapi
  • IDEA 集成 docker 实现远程部署的详细步骤
    1. docker 服务器开启远程访问 登录 docker 所在的远程服务器,使用命令 vim /usr/lib/systemd/system/docker.service 修改配置...
    99+
    2024-04-02
  • php中怎么实现集群部署
    这篇“php中怎么实现集群部署”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php中怎么实现集群部署”文章吧。一、什么是集群...
    99+
    2023-07-05
  • Redis sentinel哨兵集群的实现步骤
    目录一、Redis sentinel哨兵集群概述(1)Redis哨兵概述(2)Redis哨兵的工作机制(3)哨兵的三个定时监控任务二、部署Redis哨兵系统(1)实验环境(2)实验步骤 -在每台服务器上都安装Redis一...
    99+
    2022-07-14
    Redis sentinel哨兵集群 Redis sentinel哨兵
  • Redis sentinel哨兵集群的实现步骤
    目录一、Redis sentinel哨兵集群概述(1)Redis哨兵概述(2)Redis哨兵的工作机制(3)哨兵的三个定时监控任务二、部署Redis哨兵系统(1)实验环境(2)实验步...
    99+
    2024-04-02
  • docker部署lnmp-wordpress的实现步骤
    目录一、实验环境二、安装docker源三、安装docker四、部署Nginx和PHP1、上传/解压软件包和配置文件2、创建dockerfile文件3、构建镜像4、创建容器并运行5、开...
    99+
    2024-04-02
  • Redis的Cluster集群搭建的实现步骤
    目录一、引言二、Redis的Cluster模式介绍1、Redis群集101 2、Redis群集TCP端口 3、Redis集群和Docker 4、Redis集群数据分片 5、Redis...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作