k8s-prometheus监控】的更多相关文章

Prometheus监控k8s Prometheus监控k8s(1)-Prometheus简介 Prometheus监控k8s(2)-手动部署Prometheus Prometheus监控k8s(3)-prometheus部署grapfana展示 Prometheus监控k8s(4)-grafana监控k8s集群/node/资源对象 Prometheus监控k8s(5)-grafana用k8s插件展示Prometheus监控数据 Prometheus监控k8s(6)-prometheus监控in…
一般,我们从网上看到的帖子和资料, 都是用prometheus监控k8s的各项资源, 如api server, namespace, pod, node等. 那如果是自己的业务pod上的自定义metrics呢? 比如,一个业务pod开放了/xxx/metrics, 那么,如果用prometheus来抓取呢? 这里,我们就会用到kubernetes-pods这样一个job. 然后,在业务的deployment中,加annotation来配合抓取配置. 如下: prometheus-configma…
本文建立在你已经会安装prometheus服务的基础之上,如果你还不会安装,请参考:prometheus多维度监控容器 如果你还没有安装库k8s集群,情参考: 从零开始搭建基于calico的kubenetes 前言 kubernetes显然已成为各大公司亲睐的容器编排工具,各种私有云公有云平台基于它构建,那么,我们怎么监控集群中的所有容器呢?目前有三套方案: heapster+influxDB heapster为k8s而生,它从apiserver获取节点信息,每个节点kubelet内含了cAdv…
Prometheus 监控K8S 资源状态对象 官方文档:https://github.com/kubernetes/kube-state-metrics kube-state-metrics是一个简单的服务,它监听Kubernetes API服务器并生成有关对象状态的指标.它不关注单个Kubernetes组件的运行状况,而是关注内部各种对象的运行状况,例如部署,节点和容器. 采集了k8s中各种资源对象的状态信息: kube-state-metrics kube_daemonset_* kube…
Prometheus 监控K8S Node监控 Prometheus社区提供的NodeExporter项目可以对主机的关键度量指标进行监控,通过Kubernetes的DeamonSet可以在各个主机节点上部署有且仅有一个NodeExporter实例,实现对主机性能指标数据的监控,但由于容器隔离原因,使用容器NodeExporter并不能正确获取到宿主机磁盘信息,故此本课程将NodeExporter部署到宿主机. node_exporter:用于*NIX系统监控,使用Go语言编写的收集器 使用文档…
Prometheus 监控K8S集群中Pod 目前cAdvisor集成到了kubelet组件内,可以在kubernetes集群中每个启动了kubelet的节点使用cAdvisor提供的metrics接口获取该节点所有容器相关的性能指标数据.cAdvisor对外提供服务的默认端口为***4194***,主要提供两种接口: Prometheus格式指标接口:nodeIP:4194/metrics(或者通过kubelet暴露的cadvisor接口nodeIP:10255/metrics/cadviso…
主机数据收集 主机数据的采集是集群监控的基础:外部模块收集各个主机采集到的数据分析就能对整个集群完成监控和告警等功能.一般主机数据采集和对外提供数据使用cAdvisor 和node-exporter等工具. cAdvisor 概述 Kubernetes的生态中,cAdvisor是作为容器监控数据采集的Agent,其部署在每个节点上,内部代码结构大致如下:代码结构很良好,collector和storage部分基本可做到增量扩展开发.   cAdvisor.png 关于cAdvisor支持自定义指标…
目录 基于k8s集群部署prometheus监控ingress nginx 1.背景和环境概述 2.修改prometheus配置 3.检查是否生效 4.配置grafana图形 基于k8s集群部署prometheus监控ingress nginx 1.背景和环境概述 本文中涉及到的环境中.prometheus监控和grafana基本环境已部署好. 在nginx ingress controller的官方文档中对监控有相应描述 https://kubernetes.github.io/ingress…
目录 基于k8s集群部署prometheus监控etcd 1.背景和环境概述 2.修改prometheus配置 3.检查是否生效 4.配置grafana图形 基于k8s集群部署prometheus监控etcd 1.背景和环境概述 本文中涉及到的环境中.prometheus监控和grafana基本环境已部署好.etcd内置了metrics接口供收集数据,在etcd集群任意一台节点上可通过ip:2379/metrics检查是否能正常收集数据. curl -L http://localhost:237…
前文我们聊到了k8s的apiservice资源结合自定义apiserver扩展原生apiserver功能的相关话题,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/14279850.html:今天我们来聊一聊监控k8s集群相关话题: 前文我们使用自定义apiserver metrics server扩展了原生apiserver的功能,让其原生apiserver能够通过kubectl top node/pod 命令来获取对应节点或名称空间下pod的cpu和内…
Prometheus架构图 常见的镜像 pod 备注 kube-state-metric 用来收集K8S基本状态信息的监控代理 node-exporter 专门用来收集K8S运算节点基础信息,需要部署到所有运算节点 cadivsor 用来监控容器内部使用资源的重要工具 blackbox-exporter 用来帮助你探明你业务容器是否存活 新一代容器云监控平台P+G Exporters(可以自定义开发) HTTP接口定义监控荐和监控项的标签(维度)按一定的数据结构组织监控数据以时间序列被收集 Pr…
目录 容器监控与报警 Prometheus prometheus简介 prometheus系统架构 prometheus 安装方式 容器方式安装prometheus operator部署 克隆项目 创建账号规则 创建prometheus 设置端口转发 基于NodePort暴露服务 二进制方式安装 解压二进制压缩包文件 prometheus目录创建软链接 创建prometheus启动脚本 启动prometheus服务 访问prometheus web界面 node exporter 二进制方式安装…
使用Prometheus监控Kubernetes集群 监控方面Grafana采用YUM安装通过服务形式运行,部署在Master上,而Prometheus则通过POD运行,Grafana通过使用Prometheus的service地址来获取数据源. Prometheus的配置清单在kubernetes二进制程序包中就有,下载地址, 解压后有一个cluster目录,该目录里面的addons里面有所需要的插件,比如dns.dashboard以及prometheus等. 我用的就是它自带的这个prome…
0x00 k8s 的监控设计 k8s 默认以及推荐的监控体系是它自己的一套东西:Heapster + cAdvisor + Influxdb + Grafana,具体可以看 这里 . 包括 k8s 自身的 HPA (Horizontal Pod Autoscaler),默认从 Heapster 中获取数据进行自动伸缩.(顺便提一句,当你部署完 k8s 集群之后,如果从 Dashboard 中看不到监控数据,往往就是因为你没有部署 Heapster,或者网络层有问题, Dashboard 无法访问…
0x00 概述 有时候对于一个公司,k8s集群或是所谓的caas只是整个技术体系的一部分,往往这个时候监控系统不仅仅要k8s集群以及k8s中部署的应用,而且要监控传统部署的项目.也就是说整个监控系统不是部署在k8s cluster中.非in-cluster的prometheus怎么监控k8s是今天需要讨论的问题.在上一篇文章解读了prometheus提供的监控k8s的配置文件,我们知道主要是采集node,cadvisor,service,endpoint,ingress和pod 6个方面.集群外…
0x00 概述 Prometheus 是一个开源和社区驱动的监控&报警&时序数据库的项目.来源于谷歌BorgMon项目.现在最常见的Kubernetes容器管理系统中,通常会搭配Prometheus进行监控.主要监控: Node:如主机CPU,内存,网络吞吐和带宽占用,磁盘I/O和磁盘使用等指标.node-exporter采集. 容器关键指标:集群中容器的CPU详细状况,内存详细状况,Network,FileSystem和Subcontainer等.通过cadvisor采集. Kubern…
0x00 概述 Prometheus 是一个开源监控系统,它本身已经成为了云原生中指标监控的事实标准,几乎所有 k8s 的核心组件以及其它云原生系统都以 Prometheus 的指标格式输出自己的运行时监控信息.我在工作中也比较深入地使用过 Prometheus,最大的感受就是它非常容易维护,突出一个简单省心成本低.当然,这当中也免不了踩过一些坑,下面就总结一下. # 假如你没有用过 Prometheus,建议先看一遍 官方文档 0x01 接受准确性与可靠性的权衡 Prometheus 作为一个…
最近学习K8S和基于容器的监控,发现了如下的教程质量不错,记录下来以备参考 1. K8S最佳实战(包括了K8S的Prometheus监控和EFK日志搜集) https://jimmysong.io/kubernetes-handbook/practice/ 2. Prometheus-book https://yunlzheng.gitbook.io/prometheus-book/ 3.  Prometheus实战 https://songjiayang.gitbooks.io/prometh…
一.Prometheus介绍之前已经详细介绍了Kubernetes集群部署篇,今天这里重点说下Kubernetes监控方案-Prometheus+Grafana.Prometheus(普罗米修斯)是一个开源系统监控和警报工具,最初是在SoundCloud建立的.自2012年成立以来,许多公司和组织都采用了普罗米修斯,该项目拥有一个非常活跃的开发者和用户社区.它现在是一个独立的开放源码项目,并且独立于任何公司,为了强调该点并澄清项目的治理结构,Prometheus在2016年加入了云计算基金会,成…
由于容器化和微服务的大力发展,Kubernetes基本已经统一了容器管理方案,当我们使用Kubernetes来进行容器化管理的时候,全面监控Kubernetes也就成了我们第一个需要探索的问题.我们需要监控kubernetes的ingress.service.deployment.pod......等等服务,以达到随时掌握Kubernetes集群的内部状况. 此文章是Prometheus监控系列的第一篇,目的也很明确,旨在于寻找一套能够胜任kubernetes集群监控的架构. k8s监控方案调研…
0x00 概述 Grafana 是一个开源的,可以用于大规模指标数据的可视化项目,甚至还能对指标进行报警.基于友好的 Apache License 2.0 开源协议,目前是prometheus监控展示的首选.优点如下: 1.使用: 配置方便:支持Dashboard.Panel.Row等组合,且支持折线图.柱状图等多种图例 图表漂亮:可以选择暗黑系或纯白系,你也可以自己定义颜色 模板很多:grafana模板很活跃,有很多用户贡献的面板,直接导入就能用 支持多种数据源:grafana作为展示面板,支…
K8S最佳实战(包括了K8S的Prometheus监控和EFK日志搜集) https://jimmysong.io/kubernetes-handbook/practice/ Prometheus-book https://yunlzheng.gitbook.io/prometheus-book/ Prometheus实战 https://songjiayang.gitbooks.io/prometheus/content/ Prometheus中文文档 https://www.yangcs.n…
监控 1.资源指标和资源监控 一个集群系统管理离不开监控,同样的Kubernetes也需要根据数据指标来采集相关数据,从而完成对集群系统的监控状况进行监测.这些指标总体上分为两个组成:监控集群本身和监控Pod对象,通常一个集群的衡量性指标包括以下几个部分:   节点资源状态:主要包括网络带宽.磁盘空间.CPU和内存使用率 节点的数量:即时性了解集群的可用节点数量可以为用户计算服务器使用的费用支出提供参考. 运行的Pod对象:正在运行的Pod对象数量可以评估可用节点数量是否足够,以及节点故障时是否…
一.说明 最近使用Prometheus新搭建监控系统时候发现内存采集时centos6和centos7下内存监控指标采集计算公式不相同,最后采用统一计算方法并整理计算公式如下: 1 100-(node_memory_MemFree_bytes+node_memory_Cached_bytes+node_memory_Buffers_bytes)/node_memory_MemTotal_bytes*10 二.node-exporter常用指标含义(参考文档) https://www.gitbook…
简介 Prometheus 最初是 SoundCloud 构建的开源系统监控和报警工具,是一个独立的开源项目,于2016年加入了 CNCF 基金会,作为继 Kubernetes 之后的第二个托管项目. 特征 ​ Prometheus 相比于其他传统监控工具主要有以下几个特点: ​ 具有由 metric 名称和键/值对标识的时间序列数据的多维数据模型 ​ 有一个灵活的查询语言 ​ 不依赖分布式存储,只和本地磁盘有关 ​ 通过 HTTP 的服务拉取时间序列数据 ​ 也支持推送的方式来添加时间序列数据…
一:前言 一个服务上线了后,你想知道这个服务是否可用,需要监控.假如线上出故障了,你要先于顾客感知错误,你需要监控.还有对数据库,服务器的监控,等等各层面的监控. 近年来,微服务架构的流行,服务数越来越多,监控指标变得越来越多,所以监控也变得越来越复杂,需要新的监控系统适应这种变化. 以前我们用zabbix,StatsD监控,但是随着容器化,微服务的流行,我们需要新的监控系统来适应这种变化.于是监控项目Prometheus就应运而生. 二:Prometheus介绍 介绍 网站地址:https:/…
本章节主要涵盖了Alertmanager的工作机制与配置文件的比较详细的知识内容,由浅入深的给大家讲解. 警报一直是整个监控系统中的重要组成部分,Prometheus监控系统中,采集与警报是分离的.警报规则在 Prometheus 定义,警报规则触发以后,才会将信息转发到给独立的组件 Alertmanager ,经过 Alertmanager r对警报的信息处理后,最终通过接收器发送给指定用户,另外在 Alertmanager 中没有通知组的概念,只能自己对软件重新Coding,或者使用第三方插…
概述 当你的 Java 业务容器化上 K8S 后,如果对其进行监控呢?Prometheus 社区开发了 JMX Exporter 来导出 JVM 的监控指标,以便使用 Prometheus 来采集监控数据.本文将介绍如何利用 Prometheus 与 JMX Exporter 来监控你 Java 应用的 JVM. 什么是 JMX Exporter ? JMX Exporter 利用 Java 的 JMX 机制来读取 JVM 运行时的一些监控数据,然后将其转换为 Prometheus 所认知的 m…
1.简介 prometheus就是监控系统+TSDB(时间序列数据库),通过pull方式从exporter获取时间序列数据,存入本地TSDB,被监控端需安装exporter作为http端点暴露指标数据 prometheus server只提供一套内置查询语言PromQL,一个表达式浏览器和一个浏览数据的图形界面 2.prometheus部署 安装prometheus之前必须安装ntp时间同步,因为prometheus采集的T_S数据对系统时间的准确性要求 2.1 二进制安装 mkdir /app…
Prometheus监控Kubernetes资源与应用 目录 1 监控方案 2 2 监控指标 4 3 实现思路 4 4 在K8S中部署Prometheus 4 5 在K8S中部署Grafana与可视化 4 6 监控K8S集群Node与Pod 4 7 监控K8S资源对象 5 8 在K8S中部署Alertmanager 6 9 Prometheus告警 6 10 实验 7 1 监控方案 老的监控系统无法感知这些动态创建的服务,已经不适合容器化的场景 cAdvisor+Heapster+InfluxD…