gpt4 book ai didi

kubernetes - Bitnami Redis 在 Kubernetes 身份验证失败时使用现有 key

转载 作者:行者123 更新时间:2023-12-04 12:28:05 24 4
gpt4 key购买 nike

我正在尝试使用 Bitnami Redis HELM Chart 在 Kubernetes 环境中安装 Redis .我想使用定义的密码而不是随机生成的密码。但是,当我想使用 redis-cli 连接到 redis master 或 replicas 时,出现以下错误。

I have no name!@redis-client:/$ redis-cli -h redis-master -a $REDIS_PASSWORD 
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
Warning: AUTH failed
我创建了一个像这样的 Kubernetes secret 。
---
apiVersion: v1
kind: Secret
metadata:
name: redis-secret
namespace: redis
type: Opaque
data:
redis-password: YWRtaW4xMjM0Cg==
在 values.yaml 文件中,我更新了身份验证规范,如下所示。
auth:
enabled: true
sentinel: false
existingSecret: "redis-secret"
existingSecretPasswordKey: "redis-password"
usePasswordFiles: false
如果我不定义 existingSecret字段并使用随机生成的密码,然后我可以毫无问题地连接。我也试过 AUTH admin1234之后 Warning: AUTH failed错误,但它也不起作用。

最佳答案

您可以通过更简单的方式实现它,即通过运行:

$ helm install my-release \
--set auth.password="admin1234" \
bitnami/redis
这将更新您的 "my-release-redis" secret ,所以当你运行时:
$ kubectl get secrets my-release-redis -o yaml
你会看到它已经包含你的密码 base64 - 编码:
apiVersion: v1
data:
redis-password: YWRtaW4xMjM0Cg==
kind: Secret
...
为了得到你的密码,你需要运行:
export REDIS_PASSWORD=$(kubectl get secret --namespace default my-release-redis -o jsonpath="{.data.redis-password}" | base64 --decode)
这将设置和导出 REDIS_PASSWORD包含您的 Redis 密码的环境变量。
然后你可以运行你的 redis-client荚:
kubectl run --namespace default redis-client --restart='Never'  --env REDIS_PASSWORD=$REDIS_PASSWORD  --image docker.io/bitnami/redis:6.2.4-debian-10-r13 --command -- sleep infinity
这将设置 REDIS_PASSWORD您的 redis-client 中的环境变量pod 分配给它的值 REDIS_PASSWORD在上一步中本地设置。

关于kubernetes - Bitnami Redis 在 Kubernetes 身份验证失败时使用现有 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68960083/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com