Dashboard Install

Kubernetes Dashboard就是k8s集群的web界面,集合了所有命令行可以操作的所有命令。界面如下所示

环境

192.168.48.101 master01
192.168.48.201 node01
192.168.48.202 node02

dashboard 安装

k8s的dashboard安装可以说是非常简单,参考github的指导既可。项目地址如下

https://github.com/kubernetes/dashboard

官方安装命令

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

但是这么安装存在几个问题:

  1. 镜像国内无法直接访问,需要设置docker代理,才能下载镜像
  2. dashboard的默认web证书是自动生成的,由于时间和名称存在问题,导致谷歌和ie浏览器无法打开登录界面,经过测试Firefox可以正常打开

镜像

dashboardv1.10.1镜像下载

链接:https://pan.baidu.com/s/1A4NI1guHwOFQv-n7F6ajYA 提取码:fvne

各节点无脑加载镜像

docker load -i dashboard.tar.gz

创建dashboard

[root@master01 ~]# kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml
secret/kubernetes-dashboard-certs created
serviceaccount/kubernetes-dashboard created
role.rbac.authorization.k8s.io/kubernetes-dashboard-minimal created
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard-minimal created
deployment.apps/kubernetes-dashboard created
service/kubernetes-dashboard created[root@master01 ~]# kubectl get pod -n kube-system
NAME                                    READY   STATUS    RESTARTS   AGE
coredns-fb8b8dccf-jfm2m                 1/1     Running   8          6d19h
coredns-fb8b8dccf-r8tqp                 1/1     Running   7          6d19h
etcd-master                             1/1     Running   5          6d19h
kube-apiserver-master01                   1/1     Running   5          6d19h
kube-controller-manager-master01          1/1     Running   4          6d19h
kube-flannel-ds-amd64-26xjf             1/1     Running   7          6d19h
kube-flannel-ds-amd64-82s7n             1/1     Running   3          6d19h
kube-flannel-ds-amd64-sd2j9             1/1     Running   3          6d19h
kube-proxy-792hk                        1/1     Running   5          6d19h
kube-proxy-88cgt                        1/1     Running   3          6d19h
kube-proxy-frgtq                        1/1     Running   2          6d19h
kube-scheduler-master01                   1/1     Running   4          6d19h
kubernetes-dashboard-5f7b999d65-rmxhw   1/1     Running   0          92s
[root@master ~]# 

kubernetes-dashboard service 在集群内部,无法再外部访问,为了方便访问,得暴露kubernetes-dashboard 443端口给NodePort

[root@master01 ~]# kubectl get svc -n kube-system
NAME                   TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                  AGE
kube-dns               ClusterIP   10.96.0.10      <none>        53/UDP,53/TCP,9153/TCP   6d19h
kubernetes-dashboard   ClusterIP   10.109.71.206   <none>        443/TCP                  2m25s[root@master01 ~]# kubectl edit svc kubernetes-dashboard  -n kube-system # Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
apiVersion: v1
kind: Service
metadata:annotations:kubectl.kubernetes.io/last-applied-configuration: |{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"k8s-app":"kubernetes-dashboard"},"name":"kubernetes-dashboard","namespace":"kube-system"},"spec":{"ports":[{"port":443,"targetPort":8443}],"selector":{"k8s-app":"kubernetes-dashboard"}}}creationTimestamp: "2019-04-06T14:30:32Z"labels:k8s-app: kubernetes-dashboardname: kubernetes-dashboardnamespace: kube-systemresourceVersion: "37052"selfLink: /api/v1/namespaces/kube-system/services/kubernetes-dashboarduid: 88d3c228-5878-11e9-8c85-000c296cdc6e
spec:clusterIP: 10.109.71.206ports:- port: 443protocol: TCPtargetPort: 8443selector:k8s-app: kubernetes-dashboardsessionAffinity: None  type: NodePort
status:loadBalancer: {}[root@master01 ~]# kubectl get svc -n kube-system
NAME                   TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                  AGE
kube-dns               ClusterIP   10.96.0.10      <none>        53/UDP,53/TCP,9153/TCP   6d19h
kubernetes-dashboard   NodePort    10.109.71.206   <none>        443:30440/TCP            6m41s

