基於kubernetes叢集部署DashBoard

來源:互聯網
上載者:User

標籤:count   cluster   master   ant   檔案   googl   rgs   current   extension   

  在之前一篇文章Centos7部署Kubernetes叢集(http://www.cnblogs.com/zhenyuyaodidiao/p/6500830.html)中已經搭建了基本的K8s叢集,本文將在此基礎之上繼續搭建K8s DashBoard。

1、yaml檔案

  編輯dashboard.yaml,注意或更改以下紅色部分:

apiVersion: extensions/v1beta1kind: Deploymentmetadata:# Keep the name in sync with image version and# gce/coreos/kube-manifests/addons/dashboard counterparts  name: kubernetes-dashboard-latest  namespace: kube-systemspec:  replicas: 1  template:    metadata:      labels:        k8s-app: kubernetes-dashboard        version: latest        kubernetes.io/cluster-service: "true"    spec:      containers:      - name: kubernetes-dashboard        image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.1        resources:          # keep request = limit to keep this container in guaranteed class          limits:            cpu: 100m            memory: 50Mi          requests:            cpu: 100m            memory: 50Mi        ports:        - containerPort: 9090        args:         -  --apiserver-host=http://10.0.251.148:8080        livenessProbe:          httpGet:            path: /            port: 9090          initialDelaySeconds: 30          timeoutSeconds: 30

  編輯dashboardsvc.yaml檔案:

apiVersion: v1kind: Servicemetadata:  name: kubernetes-dashboard  namespace: kube-system  labels:    k8s-app: kubernetes-dashboard    kubernetes.io/cluster-service: "true"spec:  selector:    k8s-app: kubernetes-dashboard  ports:  - port: 80    targetPort: 9090
 2、鏡像準備

  在dashboard.yaml中定義了dashboard所用的鏡像:gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.1(當然你可以選擇其他的版本),另外,啟動k8s的pod還需要一個額外的鏡像:registry.access.redhat.com/rhel7/pod-infrastructure:latest(node中,/etc/kubernetes/kubelet的配置),由於一些眾所周知的原因,這兩個鏡像在國內是下載不下來的,以下介紹如何準備這兩個鏡像。

2.1 國外下載,國內匯入

  從海外的伺服器上pull下來對應的鏡像,之後通過docker save儲存成tar包,將tar包傳回國內,在每個node上執行docker load將鏡像匯入。類似的命令如下:

海外伺服器執行:docker save gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.1 > dashboard.tardocker save registry.access.redhat.com/rhel7/pod-infrastructure:latest > podinfrastructure.tarscp *.tar [email protected]你國內的外網IP:/home/tar各個node上執行:docker load < dashboard.tardocker load < podinfrastructure.tar
2.2 搭梯子

  在node所在同網段(相同交換器)內,搭建一個可以正常訪問google、Facebook等網站的fq網關,將叢集中所有機器的GATEWAY指向該地址,之後重啟網路。這樣,所有的機器就能夠正常下載這兩個鏡像了。

 3、啟動

  在master執行如下命令:

kubectl create -f dashboard.yamlkubectl create -f dashboardsvc.yaml

  之後,dashboard搭建完成。

 4、驗證

  命令驗證,master上執行如下命令:

[[email protected] ~]# kubectl get deployment --all-namespacesNAMESPACE NAME DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGEkube-system kubernetes-dashboard-latest 1  1         1            1           1h[[email protected]-master ~]# kubectl get svc  --all-namespacesNAMESPACE   NAME          CLUSTER-IP    EXTERNAL-IP   PORT(S)   AGEdefault       kubernetes             10.254.0.1      <none>        443/TCP   9dkube-system   kubernetes-dashboard   10.254.44.119   <none>        80/TCP    1h[[email protected]-master ~]# kubectl get pod  -o wide  --all-namespacesNAMESPACE  NAME  READY     STATUS    RESTARTS     AGE   IP  NODEkube-system kubernetes-dashboard-latest-3866786896-vsf3h 1/1 Running 0 1h 10.0.82.2 k8s-node-1

  介面驗證,瀏覽器訪問:http://10.0.251.148:8080/ui

 5、銷毀應用

  在master上執行:

kubectl delete deployment kubernetes-dashboard-latest --namespace=kube-systemkubectl delete svc  kubernetes-dashboard --namespace=kube-system

 

基於kubernetes叢集部署DashBoard

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.