インフラ系SEの技術メモ

雑なエンジニアが低信頼性のメモを書いています。参考程度にとどめてください。

(Kubernetes)初期状態のDashboardでは権限が何もないという話

ダッシュボードでKubernetesの状態がみたい

デフォルトでKubernetesダッシュボードを展開すると、同Podにアクセスするも

表示するものがありません
リソースがありません。

という状態です。

理由としてはDeploymentにServiceAccountがあるも何も権限を持っていないから。

]# kubectl describe deployment kubernetes-dashboard -n kubernetes-dashboard
Name:                   kubernetes-dashboard
Namespace:              kubernetes-dashboard
CreationTimestamp:      xx
Labels:                 k8s-app=kubernetes-dashboard
Annotations:            deployment.kubernetes.io/revision: 2
Selector:               k8s-app=kubernetes-dashboard
Replicas:               1 desired | 1 updated | 1 total | 1 available | 0 unavailable
StrategyType:           RollingUpdate
MinReadySeconds:        0
RollingUpdateStrategy:  25% max unavailable, 25% max surge
Pod Template:
  Labels:           k8s-app=kubernetes-dashboard
  Service Account:  kubernetes-dashboard

というわけで手動でClusterRoleを与えると

# kubectl create clusterrolebinding insecure --serviceaccount kubernetes-dashboard:kubernetes-dashboard --clusterrole view

無事に権限がつきました。

何故か同作業起因かはおいておいてPodがリスタートしましたが・・

# kubectl get pod -n kubernetes-dashboard
NAME                                         READY   STATUS             RESTARTS      AGE
dashboard-metrics-scraper-799d786dbf-77bs4   1/1     Running            0             16m
kubernetes-dashboard-868984555d-wk2v4        0/1     CrashLoopBackOff   7 (93s ago)   13m