Redis系列六---通过Helm部署Redis-Cluster

2024-08-28 13:20
文章标签 部署 redis 系列 cluster helm

本文主要是介绍Redis系列六---通过Helm部署Redis-Cluster,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

前 言

搜索redis-cluster chart

下载redis-cluster chart

修改values.yaml文件

部署安装redis-cluster

检查部署结果

测试数据写入

故障测试


前 言

前面文章《Helm来了还在为写复杂的Yaml文件而烦恼吗》讲述了helm工具的使用,结合最近整理的《Redis系列五---轻松搞懂Redis的集群与高可用性!》本文就介绍一下通过helm在K8S集群上部署Redis-Cluster。

搜索redis-cluster chart

首先在Artifact Hub站点搜索redis-cluster,查到最多星的chart,点开查看此chart的具体信息,默认安装命令:

我先使用这条命令安装了一遍,查看redis的POD一直处于Pending状态,我再查看了一下redis的PVC未能成功绑定到PV,我查看了value.yaml文件,里面PVC使用到storageClass是“”,这种配置需要手动置备PV,所以我需要将PVC的storageClass改成我环境里已经配置的openebs-hostpath(配置方法可见《Helm搭桥,一键搞定Harbor部署,告别繁琐步骤!》)

下载redis-cluster chart

现在我需要先把redis-cluster这个chart包pull下来,解压开然后修改values.yaml文件

修改values.yaml文件

修改values.yaml文件,将storageClasss修改为openebs-hostpath

前提检查一下我环境里的openebs-hostpath存储类是否正常

部署安装redis-cluster

修改保存后,使用helm工具读取最新的values.yaml文件安装redis-cluster

安装完成后,helm工具会提示获取redis-cluster密码的方法,运行redis客户端pod,测试连接redis-cluster

检查部署结果

先手动检查redis名称空间里部署的资源是否已成功部署

使用helm提示的方法,运行redis客户端,测试连接redis-cluster,查看redis-cluster状态

查看redis-cluster集群节点信息,包含3个master 3个slave

测试数据写入

测试对KEY的操作,写入Key,查看Key,能够自动实现Moved

故障测试

关掉一个k8s-node01节点,过一段时间后,Redis-cluster的节点就Terminating

在redis-cli客户端查看集群节点,可看到k8s-node01上的redis pod就报fail了

坏掉2两个redis节点集群还能使用,如果redis节点坏掉4个,集群就不可用了


欢迎关注作者的公众号,公众号每天分享运维干货文章

这篇关于Redis系列六---通过Helm部署Redis-Cluster的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1114878

相关文章

redis数据结构之String详解

《redis数据结构之String详解》Redis以String为基础类型,因C字符串效率低、非二进制安全等问题,采用SDS动态字符串实现高效存储,通过RedisObject封装,支持多种编码方式(如... 目录一、为什么Redis选String作为基础类型?二、SDS底层数据结构三、RedisObject

Redis分布式锁中Redission底层实现方式

《Redis分布式锁中Redission底层实现方式》Redission基于Redis原子操作和Lua脚本实现分布式锁,通过SETNX命令、看门狗续期、可重入机制及异常处理,确保锁的可靠性和一致性,是... 目录Redis分布式锁中Redission底层实现一、Redission分布式锁的基本使用二、Red

redis和redission分布式锁原理及区别说明

《redis和redission分布式锁原理及区别说明》文章对比了synchronized、乐观锁、Redis分布式锁及Redission锁的原理与区别,指出在集群环境下synchronized失效,... 目录Redis和redission分布式锁原理及区别1、有的同伴想到了synchronized关键字

Spring Integration Redis 使用示例详解

《SpringIntegrationRedis使用示例详解》本文给大家介绍SpringIntegrationRedis的配置与使用,涵盖依赖添加、Redis连接设置、分布式锁实现、消息通道配置及... 目录一、依赖配置1.1 Maven 依赖1.2 Gradle 依赖二、Redis 连接配置2.1 配置 R

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

redis中session会话共享的三种方案

《redis中session会话共享的三种方案》本文探讨了分布式系统中Session共享的三种解决方案,包括粘性会话、Session复制以及基于Redis的集中存储,具有一定的参考价值,感兴趣的可以了... 目录三种解决方案粘性会话(Sticky Sessions)Session复制Redis统一存储Spr

使用Redis快速实现共享Session登录的详细步骤

《使用Redis快速实现共享Session登录的详细步骤》在Web开发中,Session通常用于存储用户的会话信息,允许用户在多个页面之间保持登录状态,Redis是一个开源的高性能键值数据库,广泛用于... 目录前言实现原理:步骤:使用Redis实现共享Session登录1. 引入Redis依赖2. 配置R

shell脚本批量导出redis key-value方式

《shell脚本批量导出rediskey-value方式》为避免keys全量扫描导致Redis卡顿,可先通过dump.rdb备份文件在本地恢复,再使用scan命令渐进导出key-value,通过CN... 目录1 背景2 详细步骤2.1 本地docker启动Redis2.2 shell批量导出脚本3 附录总

批量导入txt数据到的redis过程

《批量导入txt数据到的redis过程》用户通过将Redis命令逐行写入txt文件,利用管道模式运行客户端,成功执行批量删除以Product*匹配的Key操作,提高了数据清理效率... 目录批量导入txt数据到Redisjs把redis命令按一条 一行写到txt中管道命令运行redis客户端成功了批量删除k

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连