prometheus 监控liunx主机

liunx 基础资源监控使用 exporter

什么是exporter

exporter 是一个采集监控数据并通过 prometheus 监控对外提供数据的组件,exporter 主要通过被监控对象提供的监控相关接口获取监控数据

安装部署

wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz

安装到对应目录

制作标准启动服务

 cat /etc/systemd/system/node_exporter.service
[Unit]
Description=node_export

[Service]
ExecStart=/op/xxx/node_export

[Install]
WantedBy=multi-user.target

启动

systemctl enable node_exporter.service

systemctl start node_exporter.service

在prometheus server 添加主机信息

scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: ‘shanghai‘
    static_configs:
    - targets: [‘x.x.x.x:9090‘]
    relabel_configs:
    - action: replace
      source_labels: [‘job‘]
      regex: (.*)
      replacement: $1
      target_label: idc
  - job_name: ‘node1‘
    static_configs:
    - targets: [‘x.x.x.x:9100‘]

重启prometheus 或者重载配置文件 kill -hup $pid

查看监控是否生效

exporter 常见的监控项

node_disk 磁盘
node_cpu cpu
node_memory 内存
node_network 网络
node_load1 系统负载

常用查询语句

cpu 使用率

100 - (avg by (instance) (irate(node_cpu{instance="xxx:9100", mode="idle"}[5m])) * 100)

机器平均负载

网卡接收

sum(rate(node_network_receive_bytes_total{instance="xxx:9100",job="server",device!="lo"}[5m]))

网卡出量

sum(rate(node_network_transmit_bytes{instance="xxx:9100",job="server",device!="lo"}[5m]))

系统负载

node_load1{instance="xxx:9100"} // 1分钟负载
node_load5{instance="xxx:9100"} // 5分钟负载
node_load15{instance="xxx:9100"} // 15分钟负载  

内存使用率

round((node_memory_MemTotal_bytes-(node_memory_MemFree_bytes+node_memory_Buffers_bytes+node_memory_Cached_bytes))/node_memory_MemTotal_bytes * 100)

原文地址:https://blog.51cto.com/sdsca/2471398

时间: 2024-11-05 18:42:23

prometheus 监控liunx主机的相关文章

基于prometheus监控k8s集群

本文建立在你已经会安装prometheus服务的基础之上,如果你还不会安装,请参考:prometheus多维度监控容器 如果你还没有安装库k8s集群,情参考: 从零开始搭建基于calico的kubenetes 前言 kubernetes显然已成为各大公司亲睐的容器编排工具,各种私有云公有云平台基于它构建,那么,我们怎么监控集群中的所有容器呢?目前有三套方案: heapster+influxDB heapster为k8s而生,它从apiserver获取节点信息,每个节点kubelet内含了cAdv

prometheus监控第二篇之告警alertmanager

kubernetes之prometheus监控第二篇-alertmanager监控告警:   在前期的博文中,我已经简单的介绍过了prometheus的安装,以及通过grafana来实施监控.这篇博文,我们更深入的介绍一下prometheus的监控.本篇博文主要分为以下几个知识点: 1. 使用prometheus监控ceph存储: 2. 学习简单的PromQL语言,在grafana里面根据业务自定义dashboard; 3. alertmanager自定义告警的配置:讲述邮件告警和企业微信告警:

Prometheus 监控K8S Node监控

Prometheus 监控K8S Node监控 Prometheus社区提供的NodeExporter项目可以对主机的关键度量指标进行监控,通过Kubernetes的DeamonSet可以在各个主机节点上部署有且仅有一个NodeExporter实例,实现对主机性能指标数据的监控,但由于容器隔离原因,使用容器NodeExporter并不能正确获取到宿主机磁盘信息,故此本课程将NodeExporter部署到宿主机. node_exporter:用于*NIX系统监控,使用Go语言编写的收集器 使用文档

Prometheus监控系列最佳实践

Prometheus是继kubernetes第二个从CNCF中毕业的项目,个人也是非常的喜欢这款通过数据指标发现和预测告警的开源监控平台,官方的话就不多说了,根据官网的介绍有以下功能,但是有些简短的概括了你也不一定知道,所以加了一些个人的白话官方截图 Prometheus之白话文一段 实现高纬度的数据模型 时间序列数据通过 metric 名和键值对来区分,这里你可以区分多(隔离)环境的监控指标. 所有的 metrics 都可以设置任意的多维标签,可以自定义添加多个,比如这个服务的监控属于哪个团队

prometheus 监控概述(一)

一.监控系统概论 监控系统在这里特指对数据中心的监控,主要针对数据中心内的硬件和软件进行监控和告警.企业的 IT 架构逐步从传统的物理服务器,迁移到以虚拟机为主导的 IaaS 云.无论基础架构如何调整,都离不开监控系统的支持. 不仅如此.越来越复杂的数据中心环境对监控系统提出了更越来越高的要求:需要监控不同的对象,例如容器,分布式存储,SDN网络,分布式系统.各种应用程序等,种类繁多,还需要采集和存储大量的监控数据,例如每天数TB数据的采集汇总.以及基于这些监控数据的智能分析,告警及预警等. 在

Nagios利用NSClient++监控Windows主机

一.简介 1.获取更多的NSClient原理,请参考NSClient++官方站点 NSClient++官网:http://www.nsclient.org/ 2.NSClient++与NRPE NSClient++的工作原理 NRPE的工作原理 Nagios对Windows主机的监控主要有三种方法 第一种是NSclient++ 第二种是NRPE 第三种是SNMP(不是很常用) NSclient++与nrpe最大的区别就是: 1.被监控机上安装有nrpe,并且还有插件,最终的监控是由这些插件来进行

Monitorix监控Linux主机图文详解

Monitorix监控Linux主机图文详解 Monitorix简介 Monitorix 是一款自由开源的轻巧型系统监视工具.使用 Monitorix你可以随时掌控 CPU 负载及温度.内存占用.活动进程.磁盘使用及温度.网络设备流量.网络服务等全方位的系统信息.Monitorix 需要 Apache Web 服务器来显示这些系统信息图表.所以它特别适合在 Linux 服务器上面使用. 下面是我安装的步骤 1.安装的环境和需要的rpm包 我是在CentOS 6.4下面安装的CentOS 5可以使

Nagios利用NSClient++监控Windows主机(4)

在Nagios的libexec下有check_nt这个插件,它就是用来检查windows机器的服务的.其功能类似于check_nrpe.不过还需要搭配另外一个软件NSClient++,它则类似于NRPE.我们需要下载NSClient合适的版本,然后安装在被监控的windows主机上. Overview of NRPE NSClient++的原理如下图: 可以看到NSClient与nrpe最大的区别就是: NRPE: 被监控机上安装有nrpe,并且还有插件,最终的监控是由这些插件来进行的.当监控主

Nagios中NSClient++监控Windows主机

Nagios中自身是不提供相应的监控,它实现监控是依赖于SNMP协议或者是相关的插件来完成相应的监控的,而平时为了部署快速方便,在Linux主机上一般多用NRPE扩展,而在Windows的主机上使用比较多的是NSClient++扩展,两者的区别是NRPE还是通过插件完成监控,而NSClient++没有插件,是由Nagios监控主机发送监控请求给NSClient++来完成监控任务的,使用NSClient++可以满足日常的Windows主机监控,但是缺点是不够灵活.这个具体可以参看:http://j