15分钟无门槛高效构建服务器性能监控系统!

2024-01-09

服务器监控是每个互联网厂商都重视并且想要尽可能做好的事情,从数据收集、数据处理、数据可视化最终再到实时监控告警,这一系列复杂的流程可能耗费企业大量的人力和时间,以至于某些时候因为其复杂性高无法达到预期的监控效果。而当事故发生时才发现,由于监控体系的不完善造成了很多不必要的损失, 让我们追悔莫及。

为了解决企业的此类烦恼,七牛云推出了快速构建服务器性能监控报警的解决方案。七牛云开源的日志/信息采集工具 logkit 配合七牛云 Pandora 大数据工作流引擎和时序数据库服务,可以方便地对大量服务器的海量性能指标数据进行全方位监控。而整个部署和使用的流程,您完整体验的时间仅需15分钟。

监控的内容

logkit 目前收集的机器性能指标主要包括十大模块, 上百个指标

  • system 模块: 监控 load1 load5 load15 用户数 cpu 核数 以及 系统启动时间 等.
  • processes 模块: 监控处于各种状态的进程数量, 比如 运行中 / 暂停 / 可中断 / 空闲 / 挂起 等状态的进程数量等等.
  • netstat : 监控处于各种状态的网络连接数, 比如 syn send / syn recv 等状态的网络连接数.
  • net : 监控网络设备的状态,比如 收发包的数量 收发包的字节数 等.
  • mem : 监控内存的实时状态.
  • swap : 监控 swap 分区的状态,比如 换入 换出 使用率 空闲大小 等.
  • cpu : 监控 CPU 的实时状态,包括 cpu 用量 中断时间占比 等.
  • kernel : 监控内核中断次数、上下文切换次数、fork 的进程数等.
  • disk : 监控磁盘的使用情况, 包括 磁盘用量 inode 使用情况 等.
  • diskio : 监控磁盘读写状态, 包括 读写次数 总用时 等.

各项指标的详细介绍请参考 logkit 系统信息采集模块介绍和配置

监控效果图

部署完成后,您可以直接载入我们为您构建的监控模板,最终看到的效果图如下。

1. 模板变量

模板变量可以起到过滤数据的作用, 比如通过 hostname 这个模板变量可以具体查看某台特定的服务器上的 metric 信息,这样即使有数十上百台机器您也可以轻松管理。同样的,对于某台机器的一些具体的资源,如磁盘、CPU、网卡等等,也有相应的模板变量可以选择。

2. 全局概览

全局信息概览可以看到服务器的一些基本信息,比如系统 load 值、内存使用率、磁盘使用率、网络带宽等。以最直观的方式全局把控整个系统的运行状态,方便在基础资源不够时及时发现、及时处理。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

3. CPU Usage 信息

CPU Usage 顾名思义,就是指 CPU 的使用率,通过这幅图可以看到系统中 user system 等对于系统 CPU 资源的占用情况。当 CPU 使用率较高且整体运行平稳时,说明您的业务非常健康;若 CPU 的用量曲线波动较大,那就说明服务有可以优化的地方,或者可以添加报警,在业务高峰时及时添加资源。

4. 系统 load 值与进程

在这张图中你可以看到不同的统计时间段中系统的负载情况,可以根据负载大小设置告警阈值。同时也可以看到对应的进程数量, 如运行的进程数、在休眠中的进程数,并且可以看到值得关注的一些异常进程,如僵尸进程(zombies)以及被阻塞的进程(blocked)。当存在僵尸进程时说明存在服务异常,需要及时关注并处理。

5. 内存用量

通过这张图可以看到总内存(total)、已使用内存(used)、空闲内存(free)等信息, 同理, 也可以针对这些信息设置告警,及时发现系统性能短板。另一方面要注意,当系统 free 的内存少或接近零,而 cache 部分的内存多时,说明这部分业务对内存缓存较为依赖,虽然服务仍然可以正常运行,但此时极有可能程序没法最大限度利用内存缓存, 导致性能出现了问题。

6. kernel 信息

kernel 基本信息中可以看到内核的上下文切换(context switch)、 fork 的进程数(forks)、 已打开(opened)/最大(max)句柄数等信息。通常情况下服务器打开的句柄数都有一个上限,超过了这个限制服务就会出现问题,而服务器的高并发访问极有可能导致打开的句柄数过多,实时监控句柄数有助于查看服务运行状况。

7. CPU 的状态

