搭建炫酷的服务器监控平台

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 搭建炫酷的服务器监控平台

本文所使用的工具为如下:


Telegraf「数据采集」


InfluxDB「数据存储」


Grafana「数据可视化」



一般的我们如果需要搭建服务器监控平台,需要去读取服务器实时的内存信息,CPU状态等等,就正如我们上一篇使用python从零搭建服务器监控系统一样。如果大家没看过之前的那篇文章,推荐大家去看看。里面有搭建监控系统的整个思路。总的来说就是数据采集,数据存储,数据可视化这三个方面。


这次我们使用的是Influxdata公司提供的全家桶。Telegraf、InfluxDB、Grafana。


Telegraf是专门用来采集数据的,在这里我们也有自己采集数据的办法(大家还记得psutils吗?),这里我们不再过多赘述。


InfluxDB是一款时间序列数据库,用来存储log日志等这些有时间信息的数据。


Grafana这就是好看的原因了,毕竟界面都在这写的好好的~https://grafana.com/grafana


这里我们使用Docker去快速搭建环境,如果你Docker还没装的话,可以参照Docker入门这篇文章


Telegraf「数据采集」


首先我们使用Docker去安装InfluxDB:

docker run -d -p 8086:8086 --name=influxdb influxdb

640.jpg


dcoker会自动从仓库下载最新版本的influxdb镜像,后台运行一个名为influxdb的容器并映射主机8086端口到容器8086端口。

若想将数据存储到宿主机而非容器内,可使用以下命令启动挂载本地目录到容器内。

# $pwd为当前工作目录,可替换为其它宿主机目录

docker run -d -p 8086:8086 -v $PWD:/var/lib/influxdb --name=influxdb influxdb


然后我们访问这个接口:

curl -G http://localhost:8086/query --data-urlencode "q=show databases"


640.png

能收到以下这样的结果就证明我们运行成功了


关于我们如何启动容器我们之前在docker那个章节有讲过,启动暂停重启:docker start XXX、docker stop XXX、docker restart XXX

我们现在启动influxdb


640.png



InfluxDB「数据存储」


下面我们来安装Telegraf:

wget https://dl.influxdata.com/telegraf/releases/telegraf-1.6.3-1.x86_64.rpm

640.png

安装 

sudo yum localinstall telegraf-1.6.3-1.x86_64.rpm

640.jpg


我们可以修改Telegraf的配置文件(/etc/telegraf/telegraf.conf)来配置它数据输出至influxdb。

vim /etc/telegraf/telegraf.conf

打开上面四行注释


640.jpg

对于telegraf,我们可以使用systemctl指令启动和关闭telegraf:

# 启动

systemctl start telegraf

# 停止

systemctl stop telegraf



Grafana「数据可视化」


最后一步使用docker安装grafana:

docker run -d -p 3000:3000 --name=grafana grafana/grafana

640.png


初次启动,grafana会创建数据库,时间稍长,稍后即可访问:

http://localhost:3000

打开grafana登录页面。

输入默认用户名密码登录(admin)

你需要自己创建自己的用户名和密码。

640.jpg

640.jpg

添加数据源:


640.jpg640.jpg

配置:

url需配置成正确的宿主机ip和端口(防火墙需放行8086),若不想暴露数据库端口,可换成influxdb容器的ip地址(需自行进入容器查看,容器重启后可能会发生变化)避免数据库暴露至公网。


InfluxDB Details需填写

数据库名:telegraf

用户名:root

密码:root


640.jpg


640.jpg

下面要回到主页创建面板:

640.jpg

640.jpg

640.jpg

640.jpg

640.jpg

640.jpg

640.jpg

(因为这个机器没怎么使用,所以CPU的占用率会比较低)

当然,我们也可以设置预警信息,当cpu使用超过百分之多少的时候报警:

640.jpg


我们看一下设置好使用后的效果:

640.jpg


怎么样/看起来是不是很炫酷?所有的数据都一目了然。你也来试试吧!记住,他们是Influxdata全家桶!

