• kubernetes之安装集群图形化界面Dadhboard


    安装集群图形化界面(Dashboard )

    Dashboard 是 基 于 网 页 的 Kubernetes 用 户 界 面 。 您 可 以 使 用 Dashboard 将 容 器 应 用 部 署 到Kubernetes 集群中,也可以对容器应用排错,还能管理集群本身及其附属资源。您可以使用 Dashboard 获取运行在集群中的应用的概览信息,也可以创建或者修改 Kubernetes 资源(如Deployment,Job,DaemonSet等等)。

    1、安装图形化界面

    可以对 Deployment 实现弹性伸缩、发起滚动升级、重启 Pod 或者使用向导创建新的应用。
    
    # 1、下载资源清单并生成
    方式一:giitubx下载
    [root@k8s-m-01 ~]#  wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.4/aio/deploy/recommended.yaml
    
    方式二:自己网站下载并生成
    [root@k8s-m-01 ~]#  wget  http://www.mmin.xyz:81/package/k8s/recommended.yaml
    [root@k8s-m-01 ~]# kubectl apply -f recommended.yaml 
    
    方式三:一步生成并安装
    [root@k8s-m-01 ~]# kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.3.1/aio/deploy/recommended.yaml  
    
    # 2、查看端口
    [root@k8s-m-01 ~]# kubectl get svc -n kubernetes-dashboard
    NAME                        TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE
    dashboard-metrics-scraper   ClusterIP   10.109.218.188   <none>        8000/TCP   20s
    kubernetes-dashboard        ClusterIP   10.97.27.199     <none>        443/TCP    20s
    
    # 3、开一个端口,用于访问
    [root@k8s-m-01 ~]# kubectl edit svc -n kubernetes-dashboard kubernetes-dashboard
    type: ClusterIP   =>  type: NodePort  #修改成NodePort
    
    # 4、重新查看端口
    [root@k8s-m-01 ~]# kubectl get svc -n kubernetes-dashboard
    NAME                        TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)         AGE
    dashboard-metrics-scraper   ClusterIP   10.96.44.119   <none>        8000/TCP        12m
    kubernetes-dashboard        NodePort    10.96.42.127   <none>        443:40927/TCP   12m
    
    # 5、创建token配置文件
    [root@k8s-m-01 ~]# vim token.yaml
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: admin-user
      namespace: kube-system
    ---
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: admin-user
      annotations:
        rbac.authorization.kubernetes.io/autoupdate: "true"
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: cluster-admin
    subjects:
    - kind: ServiceAccount
      name: admin-user
      namespace: kube-system
    
    # 6、部署token到集群
    [root@k8s-m-01 ~]# kubectl apply -f token.yaml 
    serviceaccount/admin-user created
    clusterrolebinding.rbac.authorization.k8s.io/admin-user created
    
    # 7、获取token
    [root@k8s-m-01 ~]#  kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') | grep token: | awk '{print $2}'
    eyJhbGciOiJSUzI1NiIsImtpZCI6Ik1NeTJxSDZmaFc1a00zWVRXTHdQSlZlQnNjWUdQMW1zMjg5OTBZQ1JxNVEifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWpxMm56Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIyN2Q4MjIzYi1jYmY1LTQ5ZTUtYjAxMS1hZTAzMzM2MzVhYzQiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06YWRtaW4tdXNlciJ9.Q4gC_Kr_Ltl_zG0xkhSri7FQrXxdA5Zjb4ELd7-bVbc_9kAe292w0VM_fVJky5FtldsY0XOp6zbiDVCPkmJi9NXT-P09WvPc9g-ISbbQB_QRIWrEWF544TmRSTZJW5rvafhbfONtqZ_3vWtMkCiDsf7EAwDWLLqA5T46bAn-fncehiV0pf0x_X16t72Qqa-aizHBrVcMsXQU0wnYC7jt373pnhnFHYdcJXx_LgHaC1LgCzx5BfkuphiYOaj_dVB6tAlRkQo3QkFP9GIBW3LcVfhOQBmMQl8KeHvBW4QC67PQRv55IUaUDJ_lRC2QKbeJzaUto-ER4YxFwr4tncBwZQ
    
    # 8、验证集群是否成功
    [root@k8s-m-01 kubernetes]# kubectl run test01 -it --rm --image=busybox:1.28.3
    If you don't see a command prompt, try pressing enter.
    / # nslookup kubernetes
    Address 1: 10.96.0.2 kube-dns.kube-system.svc.cluster.local
    
    Name:      kubernetes
    Address 1: 10.96.0.1 kubernetes.default.svc.cluster.local
    / 
    # 9、通过token访问
    https://192.168.15.51:32464  # 第4步查看端口
    

    2、部署nginx服务

    # 1、部署服务
    [root@k8s-m-01 ~]# kubectl create deployment nginx --image=nginx
    deployment.apps/nginx created
    [root@k8s-m-01 ~]# kubectl expose deployment nginx --port=80 --type=NodePort
    service/nginx exposed
    
    # 2、查看部署的服务
    [root@k8s-m-01 ~]# kubectl get svc
    NAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
    kubernetes   ClusterIP   10.96.0.1      <none>        443/TCP        2d21h
    nginx        NodePort    10.109.78.82   <none>        80:31463/TCP   5s
    
    # 3、使用token登录
    [root@k8s-m-01 ~]# kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') | grep token: | awk '{print $2}'
    eyJhbGciOiJSUzI1NiIsImtpZCI6IjFGREpGUDZnbmkyeUJVSmplMm9TUEdVRmdKMGwxOWpFWEo0eE4wU1dmTzgifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWJ4cXRzIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJlNTMxMjc0Mi1mZTlkLTRjMWQtOTI4YS04MGM4MWQwZjMyNGQiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06YWRtaW4tdXNlciJ9.Cq9Z1pe4GErpTfHIe80tNo-M1hGLrn8T5tQzXCUosdwX55Tzu_ySAB8roHAXmWqOP4343w5ZQRJc6moH3gZ2tpDCDlssXGSEafX3N4UodBphr9XgsQvb_Ev1uhr5pVJmomwE3JRzGORt28SHdlm1PlAeTo0Bg9M9fNYXHzA8YGyCNN-fb--3wEb_gVqP1Go2HsReYHUZsmvxxxEuXXnDGK_U6mPOT8_hw-zEx-svGYoh5l4LKILG42FqUKFJo2qwj7hGl2RrPYELonx4OtL0vmbLyyxExC76g9d7sdXdzHLx7lZXXsgEBbgG54HC11SAHd0I7OL6PQfUFjQEDOzvXQ
    
    # 4、查看kubernetes部署的服务
    [root@k8s-m-01 ~]# kubectl get svc
    NAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
    kubernetes   ClusterIP   10.96.0.1      <none>        443/TCP        2d21h
    nginx        NodePort    10.109.78.82   <none>        80:31463/TCP   4m19s  # nginx服务
    
    [root@k8s-m-01 ~]# kubectl get svc -n kubernetes-dashboard 
    NAME                        TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)         AGE
    dashboard-metrics-scraper   ClusterIP   10.96.46.62   <none>        8000/TCP        11h
    kubernetes-dashboard        NodePort    10.103.2.97   <none>        443:30327/TCP   11h  #网络插件
    

  • 相关阅读:
    HDU 1058 Humble Numbers
    HDU 1421 搬寝室
    HDU 1176 免费馅饼
    七种排序算法的实现和总结
    算法纲要
    UVa401 回文词
    UVa 10361 Automatic Poetry
    UVa 537 Artificial Intelligence?
    UVa 409 Excuses, Excuses!
    UVa 10878 Decode the tape
  • 原文地址:https://www.cnblogs.com/caodan01/p/15102902.html
Copyright © 2020-2023  润新知