通过谷歌浏览器访问,发现居然无法继续,如下图所示:

通过火狐浏览器可以访问

发现原因是证书日期问题,Chrome拦截了,所以得手动配证书

证书

生成证书通过openssl生成自签名证书即可,这样就有了证书文件dashboard.crt 和 私钥 dashboad.key

[root@master01 ~]# cd /etc/kubernetes/pki/
[root@master01 pki]# openssl genrsa -out dashboard.key 2048
Generating RSA private key, 2048 bit long modulus
...................................+++
....................................................+++
e is 65537 (0x10001)
[root@master01 pki]# openssl req -new -out dashboard.csr -key dashboard.key -subj "/CN=dashboard"
[root@master01 pki]# openssl x509 -req -in dashboard.csr -out dashboard.crt -signkey dashboard.key  -CA ca.crt -CAkey ca.key -CAcreateserial -days 365
Signature ok
subject=/CN=dashboard
Getting Private key
Getting CA Private Key
[root@master01 pki]# ls
apiserver.crt              apiserver-etcd-client.key  apiserver-kubelet-client.crt  ca.crt  ca.srl         dashboard.csr  etcd                front-proxy-ca.key      front-proxy-client.key  sa.pub
apiserver-etcd-client.crt  apiserver.key              apiserver-kubelet-client.key  ca.key  dashboard.crt  dashboard.key  front-proxy-ca.crt  front-proxy-client.crt  sa.key

下载dashboard yaml并修改

wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

我们需要重新生成secret,并且将该配置文件中创建secret的配置文件信息去掉,将以下内容 从配置文件中去掉

[root@master01 ~]# vim kubernetes-dashboard.yaml # ------------------- Dashboard Secret ------------------- #apiVersion: v1
kind: Secret
metadata:labels:k8s-app: kubernetes-dashboardname: kubernetes-dashboard-certsnamespace: kube-system
type: Opaque

在配置文件中,修改service type为nodeport类型,固定访问端口nodePort:30001

vim kubernetes-dashboard.yaml # ------------------- Dashboard Service ------------------- #kind: Service
apiVersion: v1
metadata:labels:k8s-app: kubernetes-dashboardname: kubernetes-dashboardnamespace: kube-system
spec:type: NodePortports:- port: 443targetPort: 8443nodePort: 30001selector:k8s-app: kubernetes-dashboard

生成secret

先删除以前的secret 生成新的secret

[root@master01 ~]# kubectl delete -f kubernetes-dashboard.yaml
serviceaccount "kubernetes-dashboard" deleted
role.rbac.authorization.k8s.io "kubernetes-dashboard-minimal" deleted
rolebinding.rbac.authorization.k8s.io "kubernetes-dashboard-minimal" deleted
deployment.apps "kubernetes-dashboard" deleted
service "kubernetes-dashboard" deleted[root@master01 ~]# kubectl  create secret generic kubernetes-dashboard-certs --from-file=/etc/kubernetes/pki/dashboard.key --from-file=/etc/kubernetes/pki/dashboard.crt -n kube-system
secret/kubernetes-dashboard-certs created

重新apply yaml文件

重新创建kubernetes-dashboard.yaml

[root@master01 ~]# kubectl apply -f kubernetes-dashboard.yaml
serviceaccount/kubernetes-dashboard created
role.rbac.authorization.k8s.io/kubernetes-dashboard-minimal created
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard-minimal created
deployment.apps/kubernetes-dashboard created
service/kubernetes-dashboard created

查看kubernetes-dashboard的服务

[root@master01 ~]# kubectl get svc -n kube-system
NAME                   TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                  AGE
kube-dns               ClusterIP   10.96.0.10      <none>        53/UDP,53/TCP,9153/TCP   6d20h
kubernetes-dashboard   NodePort    10.109.71.206   <none>        443:30001/TCP            64m

通过谷歌浏览器可以访问,如下图所示:

