web-dev-qa-db-ja.com

kubectlからadmin-userトークンを取得する方法

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!

2
tim

管理者ユーザーを作成してトークンを取得する完全な例を次に示します。

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}'
2
Gajen Sunthara

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
0
Root G

このbashを使用 Kubernetesダッシュボードのログイン画面のベアラートークンを取得するスクリプト 。スクリプトはトークンとネイティブOSクリップボードをコピーして、ログインフォームのトークン値フィールドに貼り付けることができるようにします。

0
javajon