目的
kubernetesにkubernetes dashboardを構築する
Ref
サマリ
基本、上記Refのgithubのreadmeの通りやる
環境
local-machine ----- Internet ----- kubernetes on AWS
kubernetes-dashboardをdeployする
bash
$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml
dashboardにloginする際のServiceAccountを作る
Ref: https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md
bash
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
EOF
ClusterRoleBindingを作る
Ref: https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md
bash
cat <<EOF | kubectl apply -f -
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
EOF
proxyを立てる
bash
$ kubectl proxy
Starting to serve on 127.0.0.1:8001
local machineでsshでlocal forwardを設定
sshのport forwardingについては以下を参照
Ref: https://qiita.com/mechamogera/items/b1bb9130273deb9426f5
bash
$ ssh -L 8001:127.0.0.1:8001 username@remote-machine
local machineからwebアクセスする
以下のURLにアクセスするとdashboardが見える
http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/