社内の開発環境用のKubernetes Dashboardであれば、認証なし(tokenの入力なし)でアクセスしたいですよね。
そのための手順です。
1. Dashboardをインストール
$ wget https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/alternative/kubernetes-dashboard.yaml
# Serviceをtype: NodePortに変更
$ vim kubernetes-dashboard.yaml
・・・
namespace: kube-system
spec:
+ type: NodePort #これを追加
ports:
- port: 80
$ kubectl apply -f kubernetes-dashboard.yaml
2. Dashboard Service Accountに管理権限を与える
$ cat <<EOF | kubectl create -f -
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: kubernetes-dashboard
labels:
k8s-app: kubernetes-dashboard
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: kubernetes-dashboard
namespace: kube-system
EOF
3. Dashboardにアクセス
MasterNodeのIPとkubernetes-dashboard ServiceのPortをもとにアクセスする。httpsじゃなくhttpでアクセスすること。
認証なし(tokenの入力なし)でダッシュボードがみれる。
認証ありのインストール手順例
1, https://github.com/kubernetes/dashboard/wiki/Installation の"Recommended setup"を実行
2, https://github.com/kubernetes/dashboard/wiki/Accessing-Dashboard---1.7.X-and-above#nodeport のNodePortのセクションを実行
3, https://github.com/kubernetes/dashboard/wiki/Access-control#bearer-token を参考に、service accountのtokenを取得
4, ダッシュボードを開きtokenを入力
参考: https://stackoverflow.com/questions/46664104/how-to-sign-in-kubernetes-dashboard