圖形化展現度量指標的實現須要集成k8s的另一個Addons組件: Heapster 。node
Heapster原生支持K8s(v1.0.6及之後版本)和 CoreOS ,而且支持多種存儲後端,好比: InfluxDB 、 ElasticSearch 、 Kafka 。git
下載源包和images文件github
下載地址https://github.com/kubernetes/heapster/archive/v1.2.0.zip,將包copy到kubernetes master節點上去.docker
打開deploy/kube-config/influxdb目錄看到5個部署文件後端
參看這幾個 yaml文件,預先把須要pull的image在nodes節點上準備好api
docker pull kubernetes/heapster:canary |
運行建立(master)google
而後在master節點上運行spa
kubectl create -f deploy/kube-config/influxdb/ |
經過kube get pods -n kube-system發現heapster-zm85m沒有運行起來,基於下面命令查看日誌日誌
kubectl logs -f pods/heapster-zm85m -n kube-system |
發現錯誤
編輯heapster-control.yaml文件,把其中source這行替換成本機的api server ip並添加?inClusterConfig=false
刪除以前建立的pod從新create一遍.
spec: containers: - name: heapster image: kubernetes/heapster:canary imagePullPolicy: Always command: - /heapster - --source=kubernetes:http://<api server ip>:<port>?inClusterConfig=false - --sink=influxdb:http://monitoring-influxdb:8086
最後的yaml文件:
[root@k8s-master influxdb]# cat heapster-controller.yaml apiVersion: v1 kind: ReplicationController metadata: labels: k8s-app: heapster name: heapster version: v6 name: heapster namespace: kube-system spec: replicas: 1 selector: k8s-app: heapster version: v6 template: metadata: labels: k8s-app: heapster version: v6 spec: containers: - name: heapster image: kubernetes/heapster:canary command: - /heapster - --source=kubernetes:http://10.182.169.33:8080?inClusterConfig=false - --sink=influxdb:http://monitoring-influxdb:8086
# kubectl delete -f deploy/kube-config/influxdb/ # kubectl create -f deploy/kube-config/influxdb/ |
再次打開kubernetes dashboard,就能夠看到獲取的監控數據啦