当前位置: 首页 > news >正文

在Centos中安装、配置与使用atop监控工具

目录

  • 前言
  • 1. atop工具的安装
    • 1.1 atop简介
    • 1.2 atop的安装步骤
  • 2. 安装并配置netatop模块
    • 2.1 安装内核开发包
    • 2.2 安装所需依赖
    • 2.3 下载netatop
    • 2.4 解压并安装netatop
    • 2.5 启动netatop
  • 3. atop的配置与使用
    • 3.1 配置监控周期与日志保留时间
    • 3.2 设置定时任务生成日志
    • 3.3 启动与查看atop服务状态
  • 4. 分析atop日志
    • 4.1 atop日志分析命令
    • 4.2 atop常用快捷键说明
  • 5. atop输出的关键指标
  • 结语

前言

在日常运维中,系统性能监控是保持服务器稳定运行的关键。特别是在企业环境中,保障服务稳定、高效地运行对业务至关重要。atop作为一款功能强大的Linux系统监控工具,能够详细报告系统资源和各进程的使用情况,从而帮助管理员快速定位并解决问题。本文将介绍如何在Centos中安装、配置并使用atop监控工具,包括网络监控模块netatop的安装及使用,帮助您在Centos中实现系统性能的全面监控。

1. atop工具的安装

1.1 atop简介

atop是一款用于监控Linux系统资源的工具,能够详细报告所有进程的活动,并以日志文件的形式保存这些信息。其监控内容涵盖了CPU、内存、磁盘、网络的使用情况,甚至可以查看进程的详细资源使用情况,如CPU使用率、内存占用、磁盘读写等。atop的优势在于其能够长期记录系统的性能情况,即使系统或进程发生了崩溃,也可以通过atop日志进行问题分析。

1.2 atop的安装步骤

在Linux环境下,atop的安装非常简单,您可以通过如下命令进行安装:

sudo yum install atop

安装完成后,atop便可以立即用于监控系统的实时性能。对于监控网络使用情况,atop提供了额外的netatop模块,支持实时查看每个进程的网络流量信息。接下来,我们将详细介绍如何安装和配置netatop模块。

2. 安装并配置netatop模块

2.1 安装内核开发包

在安装netatop之前,首先需要安装内核开发包,这是为了确保系统具备编译所需的环境。执行以下命令安装内核开发包:

sudo yum install kernel-devel-$(uname -r)

该命令根据当前正在使用的内核版本,自动匹配对应的开发包进行安装。

2.2 安装所需依赖

netatop还依赖于elfutils-libelf-devel包,您可以通过以下命令安装该依赖:

sudo yum install elfutils-libelf-devel

2.3 下载netatop

接下来,下载netatop的安装包,具体操作如下:

sudo wget https://www.atoptool.nl/download/netatop-3.1.tar.gz --no-check-certificate

此命令将从官方源下载最新的netatop安装包。

2.4 解压并安装netatop

下载完成后,解压安装包:

tar -zxvf netatop-3.1.tar.gz

解压后,切换到解压的目录:

cd netatop-3.1

然后,编译并安装netatop:

sudo make && sudo make install

2.5 启动netatop

最后,启动netatop服务,确保其开始工作:

sudo systemctl start netatop

至此,您已成功安装并启动netatop模块,接下来可以配合atop工具实时监控网络使用情况。

3. atop的配置与使用

3.1 配置监控周期与日志保留时间

默认情况下,atop每600秒采集一次系统信息,日志保留时间为28天。这些配置可能并不适合您的实际需求,因此需要手动修改配置文件。

  • 执行以下命令打开atop配置文件:

    sudo vim /etc/sysconfig/atop
    
  • 进入文件后,按下i进入编辑模式,并进行如下配置修改:

  • 将监控周期LOGINTERVAL修改为30秒。

  • 将日志保留时间LOGGENERATIONS设置为7天。

  • 确保日志文件的路径为/var/log/atop

最终配置如下:

LOGOPTS=""
LOGINTERVAL=30
LOGGENERATIONS=7
LOGPATH=/var/log/atop

Esc键,输入:wq保存并退出编辑。

3.2 设置定时任务生成日志

为保证日志每天生成一次,您可以通过cron任务设置自动重启atop服务。执行以下命令进入crontab配置:

crontab -e

在文件末尾添加以下任务:

0 0 * * * sudo systemctl restart atop

该配置将每天0点自动重启atop服务,确保日志生成。

3.3 启动与查看atop服务状态

配置完成后,您需要重启atop服务以应用配置:

sudo systemctl restart atop

随后,您可以通过以下命令检查服务状态是否正常运行:

sudo systemctl status atop

如果服务正常,输出中将显示active (running)状态。

4. 分析atop日志

4.1 atop日志分析命令

atop启动后,会在/var/log/atop目录中生成日志文件。要查看特定时间点的日志,您可以使用如下命令:

atop -r /var/log/atop/atop_2024XXXX

其中,2024XXXX代表日志文件的日期。打开日志后,可以通过不同的快捷键筛选和查看感兴趣的系统信息。
在这里插入图片描述

