#!/bin/bash # 安装 External Secrets Operator,并让它按 Vault 里的 KV 刷新现有 Secret。 # prod102 上已经装过。再执行前先看命名空间 external-secrets 是否已有 Pod。 set -eu export KUBECONFIG=/root/.kube/config CHART=/usr/cluster/k8s/charts/external-secrets-2.12.0.tgz if [ ! -f "$CHART" ]; then echo "缺少 $CHART" exit 1 fi helm upgrade --install external-secrets "$CHART" \ -n external-secrets --create-namespace \ --set installCRDs=true \ --set image.repository=ghcr.dockerproxy.net/external-secrets/external-secrets \ --set image.tag=v2.12.0 \ --set webhook.image.repository=ghcr.dockerproxy.net/external-secrets/external-secrets \ --set webhook.image.tag=v2.12.0 \ --set certController.image.repository=ghcr.dockerproxy.net/external-secrets/external-secrets \ --set certController.image.tag=v2.12.0 \ --set image.pullPolicy=IfNotPresent \ --set webhook.image.pullPolicy=IfNotPresent \ --set certController.image.pullPolicy=IfNotPresent kubectl -n external-secrets rollout status deploy/external-secrets --timeout=180s kubectl apply -f "$(dirname "$0")/../config/cluster-secret-store.yaml" echo "ClusterSecretStore 已提交。各 Secret 的 ExternalSecret 由 04-生成ExternalSecret.py 写出。"