1.9. fejezet, Kubernetes Dashboard

Kapcsolódó hivatkozások

Telepítés

helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard
 
kubectl get services -n kubernetes-dashboard
 
kubectl expose deployment kubernetes-dashboard-kong --type=NodePort --port=8443 -n kubernetes-dashboard
kubectl -n kubernetes-dashboard port-forward svc/kubernetes-dashboard-kong-proxy 8443:443
 
kubectl get services -n kubernetes-dashboard
(ubernetes-dashboard-kong exposed port)
# web
https://[controller-name]:[exposed port]/

account.yaml

apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard

roles.yaml (Jogosultságok)

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

Token generálás

kubectl -n kubernetes-dashboard create token admin-user

Jogosultságok visszavonása

kubectl -n kubernetes-dashboard delete serviceaccount admin-user
kubectl -n kubernetes-dashboard delete clusterrolebinding admin-user

ingress.yaml

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: dashboard-ingress
  namespace: kubernetes-dashboard
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/backend-protocol: HTTPS
    nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/16 # fontos hogy cluster belső IP címtartománya legyen
    nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
    nginx.ingress.kubernetes.io/ssl-passthrough: "true"
    nginx.ingress.kubernetes.io/backend-protocol: HTTPS
    nginx.org/upstream-zone-size: "0"
spec:
  ingressClassName: nginx
  rules:
  - host: dashboard.vrlaptop.me.local
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: kubernetes-dashboard-kong
            port:
              number: 8443

A whitelist-source-range a cluster belső címtartománya legyen!

Társítsuk az /etc/hosts file-ba az ingress address IP-címét a dashboard.vrlaptop.me.local domain névhez.

A böngészőben ezek után a https://dashboard.vrlaptop.me.local URL-en érhető el a Dashboard.