跳到主要内容

Redis 外置

兼容性说明

  1. ONES所有版本支持两种 Redis 部署模式,客户如提供如下两类Redis,参考本文操作。

    • 单机模式(Standalone)

    • 哨兵模式(Sentinel,主从高可用)

  2. 7.20.0 以上版本支持 Redis哨兵集群模式;客户如提供Redis哨兵集群,参考Redis 外置(哨兵集群)操作。

  3. ONES 暂不支持Redis外置为 Redis Cluster(基于 Hash Slot 的分布式集群模式)。

配置参数

配置项类型示例描述

redisHost

string10.0.0.202Redis的host

redisPort

string6379Redis的port

redisPassword

stringonesredis密码

操作步骤

进入ones pod


ones-ai-k8s.sh

修改配置

vim config/private.yaml
#修改如下配置(根据实际情况填写)
redisHost: 10.0.0.202
redisPort: 6379
redisPassword: ones

应用配置

make setup-ones

验证

外置Redis不涉及数据迁移,配置调整并下发后,等待1分钟后进入Redis

#如果Redis在本地,则不需要-h -p 如果不需要密码 则不需要-a
redis-cli -h <hostname> -p <port> -a <password>
get queue:race:key
#"1"
#能查到数据则说明切换成功

停止旧的内置 Redis

确认外置 Redis 可以正常使用后,执行:

for resource in \
deployment/redis \
deployment/deadly-eagle-redis-ha-haproxy \
deployment/stable-security-ha-redis-ha-haproxy \
statefulset/stable-redis-master \
statefulset/stable-security-redis-master \
statefulset/deadly-eagle-redis-ha-server \
statefulset/stable-security-ha-redis-ha-server
do
if kubectl -n ones get "$resource" >/dev/null 2>&1; then
kubectl -n ones scale "$resource" --replicas=0
fi
done