采用的是Heapster+Influxdb+Grafana建立集群性能监控平台。
据说Heapster需要与Kubernetes Master进行安全连接,所以需要对集群进行安全认证,我的集群环境已经进行了安全认证。
非安全认证的集群能否使用Heapster,我没有验证。
集群的安全认证可以参考我的博客kubernetes学习记录(9)——集群基于CA签名的安全设置(可能有坑,这块还没研究的特别明白,网上的各种认证方式都有,我是综合参考的,不一定完美)
参考博客Kubernetes heapster监控插件安装文档与在开启TLS的Kubernetes1.6集群上安装heapster进行整理。
从作者分享的地址下载所需的镜像文件,Push到自己的本地镜像仓库中。
index.tenxcloud.com/jimmy/heapster-amd64:v1.3.0-beta.1
index.tenxcloud.com/jimmy/heapster-influxdb-amd64:v1.1.1
index.tenxcloud.com/jimmy/heapster-grafana-amd64:v4.0.2
yaml源码来源自kubernetes GitHub。
安装Heapster
heapster-deployment.yaml
修改- --source为自己的master apiserver访问地址
修改image地址
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: heapster
namespace: kube-system
spec:
replicas: 1
template:
metadata:
labels:
task: monitoring
k8s-app: heapster
spec:
containers:
- name: heapster
image: 192.168.121.140:5000/heapster-amd64
imagePullPolicy: IfNotPresent
command:
- /heapster
- --source=kubernetes:http://192.168.121.143:8080
- --sink=influxdb:http://monitoring-influxdb:8086
- --metric_resolution=60s
heapster-service.yaml
apiVersion: v1
kind: Service
metadata:
labels:
task: monitoring
# For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons)
# If you are NOT using