kubernetes 官方可选监控 Heapster

官方文档中一段描述如下,推荐使用监控去计算pod的cpu和内存占用情况:

监控计算资源使用

Pod 的资源使用情况被报告为 Pod 状态的一部分。

如果为集群配置了 可选监控,则可以从监控系统检索 Pod 资源的使用情况。

首先下载官方的yaml,一共4个,记得选择和你k8s一样的版本,我这里是15.4,
https://raw.githubusercontent.com/kubernetes/heapster/v1.5.4/deploy/kube-config/rbac/heapster-rbac.yaml

# 创建目录 && 下载文件:
mkdir -p  /opt/setups/heapster  && \
cd  /opt/setups/heapster && \
curl -L https://raw.githubusercontent.com/kubernetes/heapster/v1.5.4/deploy/kube-config/influxdb/grafana.yaml >> grafana.yaml && \
curl -L https://raw.githubusercontent.com/kubernetes/heapster/v1.5.4/deploy/kube-config/influxdb/heapster.yaml >> heapster.yaml && \
curl -L https://raw.githubusercontent.com/kubernetes/heapster/v1.5.4/deploy/kube-config/influxdb/influxdb.yaml >> influxdb.yaml && \
curl -L https://raw.githubusercontent.com/kubernetes/heapster/v1.5.4/deploy/kube-config/rbac/heapster-rbac.yaml >> heapster-rbac.yaml 

然后需要修改一些内容才能正常部署:

  • 替换镜像源:
    k8s.gcr.io 全部修改为 registry.cn-hangzhou.aliyuncs.com/google_containers
  • influxdb.yaml:
# 就改这一小块,改成NodePort暴露端口,30301,这样方便
spec:
  type: NodePort
  ports:
  - nodePort: 30301
    port: 8086
    targetPort: 8086
  selector:
    k8s-app: influxdb
  • grafana.yaml:
# 同样的给一个NodePort端口 30102
  type: NodePort
  ports:
  - nodePort: 30102
    port: 80
    targetPort: 3000
  selector:
    k8s-app: grafana
  • heapster.yaml:
# 这个后面加一些参数
 - --source=kubernetes:https://kubernetes.default?inClusterConfig=false&useServiceAccount=true&auth=&kubeletPort=10250&kubeletHttps=true&insecure=true
# 这个填写 masterIP+influxdb 的端口
 - --sink=influxdb:http://192.168.146.143:30301

heapster-rbac.yaml

roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole 
  name: cluster-admin # 这里改动一下 不然权限不够

创建相关资源:

kubectl create -f /opt/setups/heapster 

ok了


kubernetes 官方可选监控 Heapster_第1张图片

你可能感兴趣的:(kubernetes 官方可选监控 Heapster)