4.2 atop常用快捷键说明

  • g:切换回默认的综合输出视图。
  • c:显示进程的完整命令行信息。
  • m:按内存使用率对进程进行排序。
  • d:按磁盘使用率对进程进行排序。
  • n:按网络使用率对进程进行排序。
    在这里插入图片描述

这些快捷键能帮助您快速过滤出关键信息,例如内存占用过多的进程或网络流量异常的服务,从而进行深入分析。

5. atop输出的关键指标

在atop日志中,有几行关键信息值得关注:

  • PRC行:显示进程运行情况,包括进程数、运行中进程数、睡眠进程数和僵尸进程数。
  • CPU行:展示CPU的整体使用情况,包括用户态、内核态以及空闲时间等。
  • MEM行:显示系统的内存占用情况,如空闲内存、缓存内存和已使用的内存。
  • DSK行:展示磁盘的使用情况,如读写操作的频率和磁盘的忙碌程度。
  • NET行:用于监控网络流量,包含每个网络接口的发送和接收数据量。

这些指标能帮助管理员快速了解系统资源的使用情况,从而定位瓶颈或异常点。

结语

通过本文,您学会了如何在Linux实例中安装、配置并使用atop工具进行系统监控。atop的强大功能使其成为处理系统性能问题的利器,特别是在面对ECS实例异常时,atop生成的日志可以为故障排查提供关键依据。通过合理的配置与使用,您可以充分利用atop和netatop的监控能力,确保系统资源的合理分配和使用。

相关文章:

在Centos中安装、配置与使用atop监控工具

目录 前言1. atop工具的安装1.1 atop简介1.2 atop的安装步骤 2. 安装并配置netatop模块2.1 安装内核开发包2.2 安装所需依赖2.3 下载netatop2.4 解压并安装netatop2.5 启动netatop 3. atop的配置与使用3.1 配置监控周期与日志保留时间3.2 设置定时任务生成日志3.3 启动与查看at…...

前端框架对比与选择:详尽分析

1. 引言 随着互联网技术的飞速发展,前端开发技术也得到了迅猛提升。无论是大型企业还是中小型开发团队,使用前端框架来简化开发过程、提升开发效率已成为一种普遍现象。如今,市场上有众多的前端框架可供选择,如React、Vue.js、Angular等,如何在这些框架中进行选择成为了开…...

FLINK SQL时区问题

SQL时区问题 在Flink SQL中,时区问题是一个需要特别关注的点,因为时区的不一致可能会导致数据的不一致性。以下是对Flink SQL时区问题的详细解释和解决方案: 一、时区问题背景 时间类型与时区: 在Flink SQL中,时间类…...

LibreOffice SDK是LibreOffice软件的开发工具包

LibreOffice SDK是LibreOffice软件的开发工具包,它提供了一系列工具和库,使得开发者可以基于LibreOffice进行扩展或开发新的应用程序。以下是对LibreOffice SDK的详细介绍: 一、下载与安装 下载地址: 可以在LibreOffice的官方网站…...

第十五届蓝桥杯C/C++学B组(解)