在这张图中可以看到服务器中各个的 CPU 的状态,是对于 CPU Usage 的详细拓展。CPU 是一种弹性资源,即使使用量达到 100% 也不会出现直接的服务崩溃,但是极有可能导致服务响应变得极慢,密切关注 CPU 用量,并对于 CPU 设置报警监控也是运维必不可少的一环。

8. 网络相关

  • TCP

这张图展示了系统中处于各个状态的 TCP 连接数量,比如 SYN SENT FIN WAIT 等, 利用这些数据可以及时发现请求的健康状态,常见的如出现大量的 FIN WAIT CLOST WAIT 等状态的连接,说明出现了很多慢请求或连接有问题,需要排查,通常这一类指标可以结合打开文件句柄数一同查看。

  • ICMP、IPV4

这张图中可以看到 icmp ipv4 等网络协议的收发状态。

  • UDP

这张图中可以看到 udp 数据报 以及 udp 错误数目等,如错误数过多,表示网络状况不佳。

  • 各个网卡的状态

网卡状态展示了包括网卡收发数据的速度(Network Usage)、收发包的速度(Network Packets)、丢包率(Network drops)以及出错频率(Network errors)等信息。

9. 交换分区状态

这张图展示了交换分区的换入换出状态、交换分区的使用情况等.

10. 磁盘用量

磁盘的重要性毋庸置疑,磁盘爆满可能会对服务产生毁灭性打击,无疑也是需要监控的重点。

  • 磁盘 IO

这张图给出了当前各个磁盘的 IO 信息,包括磁盘请求频率(Disk IO requests)、读写速度(Disk IO bytes)以及读写时间(Disk IO time)等,当磁盘 IO 过高时,也有可能存在性能问题,需要关注。

  • 磁盘使用情况

这张图中可以看到磁盘总空间(total)与已使用空间(used), 实时展现磁盘使用情况,并且可以设置告警机制,当磁盘的剩余空间少于某个阈值时及时告警。

快速开始

下面就 Pandora 提供的组件来搭建一个运维监控应用,搭建这个应用只需要四步。

!> 注意,为了顺利使用 Pandora 的各项服务,第一,需要一个已经实名认证的七牛账户;第二,申请开通 Pandora 的使用权限;

第一步:下载&启动 logkit

f="https://github.com/qiniu/logkit/wiki/Download">logkit下载页面 下载对应操作系统的 logkit 应用程序。logkit 的详细配置可以参考 logkit Wiki , 当然如果没有特殊需求,只需要使用默认的配置即可。 启动 logkit,输入以下命令./logkit -f logkit.conf

第二步:配置 metric 采集收集器