dashboard 访问

token访问

访问dashboard的是serviceaccount,得创建serviceaccount

[root@master01 ~]# kubectl create serviceaccount  dashboard-admin -n kube-system
serviceaccount/dashboard-admin created[root@master01 ~]# kubectl get serviceaccounts -n kube-system
NAME                                 SECRETS   AGE
attachdetach-controller              1         6d20h
bootstrap-signer                     1         6d20h
certificate-controller               1         6d20h
clusterrole-aggregation-controller   1         6d20h
coredns                              1         6d20h
cronjob-controller                   1         6d20h
daemon-set-controller                1         6d20h
dashboard-admin                      1         33s
default                              1         6d20h
deployment-controller                1         6d20h
disruption-controller                1         6d20h
endpoint-controller                  1         6d20h
expand-controller                    1         6d20h
flannel                              1         6d20h
generic-garbage-collector            1         6d20h
horizontal-pod-autoscaler            1         6d20h
job-controller                       1         6d20h
kube-proxy                           1         6d20h
kubernetes-dashboard                 1         10m
namespace-controller                 1         6d20h
node-controller                      1         6d20h
persistent-volume-binder             1         6d20h
pod-garbage-collector                1         6d20h
pv-protection-controller             1         6d20h
pvc-protection-controller            1         6d20h
replicaset-controller                1         6d20h
replication-controller               1         6d20h
resourcequota-controller             1         6d20h
service-account-controller           1         6d20h
service-controller                   1         6d20h
statefulset-controller               1         6d20h
token-cleaner                        1         6d20h
ttl-controller                       1         6d20h

clusterrolebinding绑定

[root@master01 ~]# kubectl create clusterrolebinding  dashboard-cluster-admin --clusterrole=cluster-admin   --serviceaccount=kube-system:dashboard-admin
clusterrolebinding.rbac.authorization.k8s.io/dashboard-cluster-admin created

获取token

