Kubernetesを初めて使用するKubernetesダッシュボードにログインするのに苦労しています。
フォローしました: https://github.com/kubernetes/dashboard/wiki/Creating-sample-user
そして
kubectl get clusterrolebinding admin-user -n kube-system -o yaml
ショー:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"rbac.authorization.k8s.io/v1","kind":"ClusterRoleBinding","metadata":{"annotations":{},"name":"admin-user"},"roleRef":{"apiGroup":"rbac.authorization.k8s.io","kind":"ClusterRole","name":"cluster-admin"},"subjects":[{"kind":"ServiceAccount","name":"admin-user","namespace":"kube-system"}]}
creationTimestamp: "2019-01-15T15:48:33Z"
name: admin-user
resourceVersion: "2096"
selfLink: /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/admin-user
uid: 0361cb77-18dd-11e9-b02d-bc305b9f3aeb
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kube-system
今kubectl -n kube-system get secret | egrep admin
何も表示されません(上のページのステートメントと矛盾します...)何が欠けていますか?
TIA!
管理者ユーザーを作成してトークンを取得する完全な例を次に示します。
k8sadmin
という管理者/サービスアカウントユーザーを作成します
Sudo kubectl create serviceaccount k8sadmin -n kube-system
ユーザーに管理者権限を与える
Sudo kubectl create clusterrolebinding k8sadmin --clusterrole=cluster-admin --serviceaccount=kube-system:k8sadmin
トークンを取得する
Sudo kubectl -n kube-system describe secret $(Sudo kubectl -n kube-system get secret | (grep k8sadmin || echo "$_") | awk '{print $1}') | grep token: | awk '{print $2}'
Wikiには、秘密をトークンで記述するコマンドが含まれるようになりました。ただし、トークンのみを取得したい場合は、以下のようなものを使用できます。これにより、ユーザーadmin-user
のトークンが出力されます。
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | (grep admin-user || echo "$_") | awk '{print $1}') | grep token: | awk '{print $2}'
シークレットが見つからない場合は、次のようになります。
Error from server (NotFound): secrets "admin-user" not found
このbashを使用 Kubernetesダッシュボードのログイン画面のベアラートークンを取得するスクリプト 。スクリプトはトークンとネイティブOSクリップボードをコピーして、ログインフォームのトークン値フィールドに貼り付けることができるようにします。