[英]Secret is not decoding properly using Kubernetes Secrets
我正在使用 Kubernetes 部署我的 grafana 儀表板,我正在嘗試使用 Kubernetes Secrets 來保存 grafana 管理員密碼。這是我的 Z6EEDC03A68A69933C742F2D 文件
apiVersion: v1
kind: Secret
metadata:
name: $APP_INSTANCE_NAME-grafana
labels:
app.kubernetes.io/name: $APP_INSTANCE_NAME
app.kubernetes.io/component: grafana
type: Opaque
data:
# By default, admin-user is set to `admin`
admin-user: YWRtaW4=
admin-password: "$GRAFANA_GENERATED_PASSWORD"
GRAFANA_GENERATED_PASSWORD 的值是 base64 編碼和導出的
export GRAFANA_GENERATED_PASSWORD="$(echo -n $PASSWORD | base64)"
其中 PASSWORD 是我在我的機器上導出的變量,例如export PASSWORD=qwerty123
我正在嘗試將 GRAFANA_GENERATED_PASSWORD 的值傳遞給 yaml 文件以獲取類似秘密
envsubst '$GRAFANA_GENERATED_PASSWORD' > "grafana_secret.yaml"
傳遞 base64 編碼值后的 yaml 文件看起來像
apiVersion: v1
kind: Secret
metadata:
name: kafka-monitor-grafana
labels:
app.kubernetes.io/name: kafka-monitor
app.kubernetes.io/component: grafana
type: Opaque
data:
# By default, admin-user is set to `admin`
admin-user: YWRtaW4=
admin-password: "cXdlcnR5MTIz"
部署所有對象后,我無法使用正確編碼的密碼 qwerty123 登錄儀表板..
但是當我嘗試對我的密碼進行編碼時,例如export GRAFANA_GENERATED_PASSWORD="$(echo -n 'qwerty123' | base64)
"
它工作正常,我可以使用密碼 qwerty123 登錄到我的儀表板。看起來當我使用變量對密碼進行編碼時會出現問題...但是我已經使用變量對密碼進行了編碼
正如@Pratheesh評論中提到的,在第一次部署 grafana 后,持久卷沒有被刪除/重新創建,並且包含 Grafana 儀表板密碼的文件grafana.db
仍然保留舊密碼。
為了解決這個問題,需要先刪除 PersistentVolume (pv),然后再使用新密碼應用 secret。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.