redis集群部署与连接

整体架构为configMap+statefulSet+serverless 部署 sentinel模式 相比较直接直连 master 6379的好处 当master宕机可以立即调度到新的master

开启服务的时候 先开启master ->slave->sentinel

需要注意 使用configmap定义的时候 直接通过sentinel monitor redis-master-0.redis-headless.backend-space.svc.cluster.local 有可能dns 解析不了 1)运行时机,有可能再运行sentinel 读取 configMap时 master pod还没有运行 2)dns解析的结果是有延迟的,即使master 已经运行 也不能保证 通过configMap里获取的是最新的dns解析的结果 所以直接在 sentinel command里面使用命令 getent host手动获取dns解析结果 是最稳妥的

时使用secret配置文件 volumes+volumeMounts 不论是使用configMap或者secret 如果想在容器里使用指定的别名文件对象 都需要使用items进行映射 不然就默认直接使用的配置文件里的key

javascript 复制代码
 volumes:
   - name: redis-config
     secret:
       secretName: redis-secret
       defaultMode: 0400 #仅root权限可读
     # 或者configMap
     # configMap:
       # name:
       items:
         key: 定义配置文件里的key
         path: 存储在容器里的别名

redis-server默认启动的配置文件 是在 /etc/redis/redis.conf 所以 直接将secret配置的内容挂载到容器内部的/etc/redis默认启动目录 redis-server启动服务时就会直接用挂载的配置

javascript 复制代码
template:
  spec:
    containers:
      volumeMounts:
        name:redis-config #这个对应 volumes 里声明的变量
        mountPath:/etc/redis

livenessProbe 健康检查 + restartPolicy重启策略

javascript 复制代码
template:
  spec:
    restartPolicy:Always
    containers: 
      livenessProbe:
        exec:
          command:
          - sh
          - -c
          - |
          # 从 master.conf 中提取 requirepass 并去掉换行
          PASSWORD=$(grep -E '^requirepass' /etc/redis/redis.conf | awk '{print $2}' | tr -d '\n\r')
          export REDISCLI_AUTH="$PASSWORD"
          redis-cli ping
相关推荐
程序员-Benothing27 分钟前
MySQL 二级索引有 MVCC 快照吗?
数据库·mysql
xiaoxiangsiyan43 分钟前
网络智能化转型核心模块全解析
运维·服务器·网络·数据库·学习·架构·php
不才不才不不才1 小时前
Spring 源码系列(25): @EnableTransactionManagement 与 TransactionInterceptor
java·数据库·spring
l1t1 小时前
DeepSeek总结的DuckDB访谈:DuckDB的崛起、扩展与AWS收购
数据库·云计算·aws·duckdb
隔窗听雨眠1 小时前
CI/CD测试数据清理完全指南:从污染根因到三层清理覆盖的完整方案
java·数据库·ci/cd
MetaLite1 小时前
Spring-Scheduled多实例重复执行怎么办-Redis分布式锁如何只让一个节点运行
redis·分布式·spring
无定义_1 小时前
Bellman-Ford——贝尔曼福特算法
数据库·算法
盟接之桥1 小时前
半导体供应链破局:EDI如何成为中国制造的数字通行证
大数据·运维·服务器·网络·数据库·人工智能·制造
其实防守也摸鱼1 小时前
ZLibrary 类项目合规避坑指南:从技术实现到法律风险的全景梳理
运维·服务器·数据库·安全·自动化·github·copilot