[root@master01 ~]# kubectl get secrets -n kube-system
NAME                                             TYPE                                  DATA   AGE
attachdetach-controller-token-w5tsb              kubernetes.io/service-account-token   3      6d20h
bootstrap-signer-token-2gsqj                     kubernetes.io/service-account-token   3      6d20h
certificate-controller-token-qb8hw               kubernetes.io/service-account-token   3      6d20h
clusterrole-aggregation-controller-token-k6czs   kubernetes.io/service-account-token   3      6d20h
coredns-token-mfq8b                              kubernetes.io/service-account-token   3      6d20h
cronjob-controller-token-b5k7j                   kubernetes.io/service-account-token   3      6d20h
daemon-set-controller-token-qmpqt                kubernetes.io/service-account-token   3      6d20h
dashboard-admin-token-zf5kd                      kubernetes.io/service-account-token   3      5m30s
default-token-sx4mq                              kubernetes.io/service-account-token   3      6d20h
deployment-controller-token-n4z6v                kubernetes.io/service-account-token   3      6d20h
disruption-controller-token-bg4gl                kubernetes.io/service-account-token   3      6d20h
endpoint-controller-token-wb9p2                  kubernetes.io/service-account-token   3      6d20h
expand-controller-token-l5nz2                    kubernetes.io/service-account-token   3      6d20h
flannel-token-kmdc4                              kubernetes.io/service-account-token   3      6d20h
generic-garbage-collector-token-vrsdm            kubernetes.io/service-account-token   3      6d20h
horizontal-pod-autoscaler-token-82685            kubernetes.io/service-account-token   3      6d20h
job-controller-token-vg4qd                       kubernetes.io/service-account-token   3      6d20h
kube-proxy-token-lwgch                           kubernetes.io/service-account-token   3      6d20h
kubernetes-dashboard-certs                       Opaque                                2      19m
kubernetes-dashboard-key-holder                  Opaque                                2      82m
kubernetes-dashboard-token-wsrcl                 kubernetes.io/service-account-token   3      15m
namespace-controller-token-kjtfb                 kubernetes.io/service-account-token   3      6d20h
node-controller-token-2vljj                      kubernetes.io/service-account-token   3      6d20h
persistent-volume-binder-token-gcbz2             kubernetes.io/service-account-token   3      6d20h
pod-garbage-collector-token-vfwll                kubernetes.io/service-account-token   3      6d20h
pv-protection-controller-token-86bv7             kubernetes.io/service-account-token   3      6d20h
pvc-protection-controller-token-ls59z            kubernetes.io/service-account-token   3      6d20h
replicaset-controller-token-snxzg                kubernetes.io/service-account-token   3      6d20h
replication-controller-token-96ff9               kubernetes.io/service-account-token   3      6d20h
resourcequota-controller-token-ht46g             kubernetes.io/service-account-token   3      6d20h
service-account-controller-token-lhj4g           kubernetes.io/service-account-token   3      6d20h
service-controller-token-vrpt2                   kubernetes.io/service-account-token   3      6d20h
statefulset-controller-token-w5dxf               kubernetes.io/service-account-token   3      6d20h
token-cleaner-token-99l6t                        kubernetes.io/service-account-token   3      6d20h
ttl-controller-token-cwwp4                       kubernetes.io/service-account-token   3      6d20h[root@master01 ~]# kubectl describe secrets  -n kube-system  dashboard-admin-token-zf5kd
Name:         dashboard-admin-token-zf5kd
Namespace:    kube-system
Labels:       <none>
Annotations:  kubernetes.io/service-account.name: dashboard-adminkubernetes.io/service-account.uid: 508072c6-5883-11e9-8c85-000c296cdc6eType:  kubernetes.io/service-account-tokenData
====
ca.crt:     1025 bytes
namespace:  11 bytes
token:      eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4temY1a2QiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNTA4MDcyYzYtNTg4My0xMWU5LThjODUtMDAwYzI5NmNkYzZlIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.YxTu6SH0LswKd0AJMEDXvVsgKWqZSRlAqh_Xhlxt592m2KjfxlNzjHIufa6x44qo7bed9LYsvA03wvD0jIsJcDMadzlnQ_Mw-AUxe8kox6oUHgUbzSAmJg9-WRbhF0eYCq4RA8xB88S4KS2YyW1-XSz4gLf2MEqYZ0zyLqbE_br1Rz5vp9O2oKeVoDzrG18Zp-mdNJrQYWSGvk5ZyUaYT1T53NP3hSFRb2KppCGCP3d9pNZCEQ1x9nUp4nXqBc5wSawCtj83uDzyRtfnJquhqUu-gVsnv2t3WGIQnAwHWom5mW9824moczkISYf9sp8JT-ZSLwnf05s9-1Qv9urAaA

利用token登录

eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4temY1a2QiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNTA4MDcyYzYtNTg4My0xMWU5LThjODUtMDAwYzI5NmNkYzZlIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.YxTu6SH0LswKd0AJMEDXvVsgKWqZSRlAqh_Xhlxt592m2KjfxlNzjHIufa6x44qo7bed9LYsvA03wvD0jIsJcDMadzlnQ_Mw-AUxe8kox6oUHgUbzSAmJg9-WRbhF0eYCq4RA8xB88S4KS2YyW1-XSz4gLf2MEqYZ0zyLqbE_br1Rz5vp9O2oKeVoDzrG18Zp-mdNJrQYWSGvk5ZyUaYT1T53NP3hSFRb2KppCGCP3d9pNZCEQ1x9nUp4nXqBc5wSawCtj83uDzyRtfnJquhqUu-gVsnv2t3WGIQnAwHWom5mW9824moczkISYf9sp8JT-ZSLwnf05s9-1Qv9urAaA

config访问

复制.kube/config文件 将token那一串添加进去

