zoukankan      html  css  js  c++  java
  • Kubernetes 1.5 配置dashboard

    配置kubernetes的dashboard相对简单。同样的,只需要从源码中获取到dashboard-controller.yaml及dashboard-service.yaml文件,稍加修改即可:

    wget https://rawgit.com/kubernetes/kubernetes/master/cluster/addons/dashboard/dashboard-controller.yaml
    wget https://rawgit.com/kubernetes/kubernetes/master/cluster/addons/dashboard/dashboard-service.yaml

    修改dashboard-controller.yaml如下:

    kind: Deployment
    apiVersion: extensions/v1beta1
    metadata:
      labels:
        app: kubernetes-dashboard
      name: kubernetes-dashboard
      namespace: kube-system
    spec:
      replicas: 1
      revisionHistoryLimit: 10
      selector:
        matchLabels:
          app: kubernetes-dashboard
      template:
        metadata:
          labels:
            app: kubernetes-dashboard
          # Comment the following annotation if Dashboard must not be deployed on master
          annotations:
            scheduler.alpha.kubernetes.io/tolerations: |
              [
                {
                  "key": "dedicated",
                  "operator": "Equal",
                  "value": "master",
                  "effect": "NoSchedule"
                }
              ]
        spec:
          containers:
          - name: kubernetes-dashboard
            image: myhub.fdccloud.com/library/kubernetes-dashboard-amd64:v1.5.1
            imagePullPolicy: Always
            ports:
            - containerPort: 9090
              protocol: TCP
            args:
              # Uncomment the following line to manually specify Kubernetes API server Host
              # If not specified, Dashboard will attempt to auto discover the API server and connect
              # to it. Uncomment only if the default does not work.
         #额外增加
    - --apiserver-host=http://10.5.10.116:8080 livenessProbe: httpGet: path: / port: 9090 initialDelaySeconds: 30 timeoutSeconds: 30

    dashboard-service.yaml不需要修改,这里直接给出源码中的示例文件:

    kind: Service
    apiVersion: v1
    metadata:
      labels:
        app: kubernetes-dashboard
      name: kubernetes-dashboard
      namespace: kube-system
    spec:
      type: NodePort
      ports:
      - port: 80
        targetPort: 9090
      selector:
        app: kubernetes-dashboard

    执行启动即可:

    kubectl create -f dashboard-controller.yaml
    kubectl create -f dashboard-service.yaml

    启动后,可以通过如下指令查看映射的nodeport:

    [root@server-116 kubernetes]# kubectl get svc --namespace=kube-system
    NAME                   CLUSTER-IP     EXTERNAL-IP   PORT(S)         AGE
    kube-dns               10.254.0.100   <none>        53/UDP,53/TCP   5h
    kubernetes-dashboard   10.254.68.60   <nodes>       80:30097/TCP    1d

    以下访问地址皆可用于访问:

    http://10.5.10.116:8080/ui
    
    http://10.5.10.116:30097

    dashboard界面如图:

    错误说明:

    在实际的配置过程中,发现dashboard无法启动,通过kubectl logs 查看pod日志,如下:

    Using HTTP port: 9090
    Error while initializing connection to Kubernetes apiserver. This most likely means that the cluster is misconfigurhas invalid apiserver certificates or service accounts configuration) or the --apiserver-host param points to a ser not exist. Reason: invalid configuration: no configuration has been provided
    Refer to the troubleshooting guide for more information: https://github.com/kubernetes/dashboard/blob/master/docs/uubleshooting.md

    这个错误,就是因为需要在dashboard启动的args参数里加上如下参数:

    --apiserver-host=http://10.5.10.116:8080

    另外,我们发现这个dashboard的访问没有任何的认证与授权机制,后续会专门对kubernetes的认证机制做相关说明。

  • 相关阅读:
    Spring cloud:熔断器-客户端降级
    Spring cloud:熔断器-服务端降级
    Spring cloud:服务调用-声明式客户端访问
    Spring cloud:服务调用-服务名访问
    Spring cloud:服务调用-IP访问
    Spring cloud:支付微服务-服务注册
    Spring cloud:支付微服务-支付
    Spring cloud:支付微服务-创建
    python读取数据库mysql报错
    自动化测试注意事项
  • 原文地址:https://www.cnblogs.com/breezey/p/6555299.html
Copyright © 2011-2022 走看看