Kubernetesダッシュボードのデプロイ手順
- 使用するコンテキストを設定:
kubectl config use-context docker-desktop
- ダッシュボードのデプロイ:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml
-
ServiceAccount、ClusterRoleBinding、そしてSecretを作成:
- 以下の内容を
create_service_account.yaml
というファイルに保存します。
- 以下の内容を
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kubernetes-dashboard
---
apiVersion: v1
kind: Secret
metadata:
name: admin-user
namespace: kubernetes-dashboard
annotations:
kubernetes.io/service-account.name: "admin-user"
type: kubernetes.io/service-account-token
- 作成したYAMLファイルを適用します。
kubectl apply -f create_service_account.yaml
- ServiceAccountのトークンを取得:
kubectl get secret admin-user -n kubernetes-dashboard -o jsonpath={".data.token"} | base64 -d
このコマンドは、ログインに必要なBearerトークンを出力します。
- kubectlプロキシを起動:
kubectl proxy
-
ブラウザでKubernetesダッシュボードにアクセス:
-
以下のURLにアクセスします。
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login -
出力されたBearerトークンを「トークン」フィールドに入力して、ダッシュボードにログインします。
-
上記手順に従って、Kubernetesダッシュボードをデプロイし、ログインすることができます。
参照: https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md