[root@master01 ~]# cp .kube/config  admin.conf
[root@master01 ~]# vim admin.conf
apiVersion: v1
clusters:
- cluster:certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN5RENDQWJDZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRFNU1ETXpNREU0TlRZd05sb1hEVEk1TURNeU56RTROVFl3Tmxvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTUdtCkFvU3g5VlNBeThHQnl3dUdjelBOVU8rZEJNRDhHZGkzQVVSdEg3TTd5U3FhVWxGY0Jnanpic004UmJ0QmwvZGYKeUh6a0RENDJKVGJDd0RvZVFuQTFZVGVOUmdUTzE5R0VXcVpZakN0U29pck9RakZEVElXYXg2RVhTeER5ZjB1YwpDTEhzNWtPVzdobm9ramNVREFOZUVaTmFBSUFKMkhxOW90QU9WZUNiaWNFa0h5SUsrMGNqTmMyN3RKcUVUVWhJClRYS0hiQUJWSjB0Y2tXTm53SUkvNUIwODloL0dXbnlTVFIyYXBydSsxaDVUbVRJOWVNZUtRVHpva2psTG1DbWgKU2duaXA3ZFN4Q3g1cVUrNm9nMHY3bXlOc0xWeWFKVlZrR0UxSG4vMVlPdW9rVkYrZnJ3YThuUHhxQ291UVZkWgpiOUo3cU9JZWE1Vi9KY1d4akxrQ0F3RUFBYU1qTUNFd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFLVmZLb0labHdLVFI4MnlIeTBKeDduSHhwa0QKSjhRNHowM1N0Yk9rN2JlMjZCdGRSZTJieTRaOXdoMk8vcXA5T3NKNVpPNzJKbHNIa09lUEQrZDRleStTRHRaKwpFVElxRXd0NEg3Vm1TOCs1c0J1cFpvVlVBdlI5QVI2Z2ZkTXB2OUJLK1RUV2dsaU45dW4yVThZQXpQVCtCejVaCmxsZ3dNWFl5Ymh5ZzBiQjNjckhMcWxaWFh3THg3ajBaQ3JsbUZKSlV2elBhZWVOQzhiRWNJd2t1RXlXc2l4dkYKelRhSzVIbDA3WnNTb0FZbWJHbThheEI2T3B6cUUzYlJaTmdHV0Z6dE1reFlpYy9aNkdJemo0Qm9hNWJhTlJPdApwK1ZhMHVOSlROTjREMjhza0d4MjdkRmVTNXVkdzdPYXUrbEM5Z3g0YmJKUkV6T0RYM00wY2wxcm5YTT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=server: https://192.168.48.200:6443name: kubernetes
contexts:
- context:cluster: kubernetesuser: kubernetes-adminname: kubernetes-admin@kubernetes
current-context: kubernetes-admin@kubernetes
kind: Config
preferences: {}
users:
- name: kubernetes-adminuser:client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM4akNDQWRxZ0F3SUJBZ0lJWGdzZkVBUWpUU3d3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB4T1RBek16QXhPRFUyTURaYUZ3MHlNREF6TWpreE9EVTJNRFphTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXBCQlFQYjJKK3BhNCtrT00KNHVtS1J1UjVJekFtWi9qWEk5QWpyR0J1OWMwSXFUQVI5MjlzMFpHUnRoU0ZrNGtXaGZkbHNNOEVFZGtsb3hzdgowL1NxZWIvWVhpMGR3WXBrcElxMDlkVi9zck1aelNBS0cyaXBkMXovN2VjaVEvYUU5MDJDMzBxcnFPTExPejdOCnZiYmN4cmtyWEwvcFJSK0tWZjRYTzBuOXJuaE05ci9qd0JBVUNzSFZmbXY0OTJSdXFqY3JVUHVBUUpRNmxsdHIKMnZ1cURyRWZOeFR3OVcwK0pPVVZ5SVV4TkV6UEx3YndSL1hjTE9IZG9OcmlUcVFnVWRseXg0TFdwYkJzYkZQcgpZU0xpaDQrRExnWndWOTFIUUkySkliNlFZYjgzWW8rMHRsZlFBaWNCc0Y2R0YwVktmNmlLQTFjRmlDTlV5V3NYCjhhVU5rd0lEQVFBQm95Y3dKVEFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFDNVlKQ3FEQXl3TTlOM2xoVkdjdkthMVNkN090eTEzQWtjZApjSDV4TDhWL2R5TGpTd3MrZHd6MDM1d3ZYVXVNMEtIT0hIcVMrMUkzenFpQW5wSWRNcVFjT3QzOEVGRnhqWnZxClNtYzdDczVVY0I1Znhocm14SnZFZGUvdFQzVmx4V2JHUHN0YUk3ZnRYdGFuQVFlZURBVjA3WHlvOHJqSG5VdFEKQ1ZrSEV5MUxIN3I5eGU3MUh2bzJFendHVzU2ZCtsSGlvK0hOdXdzcHlxZzF4NXF1SGhkYWc4VE9NY1RpcHpJawpndXNPTDF6YXh6bjBSalhsQ21ENmQ0cFR3bGtDVU42L3FaUWVHRkpjZFBBTlk0Y3NUQXdQSDJHS1Mrd2xrcGZECmw0NWpuL2IzSDJ6d2FabTFUK2xYNG1nYXZNR0lENjJTWno1WHNXOXprN3htODdrcmJoMD0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcFFJQkFBS0NBUUVBcEJCUVBiMkorcGE0K2tPTTR1bUtSdVI1SXpBbVovalhJOUFqckdCdTljMElxVEFSCjkyOXMwWkdSdGhTRms0a1doZmRsc004RUVka2xveHN2MC9TcWViL1lYaTBkd1lwa3BJcTA5ZFYvc3JNWnpTQUsKRzJpcGQxei83ZWNpUS9hRTkwMkMzMHFycU9MTE96N052YmJjeHJrclhML3BSUitLVmY0WE8wbjlybmhNOXIvagp3QkFVQ3NIVmZtdjQ5MlJ1cWpjclVQdUFRSlE2bGx0cjJ2dXFEckVmTnhUdzlXMCtKT1VWeUlVeE5FelBMd2J3ClIvWGNMT0hkb05yaVRxUWdVZGx5eDRMV3BiQnNiRlByWVNMaWg0K0RMZ1p3VjkxSFFJMkpJYjZRWWI4M1lvKzAKdGxmUUFpY0JzRjZHRjBWS2Y2aUtBMWNGaUNOVXlXc1g4YVVOa3dJREFRQUJBb0lCQVFDWW5hUkhDcDNqd1hscApOSlZHTDhFMW1Tc21sSS9sZ0JHQmV3ajBQUEI3THJPenpzZW55THNOWjhDSUJDY055eVJza21yQ1FwQ2ltY0R0CkxVa2NmaWhuQVJNZzZBOGFEc2I0V1I5azM2bmViY1MraitOWEE5RkErLzRITEU4dnNZNlhEaitEdjA1WDJFRDkKWjdxemsvdGowTFNKbnV3OEpNN21sMnE4K0dOSGU1dFd5cUo4YVJaaXB6UDB3cXZCU2ZsalpvdDFuNHl2alh4SQptM1d0QjY5bmpvRWVnYXdIN1V6SXZmSGNzUnlRejN6akFKTEdFYzA3a0Q1WnhaRlNGNkZudmovcjNCdFZOL0prCndoSXBXdFl2UytOTG5mMEFNbnZjZFplMlplQmJvWU5jVjZqU0RkeDZ3Mm80dmhWdXJHNzlVZDI2SW5DaUdqMGoKa2t4QXhUbGhBb0dCQU1ReGtjK21jQThwOENpR0YwdHJUM3Z0b2xicjRXbDhEbjE3Wng5R1BoZFVXSDhmOE9WcAo5VU1xVHdqYmNVODRUKzRyRG4yTHJkKy9iR2l5d25TR01vbXFwUXd1S3p2eitPQ1BOUkh2T1daYnF0Y2owUnlkCjhHL3NtQm9UaWFNaWVobURwTXZOUlJvd21xTHRjVWJPcFJKYS83MjBma3I3dk5EVmk4c3FidGdYQW9HQkFOWVQKYVVQYmZ0bTJKZ1Nxa1Q2NDJ0WTZDWFJpTzl1THdjVnBNZUluaWZBZkRVRmFLa1FjRldGVWVKeVByTXVuUDJ1MgpoL2dvZTljM2lPN1pmSERYWjlrMFptZ0FSZHA3bmhXQ3M0NVZCSElpZ3c0UmJQQkwvZ1lsSTlOcW1Xa1JHc0puCmg3UDUvalVlYlg1V3VISWJqVjNIQjhtNHBpQUlUR0gvcW4zVUorZmxBb0dBVzhYVUx3M3IzU3dBNnZQT2Nia0EKdFRlemVIVmVPN21NRGFacjFuVkZGaVNlUU5qd0ZtQTZHZkR3aDNRZXpLL0tzOTN3S1VudFMzeC9lWG9rKzl6SwpSeHRMbVNiL2trdk5YejJkMVlYUms4L05XbFdtdTN3bHZEVXY4UUt5bjF6QlFLNFRxRUdjMFdOcThrdWZjVCs0CmQ1MlpnMk9xcitpUnFoNDZCZzhUU29FQ2dZRUF5YzZRdkVSdUI2UzdvRWgvRmNiRG5aSW1tWTJGYWdrTXlTSEsKd2F5T1QwdW1ma1lXZEJDWll5QnpkdnZHWkZHczZzaXUweFN1OGdyTFRvYTkxYzVxZW9yNFF2Q0c2VmtCaEx1cQpzdkdZZUZQcWdkZVJmOUhUalUxendYakxXQTJrMFVFeDMwczdCaTVDQUFpV1poTnRKOHRabnlNdmtDRGlpTHV3CnFGL1lvclVDZ1lFQWpWQUFGQ0RGWXZVRWxMUEt2U2Y4K1hBdnR6Y3dKUGZoVmE5dmdYcjZtWnlOL0xWS1BBTmQKVDJLVHc2cStNNkF3cDQ2cFA2bkRiSjBEYVRyZUkxUFVvYlhFZFBnMTBlQjIyL0RNdDBaVlI5WnlCcmFVLzBkQgp6dXhuL21FbUk2NU9NL3RBQzlIblNZQUw3b3hUcVY4NldSTTI4VzNTTS82SFozSUZUVGVoa1ZZPQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4temY1a2QiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNTA4MDcyYzYtNTg4My0xMWU5LThjODUtMDAwYzI5NmNkYzZlIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.YxTu6SH0LswKd0AJMEDXvVsgKWqZSRlAqh_Xhlxt592m2KjfxlNzjHIufa6x44qo7bed9LYsvA03wvD0jIsJcDMadzlnQ_Mw-AUxe8kox6oUHgUbzSAmJg9-WRbhF0eYCq4RA8xB88S4KS2YyW1-XSz4gLf2MEqYZ0zyLqbE_br1Rz5vp9O2oKeVoDzrG18Zp-mdNJrQYWSGvk5ZyUaYT1T53NP3hSFRb2KppCGCP3d9pNZCEQ1x9nUp4nXqBc5wSawCtj83uDzyRtfnJquhqUu-gVsnv2t3WGIQnAwHWom5mW9824moczkISYf9sp8JT-ZSLwnf05s9-1Qv9urAaA