1.握手问题 解题思路一 数学方法 50个人互相握手 (491)*49/2 ,减去7个人没有互相握手(61)*6/2 答案:1024 解题思路二 package 十五届;public class Min {public static void main(String[] args) {i…...

在docker的容器内如何查看Ubuntu系统版本

文章目录 写在前面一、问题描述二、解决方法参考链接 写在前面 自己的测试环境: docker 一、问题描述 由于 lsb_release -a 只能查看自己电脑(宿主机)的系统版本,如果在docker的容器内又应该如何查看Ubuntu系统版本呢&#xff…...

Google Play服务端获取订单和核销订单

官方文档地址&#xff1a;https://developers.google.cn/android-publisher/api-ref/rest/v3/purchases.products?hlzh-cn java依赖 <!-- google play --><dependency><groupId>com.google.apis</groupId><artifactId>google-api-services-and…...

Spring Security 与 OAuth 2.0 登录实现指南

文章目录 一、项目概述二、环境准备三、创建GitHub OAuth应用四、项目依赖配置五、配置OAuth 2.0六、创建控制器七、创建视图八、运行应用九、用户界面展示十、总结 在现代的Web应用中&#xff0c;安全性是一个不可忽视的因素。OAuth 2.0作为一种流行的授权框架&#xff0c;提供…...

02 django管理系统 - base.html模板的搭建

下面&#xff0c;我们正式开始XX市第X医院员工信息管理系统的开发 首先&#xff0c;我们项目的目录结构如下&#xff1a; 然后&#xff0c;先把模板【base.html】界面的框架搭起来 {% load static %}<!DOCTYPE html> <html lang"en"><head><m…...

ES6语法有哪些

ES6语法包括let和const声明、箭头函数、模板字符串、解构赋值、扩展运算符、类和模块化等。以下是这些特性的具体介绍&#xff1a; let和const声明 let声明&#xff1a;let允许程序员在块级作用域内声明变量&#xff0c;这意味着变量只在其定义的代码块&#xff08;由大括号包围…...

每天一个数据分析题(五百零四)- 抽取样本

下列哪种方法&#xff0c;会重复抽取训练数据集中的数据&#xff0c;且每笔被抽中的概率始终保持一样&#xff1f; A. 袋装法&#xff08;Bagging&#xff09; B. 提升法&#xff08;Boosting&#xff09; C. 支持向量机&#xff08;SVM&#xff09; D. 以上皆是 数据分析…...

SAP动态安全库存(Dynamic Safety stock)配置及计算逻辑说明测试

SAP动态安全库存&#xff08;Dynamic Safety stock&#xff09;配置及计算逻辑说明测试 概念及计算逻辑&#xff1a; 动态安全库存&#xff08;Dynamic Safety stock&#xff09;&#xff1a; 它根据平均的日需求&#xff08;Average daily requirements&#xff09;数量&am…...

什么是TDZ?在JavaScript当中怎么避免?

简介 TDZ 是 Temporal Dead Zone&#xff08;暂时性死区&#xff09;的缩写&#xff0c;是 JavaScript 中 let 和 const 变量的一个概念。在 ES6 中&#xff0c;let 和 const 引入了块级作用域&#xff08;block scope&#xff09;&#xff0c;而它们声明的变量在声明之前的作…...

电阻分压电路:【图文讲解】

在电子电路中&#xff0c;电阻同样发挥着重要作用&#xff0c;同时也是一个最基本的元器件&#xff0c;电阻在电路中可以起到限流、分流、分压、发热的作用。 本节&#xff0c;我们重点来聊聊电阻的分压电路。如下图&#xff0c;是一个经典的电阻分压电路。 1&#xff1a;电路…...

【AI论文精读14】RAG论文综述2(微软亚研院 2409)P6(完)-隐含推理查询L4

AI知识点总结&#xff1a;【AI知识点】 AI论文精读、项目、思考&#xff1a;【AI修炼之路】 P1&#xff0c;P2&#xff0c;P3&#xff0c;P4&#xff0c;P5 六、隐藏推理查询&#xff08;L4&#xff09; ps&#xff1a;P2有四种查询&#xff08;L1&#xff0c;L2&#xff0c;L3…...

FFmpeg的简单使用【Windows】--- 视频倒叙播放

实现功能 点击【选择文件】按钮可以选择视频&#xff0c;当点击【开始处理】按钮之后&#xff0c;会先将视频上传到服务器&#xff0c;然后开始进行视频倒叙播放的处理&#xff0c;当视频处理完毕之后会将输出的文件路径返回&#xff0c;同时在页面中将处理好的视频展示出来。…...

5分钟了解docker的Swarm机制

Swarm框架概述 1.1 Swarm的基本概念 在容器化技术的浪潮中&#xff0c;Docker无疑是最为耀眼的明星之一。而作为Docker生态系统中的重要组成部分&#xff0c;Swarm框架则扮演着至关重要的角色。Swarm&#xff0c;顾名思义&#xff0c;就是“群”的意思&#xff0c;它是一个开…...

python实现ppt转pdf

要实现将PPT文件转换为PDF文件&#xff0c;可以使用Python中的python-pptx库来读取PPT文件&#xff0c;并使用reportlab库来生成PDF。又或者&#xff0c;你也可以使用其他库如pypdf和pypptx等进行处理。 以下是一个使用unoconv工具以及Python的示例&#xff0c;可以将PPT转换为…...

VS2017 编译 SQLite3 动态库

首先官方下载源码: Tags sqlite/sqlite (github.com) 1.安装 VS2017 community edition 2.打开VS2017命令行工具 3.安装TCL 开发库,推荐 TCL 9.0 先下载源码: Tcl/Tk 9.0 使用vs2017编译tcl&...

Linux运维_Apache更改默认网站目录

1.首先创建目录 并且在目录下新建测试文件 index.html mkdir -p /home/test/ap_web 直接wget 百度官网 wget www.baidu.com 2.编辑配置文件 /etc/apache2/sites-available/000-default.conf(找到 DocumentRoot)更改为刚刚创建的目录 接着在添加 最终文件: 3.给文件 添加属…...

KubeSphere 容器平台高可用:环境搭建与可视化操作指南

Linux_k8s篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;KubeSphere 容器平台高可用&#xff1a;环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站&#xff0c;会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后&#xff0c;网站没有变化的情况。 不熟悉siteground主机的新手&#xff0c;遇到这个问题&#xff0c;就很抓狂&#xff0c;明明是哪都没操作错误&#x…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习&#xff08;Reinforcement Learning, RL&#xff09;是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程&#xff0c;然后使用强化学习的Actor-Critic机制&#xff08;中文译作“知行互动”机制&#xff09;&#xff0c;逐步迭代求解…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能&#xff0c;包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中&#xff0c;CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时&#xff0c;通常会导致应用响应缓慢&#xff0c;甚至服务不可用&#xff0c;严重影响用户体验和业务运行。因此&#xff0c;掌握一套科学有效的CPU飙高问题排查方法&…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...