Kubernetes 部署 Dashboard

安装 Dashboard

安装 Dashboard 2.4.0
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml
查询命名空间

[root@k8smaster ~]# kubectl get namespace
NAME                   STATUS   AGE
default                Active   3d3h
kube-node-lease        Active   3d3h
kube-public            Active   3d3h
kube-system            Active   3d3h
kubernetes-dashboard   Active   2m35s

查看控制面板 kubectl get deploy -n kubernetes-dashboard
查看服务kubectl get svc -n kubernetes-dashboard
查看pod kubectl get pod -n kubernetes-dashboard
以上查询没有问题后下载文件修改
下载yaml wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml
修改 vi recommended.yaml

kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  ports:
    - port: 443
      targetPort: 8443
#添加下面两行端口和类型
      nodePort: 30003
  type: NodePort
  selector:
    k8s-app: kubernetes-dashboard

在两个kind: Deployment下面添加nodeName: k8smaster master主机名

kind: Deployment
apiVersion: apps/v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      k8s-app: kubernetes-dashboard
  template:
    metadata:
      labels:
        k8s-app: kubernetes-dashboard
    spec:
#添加下面一行master主机名
      nodeName: k8smaster
      containers:
        - name: kubernetes-dashboard
          image: kubernetesui/dashboard:v2.4.0
          imagePullPolicy: Always
          ports:
            - containerPort: 8443
              protocol: TCP
          args:
            - --auto-generate-certificates

第二个kind: Deployment添加master主机名

kind: Deployment
apiVersion: apps/v1
metadata:
  labels:
    k8s-app: dashboard-metrics-scraper
  name: dashboard-metrics-scraper
  namespace: kubernetes-dashboard
spec:
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      k8s-app: dashboard-metrics-scraper
  template:
    metadata:
      labels:
        k8s-app: dashboard-metrics-scraper
    spec:
#添加下面一行master主机名
      nodeName: k8smaster
      securityContext:
        seccompProfile:
          type: RuntimeDefault
      containers:
        - name: dashboard-metrics-scraper
          image: kubernetesui/metrics-scraper:v1.0.7
          ports:
            - containerPort: 8000
              protocol: TCP
          livenessProbe:

执行 kubectl apply -f recommended.yaml
稍后执行kubectl get pod -n kubernetes-dashboard如下结果说明成功

[root@k8smaster ~]# kubectl get pod  -n kubernetes-dashboard
NAME                                        READY   STATUS    RESTARTS     AGE
dashboard-metrics-scraper-5d56965b9-sf892   1/1     Running   1 (9h ago)   9h
kubernetes-dashboard-5dc9b97bcf-w554g       1/1     Running   1 (9h ago)   9h
[root@k8smaster ~]# kubectl get all  -n kubernetes-dashboard
NAME                                            READY   STATUS    RESTARTS     AGE
pod/dashboard-metrics-scraper-5d56965b9-sf892   1/1     Running   1 (9h ago)   9h
pod/kubernetes-dashboard-5dc9b97bcf-w554g       1/1     Running   1 (9h ago)   9h

NAME                                TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)         AGE
service/dashboard-metrics-scraper   ClusterIP   10.66.3.140    <none>        8000/TCP        9h
service/kubernetes-dashboard        NodePort    10.66.21.166   <none>        443:30003/TCP   9h

NAME                                        READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/dashboard-metrics-scraper   1/1     1            1           9h
deployment.apps/kubernetes-dashboard        1/1     1            1           9h

NAME                                                  DESIRED   CURRENT   READY   AGE
replicaset.apps/dashboard-metrics-scraper-5d56965b9   1         1         1       9h
replicaset.apps/kubernetes-dashboard-5dc9b97bcf       1         1         1       9h

查看访问信息kubectl cluster-info

[root@k8smaster ~]# kubectl cluster-info
Kubernetes control plane is running at https://192.168.116.103:6443
CoreDNS is running at https://192.168.116.103:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

访问 https://192.168.116.103:30003/

Dashboard 安装成功

获取token

kubectl create serviceaccount dashboard-admin -n kube-system

kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin

kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin/{print $1}')

获得token值
token登录成功
Deployments
Pods

如果kind: Deployment 两个地方不修改 pod异常状态CrashLoopBackOff

[root@k8smaster ~]# kubectl get pod -n kubernetes-dashboard
NAME                                         READY   STATUS             RESTARTS         AGE
dashboard-metrics-scraper-799d786dbf-p79d5   1/1     Running            0                96m
kubernetes-dashboard-6b6b86c4c5-hlz7q        0/1     CrashLoopBackOff   20 (3m43s ago)   96m

查看日志 kubectl logs kubernetes-dashboard-6b6b86c4c5-hlz7q -n kubernetes-dashboard

[root@k8smaster ~]# kubectl logs kubernetes-dashboard-6b6b86c4c5-hlz7q -n kubernetes-dashboard
2022/01/21 13:05:33 Starting overwatch
2022/01/21 13:05:33 Using namespace: kubernetes-dashboard
2022/01/21 13:05:33 Using in-cluster config to connect to apiserver
2022/01/21 13:05:33 Using secret token for csrf signing
2022/01/21 13:05:33 Initializing csrf token from kubernetes-dashboard-csrf secret
panic: Get "https://10.66.0.1:443/api/v1/namespaces/kubernetes-dashboard/secrets/kubernetes-dashboard-csrf": dial tcp 10.66.0.1:443: i/o timeout

goroutine 1 [running]:
github.com/kubernetes/dashboard/src/app/backend/client/csrf.(*csrfTokenManager).init(0xc00055faf0)
    /home/runner/work/dashboard/dashboard/src/app/backend/client/csrf/manager.go:41 +0x305
github.com/kubernetes/dashboard/src/app/backend/client/csrf.NewCsrfTokenManager(...)
    /home/runner/work/dashboard/dashboard/src/app/backend/client/csrf/manager.go:66
github.com/kubernetes/dashboard/src/app/backend/client.(*clientManager).initCSRFKey(0xc00041a080)
    /home/runner/work/dashboard/dashboard/src/app/backend/client/manager.go:502 +0x94
github.com/kubernetes/dashboard/src/app/backend/client.(*clientManager).init(0x18a56d9)
    /home/runner/work/dashboard/dashboard/src/app/backend/client/manager.go:470 +0x32
github.com/kubernetes/dashboard/src/app/backend/client.NewClientManager(...)
    /home/runner/work/dashboard/dashboard/src/app/backend/client/manager.go:551
main.main()
    /home/runner/work/dashboard/dashboard/src/app/backend/dashboard.go:95 +0x1cf

错误原因是要部署到主节点

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,036评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,046评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,411评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,622评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,661评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,521评论 1 304
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,288评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,200评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,644评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,837评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,953评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,673评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,281评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,889评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,011评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,119评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,901评论 2 355

推荐阅读更多精彩内容