利用admin.conf文件登录

一起来学k8s 06.安装dashboard相关推荐

  1. 一起来学k8s 07.安装metrics-server和heapster

    Metrics-Server Kubernetes从1.8版本开始,CPU.内存等资源的metrics信息可以通过 Metrics API来获取,用户可以直接获取这些metrics信息 环境 192. ...

  2. Kubernetes-------kubeadm安装dashboard、Harbor私有仓库

    K8S kubeadm安装dashboard.Harbor私有仓库 K8S 一.安装dashboard 所有节点安装dashboard 方法一 所有节点上传dashboard镜像 dashboard. ...

  3. 项目四 CentOS使用kubeadm部署工具部署测试环境的K8s集群---Kubectl命令使用以及安装dashboard界面

    大家好,我是SuieKa.在之前呢有幸学习了马哥教育提供的K8s入门指南以及视频.初来乍到,写一篇关于K8s的介绍以及部署测试环境使用的K8s集群. 树 @·K8s入门简单介绍 一.K8s(Kuber ...

  4. 【Kubernetes】k8s的安全管理详细说明【SA配置、k8s安装dashboard、资源限制(resource、limit、resourcequota)】

    文章目录 环境准备 token验证&&kubeconfig验证 role和clusterrole赋权 sa[Service Account] sa总结 1.service accoun ...

  5. 【K8S】K8S 1.18.2安装dashboard(基于kubernetes-dashboard 2.0.0版本)

    写在前面 K8S集群部署成功了,如何对集群进行可视化管理呢?别着急,接下来,我们一起搭建kubernetes-dashboard来解决这个问题. 有关K8S集群的安装可以参考<[K8S]基于单M ...

  6. 【kubernetes系列之安装Dashboard】

    目录 一.安装dashboard 二.集群网络模式 三.查看 Dashboard 暴露外网端口 四.访问dashboard 五.创建账户,生成token kubernetes折腾了好久,终于把Dash ...

  7. Kubernetes1.91(K8s)安装部署过程(一)--证书安装

    安装前忠告:如果你用的是虚拟机,强烈不建议你使用克隆(链接克隆)的方式,至于完整克隆不知道有没有问题,每一台全新安装centos7系统最好. 一.安装前主题环境准备 1.docker安装 建议使用官网 ...

  8. Kubernetes1.13集群安装dashboard 1.10.1

    文章目录 Kubernetes1.13集群安装dashboard 1.10.1 安装dashboard 下载镜像 创建pod 授予Dashboard账户集群管理权限 APIServer方式 查看集群信 ...

  9. DockerK8s---跟我一步步部署K8s(二进制安装部署)

    文章目录 Docker&K8s---跟我一步步部署K8s(二进制安装部署) Kubernetes(K8s)概述 Kubernetes快速入门 四组基本概念 常见的K8s安装部署方式 准备工作 ...

最新文章

  1. SQL Server 查询性能优化——堆表、碎片与索引(一)
  2. C# WinForm 技巧十: 开发工具
  3. qPCR实验疑难杂问解答
  4. 查询linux信号量命令,linux下的trap命令和SIGHUP信号量详解。
  5. 数据结构——二叉树的最小深度算法
  6. 四款常见IT自动化运维工具简单介绍-行云管家
  7. 进销存软件哪个简单好用?商户必看
  8. MySQL_where条件查询
  9. mysql课设体会_课程设计心得体会8篇
  10. 利用 MAC 自带的 mount_ntfs 工具加载ntfs移动硬盘进行数据读写
  11. 搞个气氛 用MATLAB画一棵精致的圣诞树
  12. java个人所得税计算器
  13. 什么是WebP图片格式?如何在线把Webp格式转换为JPEG格式?
  14. python中else的作用_享学课堂谈python中else的用途
  15. 求解二维矩形 Packing 问题的一种优美度枚举 算法的个人心得1
  16. 智能化软件开发微访谈·第十九期暨2022新年特辑:软件智能化开发:进展与挑战...
  17. aiaidaxue.com 爱爱大学最新地址发布页
  18. 第一类第二类贝塞尔函数
  19. vue中通过css实现旋转地球
  20. Android Glide 3.7.0 源码解析(八) , RecyclableBufferedInputStream 的 mark/reset 实现

热门文章

  1. 【代码随想录】-动态规划专题
  2. 文化的品位和文化的品格
  3. 图的广度遍历(湖北汽车工业学院数据结构实验)
  4. 全国首例 | 国产ECMO在阜外医院成功救治一名患者
  5. 航空发动机适航复习纲要
  6. 成绩工资水电费证书等综合查询系统源码
  7. 计算广告及搜索广告简介
  8. SqlServer 中的触发器
  9. 脑电必读文章:ERP经典成分汇总
  10. 华为占据折叠手机市场半数份额,证明它在高端市场的地位无可替代