相关实践学习
通过可观测可视化Grafana版进行数据可视化展示与分析
使用可观测可视化Grafana版进行数据可视化展示与分析。
相关文章
|
4月前
|
存储 监控 固态存储
【vSAN分布式存储服务器数据恢复】VMware vSphere vSAN 分布式存储虚拟化平台VMDK文件1KB问题数据恢复案例
在一例vSAN分布式存储故障中,因替换故障闪存盘后磁盘组失效,一台采用RAID0策略且未使用置备的虚拟机VMDK文件受损,仅余1KB大小。经分析发现,该VMDK文件与内部虚拟对象关联失效导致。恢复方案包括定位虚拟对象及组件的具体物理位置,解析分配空间,并手动重组RAID0结构以恢复数据。此案例强调了深入理解vSAN分布式存储机制的重要性,以及定制化数据恢复方案的有效性。
107 5
|
27天前
|
存储 人工智能 弹性计算
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理。通过合理优化资源分配、利用自动伸缩及高效数据管理,ECS能显著提升AI系统的性能与效率,降低运营成本,助力科研与企业用户在AI领域取得突破。
45 6
|
1月前
|
安全 开发工具 Swift
Swift 是苹果公司开发的现代编程语言,具备高效、安全、简洁的特点,支持类型推断、闭包、泛型等特性,广泛应用于苹果各平台及服务器端开发
Swift 是苹果公司开发的现代编程语言,具备高效、安全、简洁的特点,支持类型推断、闭包、泛型等特性,广泛应用于苹果各平台及服务器端开发。基础语法涵盖变量、常量、数据类型、运算符、控制流等,高级特性包括函数、闭包、类、结构体、协议和泛型。
29 2
|
3月前
|
Cloud Native Java 编译器
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
随着云计算技术的不断发展,云服务商们不断推出高性能、高可用的云服务器实例,以满足企业日益增长的计算需求。阿里云推出的倚天实例,凭借其基于ARM架构的倚天710处理器,提供了卓越的计算能力和能效比,特别适用于云原生、高性能计算等场景。然而,有的用户需要将传统基于x86平台的应用迁移到倚天实例上,本文将介绍如何将基于x86架构平台的应用迁移到阿里云倚天实例的服务器上,帮助开发者和企业用户顺利完成迁移工作,享受更高效、更经济的云服务。
108 13
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
|
2月前
|
固态存储 开发者
阿里云服务器选购之国际版和国内版的平台对比及建议
阿里云服务器选购之国际版和国内版的平台对比及建议
|
7月前
|
弹性计算 安全 定位技术
幻兽帕鲁服务器搭建攻略:【阿里云平台快速上手指南】
2024年,火爆畅销的《幻兽帕鲁》游戏让无数玩家着迷不已!那么,您是否急切想要拥有一个能与伙伴们一起畅快玩耍的游戏服务器呢?现在就跟随若城的脚步,一起动手搭建一个属于自己的《幻兽帕鲁》服务器吧!让这个新年有心意
130 4
|
7月前
|
弹性计算 Linux 数据安全/隐私保护
幻兽帕鲁服务器搭建攻略:阿里云平台快速上手指南
2024年,火爆畅销的《幻兽帕鲁》游戏让无数玩家着迷不已!那么,您是否急切想要拥有一个能与伙伴们一起畅快玩耍的游戏服务器呢?现在就跟随若城的脚步,一起动手搭建一个属于自己的《幻兽帕鲁》服务器吧!让这个新年有心意, 让这个寒假更有趣
75182 10
|
5月前
|
弹性计算 运维 监控
可观测性体系问题之实现告警的自愈如何解决
可观测性体系问题之实现告警的自愈如何解决
48 1
|
6月前
|
机器学习/深度学习 人工智能 数据处理
人工智能平台PAI产品使用合集之PAI-DSW实例服务器ping不通google.com,该如何排查
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
5月前
|
机器学习/深度学习 SQL 人工智能
人工智能平台PAI使用问题之如何在阿里云服务器上搭建自己的人工智能
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。