helm部署Redis哨兵集群

介绍

 Redis Sentinel集群是由若干Sentinel节点组成的分布式集群,可以实现故障发现、故障自动转移、配置中心和客户端通知。

 如下图:

Redis Sentinel 故障转移过程:

 

从这张图中我们能看到主节点挂掉了,原先的主从复制也断开了,客户端和损坏的主节点也断开了。从节点被提升为新的主节点,其它从节点开始和新的主节点建立复制关系。客户端通过新的主节点继续进行交互。Sentinel 会持续监控已经挂掉了主节点,待它恢复后,集群会调整为下面这张图。

 

一、部署redis哨兵集群

 官方chart地址:https://github.com/helm/charts/tree/master/stable/redis-ha

集群说明:

By default this chart install 3 pods total:

  • one pod containing a redis master and sentinel container (optional prometheus metrics exporter sidecar available)
  • two pods each containing a redis slave and sentinel containers (optional prometheus metrics exporter sidecars available)

1)编写values.yaml(注意我这里的storageClass是已经搭好的nfs存储)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
image:
  repository: redis
  tag: 5.0.5
  pullPolicy: IfNotPresent
redis:
  resources:
    requests:
      memory: 200Mi
      cpu: 100m
    limits:
      memory: 700Mi
sentinel:
  resources:
    requests:
      memory: 200Mi
      cpu: 100m
    limits:
      memory: 200Mi
persistentVolume:
  enabled: true
  storageClass: "managed-nfs-storage"
  accessModes:
    - ReadWriteOnce
  size: 10Gi

 2)安装

1
$ helm install -f values.yaml stable/redis-ha --name redis-ha-test --namespace sscp-test

 结果:

 三、应用通过哨兵连接redis

 

posted @   西门运维  阅读(2318)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
历史上的今天:
2018-09-01 oracle 12C利用dbca建库13步
2018-09-01 RAC集群数据库连库代码示例(jdbc thin方式,非oci)
点击右上角即可分享
微信分享提示