借助 logkit 的可视化配置界面,可以很方便的配置需要采集的 metric 信息,在浏览器中输入配置的 url 访问 logkit 管理中心 (默认为 http://127.0.0.1:3000 )。

  • 1.打开 logkit 配置助手后,点击 增加系统信息采集收集器 按钮,进入编辑收集器页面。

  • 2.首先选择要收集的 Metric 信息类型,默认收集全部信息,点击下拉框可以选择不再收集。

  • 3.然后选择每个想要收集的 Metric 的字段,通过“全选/全不选“按钮可以快速选中/取消选中所有的字段。注意:请至少为每个 Metric 信息选择一个字段;

  • 4.然后填写相关 Metric 的配置信息,注意:有些 Metric 没有可以填写的配置,所以没有显示;

  • 5.填写发送的目的地,将数据发往 pandora 平台时,选择 pandora sender , 填入自己 pandora 账号的 ak/sk , 填入 reponame ,如果没有特殊需求,其他的选项可以使用默认值, 详细的 sender 信息,可以参考 Senders Wiki

  • 6.最后可以浏览一下配置文件的内容,避免之前有忽略的错误,同时可以自定义配置 metric 信息收集的频率,默认是 3s

  • 7.点击“确认并提交“后,一条收集 metric 信息的 runner 就创建成功了。

第三步: 配置 Grafana 数据源

在七牛应用市场打开 Grafana 应用,然后按照以下步骤配置:

创建应用
  • 1.首先登陆七牛 portal 的应用平台 找到 Grafana

  • 2.点击立即部署按钮开始创建 Grafana 应用

输入您的 app 名和应用别名,选择部署区域(注意!目前 TSDB 的数据在 华东 ,所以 Grafana 只可部署在华东区域),点击确定创建

应用名称:账号内唯一应用名称,且只能满足以下条件:(1. 只能包含字母、数字和减号,首尾字符只能为字母或数字。 2. 字符长度不能超过 30) 应用别名:供显示使用的标题名。

  • 3.等待 app 启动后,输入密码(密码长度必须>=6),点击 确认配置
注意,因为 Grafana App 具有公网域名,所以建议设置一个高强度的密码(此密码在进入 Grafana App 后可以修改)。

  • 4.访问 Grafana 进入 Grafana 页面
注意,该 Grafana App 是暴露在公网上的,可收藏地址用于后续访问。

配置 TSDB 数据源

在 Grafana 中使用 Pandora TSDB 之前,我们需要先添加数据源。

1.登录 Grafana,点击菜单中的 Data Sources

2.点击 Add data source 按钮

3.在 Name 填入数据源的名字, Type 选择 Pandora TSDB

4.填入相应参数,点击添加按钮即可 如果在上面 metric收集器 sender 配置中没有额外配置 pandora_tsdb_reponame 的话,此处的 Name 填写上面配置的 pandora_repo_name

注意: url 必须填入 http://localhost:8999

第四步: 导入 Grafana dashboard 配置文件

下载 Grafana dashboard 配置文件

下载配置文件模板 https://pandora-dl.qiniu.com/MetricMemo.json

将下载的 dashboard 导入 Grafana

至此,您就可以看到一张酷炫的可视化运维监控图啦,当然没有报警的监控是不完整的,下面我们配置一下监控的告警。

配置 Grafana 告警

1.就在 Grafana上,我们为您提供了完善的报警功能。设置 Grafana 报警的 Channel

2.点击 New Channel 按钮,可以在 Type 选择包括 Slack, Email 邮箱,Webhook 等在内的多种报警方式。

3.以 cpu usage 高于 30% 发邮件报警为例(仅做测试使用,实际生产环境使用时请结合实际情况配置), 配置方法为: 编辑相应的 panel , 选择 Alert , 配置需要监控的查询及其阈值。

4.点击 State history 可以看到报警历史。

5.当有报警信息产生时,可以收到报警邮件。

更多关于 Grafana 告警功能的配置可以参考 Grafana 告警文档

至此,一个详细的服务器性能监控系统搭建完成啦,快去体验吧!

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

15分钟无门槛高效构建服务器性能监控系统! 的相关文章

随机推荐

  • vcpkg安装zlmediakit(windows环境)

    文章目录 一 简介 二 vcpkg安装 1 vcpkg源码下载 2 vcpkg安装 三 安装zlmediakit 1 默认安装开启特性 core mp4 openssl webrtc 2 安装全部特性zlmediakit 包括webrtc
  • 职场人最忌讳的10件事:从人性的角度揭示职场中的禁忌行为

    职场人最忌讳的10件事 从人性的角度揭示职场中的禁忌行为 在职场中 每个人都有自己的行为准则和价值观 然而 有些事情却是普遍被认为不可取的 从人性的角度来看 这些事情可能会触碰到人们的某些心理或道德底线 导致他人产生反感或不信任 本文将探讨
  • 服务器超线程的好处

    服务器超线程的好处 1 提高性能 超线程通过提高整体系统吞吐量显着提高服务器性能 通过允许多个线程在单个物理内核上同时执行 超线程减少了空闲时间并最大限度地利用了可用资源 这会加快任务执行速度并缩短应用程序的响应时间 尤其是在多线程工作负载
  • 外包干了2个月,技术退步明显...

    先说一下自己的情况 大专生 18年通过校招进入武汉某软件公司 干了接近4年的功能测试 今年年初 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了四年的功能测试 已经让我变得不思进取 谈了2年的女朋友
  • Kali Linux 安全渗透核心总结,444页核心知识点

    就像IT人离不开Linux系统一样 网安人也离不开Kali Linux 作为攻击性防御和渗透测试的代名词 越来越多的人开始学习Kali 如果你也对kali感兴趣 又想深入了解这方面内容 不妨收藏一下这份Kali Linux安全渗透教程 共4
  • 环信IM Demo登录方式如何修改为自己项目的?

    在环信即时通讯云IM 官网下载Demo 本地运行只有 手机 验证码 的方式登录 怎么更改为自己项目的Appkey和用户去进行登录呢 本文以Web端为例 教大家如何更改代码来实现 1 VUE2 Demo vue2 demo源码下载 vue2
  • Linux中的磁盘空间管理:df命令的详解与应用

    在Linux操作系统中 磁盘空间的管理是系统管理员和普通用户都需要面对的重要任务 为了帮助用户更好地理解和管理磁盘空间 Linux提供了一系列工具 其中最常用 最直观的莫过于df命令 df命令 全名为 disk free 它是一个用于显示磁
  • JMeter使用BeanShell断言

    BeanShell简介 BeanShell 是使用Java语法的一套脚本语言 在JMeter的多种组件中都有BeanShell的身影 如 定时器 BeanShell Timer 前置处理器 BeanShell PreProcessor 采样
  • _update_by_query

    POST your index update by query script source ctx source new field updated value query match your field your value
  • 微信getAccessToken限制问题

    微信getAccessToken限制问题 错误代码 45009 错误信息 调用分钟频率受限 https developers weixin qq com miniprogram dev OpenApiDoc mp access token
  • 世微 AP2402降压恒流驱动IC LED刹车灯方案 全亮 半亮 瀑闪

    AP2402 是一款 PWM 工作模式 高效 率 外围简单 内置功率管 适用于 5 100V 输入的高精度降压 LED 恒流驱动芯片 输 出功率可达 15W 电流 1 5A AP2402 可实现三段功能切换 通过 MODE1 2 3 切换三
  • 题解 | #链表中的节点每k个一组翻转#C++暴力遍历解法

    求大家投下我们腾讯吧 发的一堆sp被鸽了 大数据面试题 Hive 华为14A还是保研华中科技大学 求大家投下我们腾讯吧 发的一堆sp被鸽了 终极 2024校招八股文 MySQL索引 第一篇 招芯片验证实习生 碰到渣导悲哀3年 给秋招画个句号
  • 保护道路弱势群体,德思特V2X通信方案在行动!

    一 道路弱势群体的潜在交通危险 在交通安全中 如何保护道路弱势群体也是一大难题 由于行人和非机动车没有车身保护 他们在道路上与机动车相比更容易受到严重的伤害 车辆驾驶员的注意力不集中 超速 闯红灯 不礼让等行为可能导致行人和非机动车的碰撞和
  • SAN与NAS:存储架构的对比与选择

    在当今的数据密集型时代 存储架构的选择对于企业的成功至关重要 SAN Storage Area Network 和NAS Network Attached Storage 作为两种主流的存储架构 各自拥有独特的优势和应用场景 本文将深入探讨
  • 【年度重磅】《2023华为开发者宝典》覆盖16+技术领域,30+华为云专家倾力打造,免费下载

    2023华为开发者宝典 重磅发布 点击下载 欢迎大家转发赠阅 相互交流学习 时光荏苒 转眼间我们已经告别挑战与机遇并存的2023年 迎接充满无限可能的2024年 截至到2023年 华为云生态已聚合了全球超过550万开发者 这一年 我们通过
  • 如何顺滑使用华为云编译构建平台?

    这两年平台构建服务需求越来越大 却一直苦于找不到一些指南 这里特意写了一篇 对在学习代码阶段和新手程序员朋友也蛮友好 配置真的也不难 也特别适合想尝试从0到1做个APP的朋友了 以华为云的CodeArts Build为例 讲一下如何开通平台
  • 天猫数据分析工具推荐(天猫第三方数据平台)

    在电商迅速发展的大背景下 做好天猫数据分析能够在多方面帮助品牌商家更好地运营店铺 塑造品牌 如通过数据分析了解消费者的需求 购买偏好 这有利于品牌商家及时调整商品结构 产品推广 商品宣传等等 灵活制定品牌的销售策略 那么 天猫平台行业 品牌
  • 网络安全现状:揭秘白帽黑客的真实收入

    前言 作为一个网络安全行业五年打工仔 今天就来看看黑客的收入和方向怎么样 一个黑客年薪是多少呢 外界普遍认为黑客是高收入群体 那么你想过黑客是怎么获得收入的吗 黑客分为白帽黑客和黑帽黑客 处于黑白两道的黑客会的技术都有些相似 但是却是对立的
  • vmware磁盘文件瘦身

    一 发现问题 vmware越用越大怎么办 如何减少磁盘空间 日常工作学习中 我们都会使用VMware来搭建开发环境 但是随着使用的时间增加 会发现磁盘占用越来越大 导致磁盘空间很快耗光了 这是由于虚拟机在使用过程中生成了大量的临时文件和碎片
  • 15分钟无门槛高效构建服务器性能监控系统!

    服务器监控是每个互联网厂商都重视并且想要尽可能做好的事情 从数据收集 数据处理 数据可视化最终再到实时监控告警 这一系列复杂的流程可能耗费企业大量的人力和时间 以至于某些时候因为其复杂性高无法达到预期的监控效果 而当事故发生时才发现 由于监