本页面介绍了如何使用 gkectl
为 VMware 上的 Anthos 集群 (GKE On-Prem) 的 Cloud Audit Logs、用量计量和 Stackdriver 组件轮替服务账号密钥。
如需轮替您的服务账号密钥,请执行以下操作:
创建用于存储当前 Secret 备份的目录:
mkdir backup
请注意相关组件的以下信息:
Cloud Audit Logs
集群 Secret 命名空间 管理 管理员集群凭据 kube-system 管理 user-cluster-creds CLUSTER_NAME-gke-onprem-mgmt 管理 kube-apiserver CLUSTER_NAME 用量计量
集群 Secret 命名空间 管理 user-cluster-creds CLUSTER_NAME-gke-onprem-mgmt 用户 usage-metering-bigquery-service-account-key kube-system Stackdriver
集群 Secret 命名空间 管理 管理员集群凭据 kube-system 管理 user-cluster-creds CLUSTER_NAME-gke-onprem-mgmt 用户 google-cloud-credentials kube-system 用户 stackdriver-service-account-key knative-serving 使用以下命令为每个 Secret 创建备份:
kubectl get secret SECRET --namespace NAMESPACE \ --kubeconfig KUBECONFIG -o json > backup/SECRET-NAMESPACE.json
替换以下内容:
NAMESPACE
:Secret 所在的命名空间。例如kube-system
。KUBECONFIG
:管理员集群或用户集群的 kubeconfig 文件的路径。SECRET
:Secret 的名称。例如admin-cluster-creds
。
例如,为 Cloud Audit Logs 组件运行以下命令:
kubectl get secret admin-cluster-creds --namespace kube-system \ --kubeconfig KUBECONFIG -o json > backup/admin-cluster-creds-kube-system.json kubectl get secret user-cluster-creds --namespace NAMESPACE \ --kubeconfig KUBECONFIG -o json > backup/user-cluster-creds-NAMESPACE.json kubectl get secret kube-apiserver --namespace NAMESPACE \ --kubeconfig KUBECONFIG -o json > backup/kube-apiserver-NAMESPACE.json
如需创建新的服务账号密钥文件,请运行以下命令:
gcloud iam service-accounts keys create NEW_KEY_FILE --iam-account IAM_ACCOUNT
替换以下内容:
NEW_KEY_FILE
:新的服务账号密钥文件的名称IAM_ACCOUNT
:Cloud Audit Logs、用量计量或 Stackdriver 的服务账号电子邮件地址。
在管理员集群和用户集群的相应配置文件中,找到
cloudauditlogging
、usagemetering
或stackdriver
部分。将
serviceAccountKeyPath
字段替换为您之前创建的 NEW_KEY_FILE。使用以下命令保存您所做的更改:
gkectl update credentials COMPONENT --admin-cluster --kubeconfig \ ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG gkectl update credentials COMPONENT --kubeconfig \ ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG
替换以下内容:
COMPONENT
:cloudauditlogging
、usagemetering
或stackdriver
之一。ADMIN_CLUSTER_KUBECONFIG
:管理员集群的 kubeconfig 文件的路径。ADMIN_CLUSTER_CONFIG
:管理员集群配置文件的路径。USER_CLUSTER_CONFIG
:用户集群配置文件的路径。