zoukankan      html  css  js  c++  java
  • k8s-Prometheus监控pod指标数据

    监控pod资源

    cadvisor由谷歌开源,cadvisor不仅可以搜集一台机器上所有运行的容器信息,还提供基础查询界面和http接口,方便其他组件如Prometheus进行数据抓取,cAdvisor可以对节点机器上的资源及容器进行实时监控和性能数据采集,包括CPU使用情况、内存使用情况、网络吞吐量及文件系统使用情况。
    
    k8s 1.12之前cadvisor集成在node节点的上kubelet服务中,从1.12版本开始分离为两个组件,因此需要在node节点单独部署cadvisor。
    

    https://github.com/google/cadvisor

    cadvisor镜像准备

    1、cd /opt
    
    2、docker load -i cadvisor_v0.36.0.tar.gz
    
    3、docker tag gcr.io/google_containers/cadvisor:v0.36.0 harbor.linux.com/base/cadvisor:v0.36.0
    
    4、docker push harbor.linux.com/base/cadvisor:v0.36.0
    

    启动cadvisor容器

    1、docker run 
      --volume=/:/rootfs:ro 
      --volume=/var/run:/var/run:ro 
      --volume=/sys:/sys:ro 
      --volume=/var/lib/docker/:/var/lib/docker:ro 
      --volume=/dev/disk/:/dev/disk:ro 
      --publish=8080:8080       #指定cadvisor的监听端口
      --detach=true 
      --name=cadvisor           #指定容器名称
      harbor.linux.com/base/cadvisor:v0.36.0
    #容器的所有数据是存放在宿主机的 /var/lib/docker/ 目录下,所以把宿主机的目录映射到 cadvisor 容器中,让 cadvisor 获取其他容器的运行数据
    
    2、每个node节点都需要运行此容器
    

    prometheus采集node节点上所有pod的数据

    1、vim /usr/local/prometheus/prometheus.yml
    scrape_configs:
      - job_name: 'kubernetes-k8s-pods'     #采集指定node节点上所有pod的数据
        static_configs:
        - targets: ['192.168.3.144:8080','192.168.3.145:8080','192.168.3.146:8080']
    
    2、systemctl restart prometheus.service
    

    grafana添加监控pod的模板

    导入官方的395、893模板即可
    
    1、导入指定ID的模板
    
    2、指定数据源为prometheus
    
  • 相关阅读:
    SCAU 9504 面试
    SCAU 9503 懒人选座位
    SCAU 8628 相亲
    SCAU 10691 ACM 光环
    SCAU 8626 原子量计数
    SCAU 10674 等差对
    HDU ACM 1048 The Hardest Problem Ever (水题)
    SCAU 9502 ARDF
    SCAU 10686 DeathGod不知道的事情
    SCAU 8629 热身游戏(高精度)
  • 原文地址:https://www.cnblogs.com/dongzhanyi123/p/13330560.html
Copyright © 2011-2022 走看看