[英]How to create a secret for service account using Kubernetes version 1.24
我正在使用 Kubernetes 版本 1.24,我手動為我的服務帳戶創建了一個密碼,但是當我運行kubectl get serviceaccounts
時,它顯示我沒有該服務帳戶的任何密碼?
手動創建secret
時,需要手動添加到ServiceAccount
中。 您可以為此使用kubectl edit
。
如果您手動創建密鑰,則必須手動將密鑰添加到服務帳戶。
您可以使用命令kubectl edit sa <name of sa>
編輯現有服務帳戶,或者創建 YAML 並重新應用更改來配置它們。
但是,如果您正在創建ServiceAccount ,它將自動生成秘密令牌。
bash-4.2$ kubectl get sa
NAME SECRETS AGE
default 1 11d
bash-4.2$ kubectl create sa test
serviceaccount/test created
bash-4.2$ kubectl get secret
NAME TYPE DATA AGE
default-token-dvgd8 kubernetes.io/service-account-token 3 11d
test-token-k6dpd kubernetes.io/service-account-token 3 7s
bash-4.2$ kubectl get sa
NAME SECRETS AGE
default 1 11d
test 1 59s
bash-4.2$
更新
如果您使用的是 K8s 版本1.24
serviceaccount不會自動創建密鑰。
您必須手動創建它。
示例:
apiVersion: v1
kind: Secret
type: kubernetes.io/service-account-token
metadata:
name: token-secret
annotations:
kubernetes.io/service-account.name: "<SA name>"
如果您只想創建令牌,可以使用: kubectl create token <Name>
閱讀更多相關信息: https://itnext.io/big-change-in-k8s-1-24-about-serviceaccounts-and-their-secrets-4b909a4af4e0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.