写点什么

教你搭建一个 Telegraf+Influxdb+Grafana 监控系统

  • 2022 年 6 月 14 日
  • 本文字数:2148 字

    阅读完需:约 7 分钟

本文分享自华为云社区《使用华为HECS云服务器打造Telegraf+Influxdb+Grafana 监控系统【华为云至简致远】》,作者: kaliarch 。

一 背景


在所有现有的现代监控工具中,TIG(Telegraf、InfluxDB 和 Grafana)可能是最受欢迎的工具之一。


该堆栈可用于监视大量不同的数据源:从操作系统(如 Linux 或 Windows 性能指标)到数据库(如 MongoDB 或 MySQL),Telegraf 是一个负责收集和聚合数据的代理,例如当前的 CPU 使用情况。InfluxDB 将存储数据,并将其公开给 Grafana,这是一种现代的仪表板解决方案。



本文利用华为 HECS 云服务器进行监控系统部署。

二 华为 HECS 主机开通


云耀云服务器(Hyper Elastic Cloud Server)是一种可以快速搭建且易于管理的新一代云服务器,提供从 1 核 1G 到 8 核 32G 的套餐并匹以相对的磁盘空间和公有云带宽, 助力中小企业便捷高效的在云端构建电商网站、Web 应用、小程序、APP 和各类开发测试、学习环境,相比普通云服务器更加简单易用(3 步即可完成购买),提供极简上云体验。


  • 便捷易用效率高


易开通,易搭建,易管理,一站式提升用户使用效率和体验:由华为瑶光智慧云脑提供技术支持,更优算力,稳定用云,更懂用户。


  • 弹性灵活配置优


根据业务诉求,灵活变化规格,无需手动输入参数;快速匹配业务与投入,带来更好地投资收益和极致体验。


在北京一区开通一台 2C4G 的按量云服务器,进行监控系统部署。



系统为 CenOS7.8


选择 VPC 与交换机,并选择安全组,勾选公网 IP



配置云服务器名称与用户名密码。



确认配置进行购买。




利用 mac 终端 ssh 连接云服务器进行测试。



至此华为云服务器已开通完成,接下来进行监控系统配部署。

三 组件


在进行监控系统部署前先了解下各组件。

3.1 Telegraf


Telegraf 是一个基于服务器的代理,从数据库、系统和物联网传感器收集和发送度量和事件。Telegraf 用 Go 编写,编译成一个没有外部依赖的二进制文件–需要非常少的内存,相当于监控指标采集 Agent。

3.2 Influxdb


InfluxDB 是一个由 InfluxData 开发的开源时序型数据库,专注于海量时序数据的高性能读、高性能写、高效存储与实时分析等,在 DB-Engines Ranking 时序型数据库排行榜上排名第一,广泛应用于 DevOps 监控、IoT 监控、实时分析等场景。


强大完整的生态,TICK 是一个集成了采集、存储、分析、可视化等能力的开源时序中台,由 Telegraf、 InfluxDB、Chronograf、Kapacitor 4 个组件以一种灵活松散组合、但紧密配合互为补充的方式构成,各个模块项目配合、互为补充,专注于 DevOps 监控、IoT 监控、实时分析等场景。

3.3 Grafana


Grafana 是一款用 Go 语言开发的开源数据可视化工具,可以做数据监控和数据统计,带有告警功能。目前使用 grafana 的公司有很多,如 paypal、ebay、intel 等。

四 监控系统部署


利用 xshell 连接云服务器公网 IP。

4.1 InfluxDB 部署


cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo[influxdb]name = InfluxDB Repository - RHEL \$releaseverbaseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stableenabled = 1gpgcheck = 1gpgkey = https://repos.influxdata.com/influxdb.keyEOF
sudo yum install influxdbsudo systemctl start influxdb
复制代码

4.2 Grafana 部署


wget https://dl.grafana.com/enterprise/release/grafana-enterprise-8.5.4-1.x86_64.rpmsudo yum install grafana-enterprise-8.5.4-1.x86_64.rpmsystemctl start grafana-server
复制代码

4.3 Telegraf 部署


cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo[influxdb]name = InfluxData Repository - Stablebaseurl = https://repos.influxdata.com/stable/\$basearch/mainenabled = 1gpgcheck = 1gpgkey = https://repos.influxdata.com/influxdb.keyEOF
sudo yum install telegraftelegraf config > telegraf.conf
复制代码

五 监控系统配置

5.1 创建库


登录 influxdb 创建 telegraf 库



创建用户。



/etc/influxdb/influxdb.conf 启用认证


[http]  # Determines whether HTTP endpoint is enabled.  enabled = true   # The bind address used by the HTTP service.  bind-address = ":8086"
# Determines whether user authentication is enabled over HTTP/HTTPS. auth-enabled = true
复制代码

5.2 配置 telegraf 将数据存储在 influxdb 中


编辑/etc/telegraf/telegraf.conf



  • 启用认证


## HTTP Basic Auth  username = "telegraf"  password = "password"
复制代码

5.3 配置 Grafana


启动 grafana 后修改密码,添加 influxdb 数据源,添加 dashboard。



使用 5955 进行 dashboard 导入。



其他


  • 再次 influxdb 未配置用户名密码,生产环境应配置。

  • 应该针对 telegraf 进行配置过滤指标已适应业务。

  • 需要在云服务器安全组开发 grafana 3000 端口,进行外部测试。


华为伙伴暨开发者大会 2022 火热来袭,大会采用线上直播+线下 80 余个分会场联动的形式,聚焦伙伴和开发者最为关切的话题、释放更多潜力,携手伙伴共同成就。

【精彩活动】

勇往直前·做全能开发者→12 场技术直播前瞻,8 大技术宝典高能输出,还有代码密室、知识竞赛等多轮神秘任务等你来挑战。即刻闯关,开启终极大奖!戳【勇往直前】踏上全能开发者晋级之路吧!

【技术专题】

未来已来,2022 技术探秘→聚焦华为各领域的前沿技术、重磅开源项目、创新应用实践。站在智能世界的入口,探索未来如何照进现实,干货满满点击了解


点击关注,第一时间了解华为云新鲜技术~

发布于: 43 分钟前阅读数: 7
用户头像

提供全面深入的云计算技术干货 2020.07.14 加入

华为云开发者社区,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态,方便开发者快速成长与发展,欢迎提问、互动,多方位了解云计算! 传送门:https://bbs.huaweicloud.com/

评论

发布
暂无评论
教你搭建一个Telegraf+Influxdb+Grafana 监控系统_云计算_华为云开发者联盟_InfoQ写作社区