Linux实例负载高问题排查和异常处理

问题描述

在您使用ECS实例过程中,可能会遇到实例系统负载较高的情况,负载过高,可能会引发一系列异常问题,简单说明如下:

  • CPU使用率或负载过高:一般来说,当CPU使用率≥80%时,定义为CPU使用率过高。CPU使用率持续过高,可能会导致实例运行速度变慢,自动关机或重启、无法登录等问题。

  • 带宽使用率过高:一般来说,带宽使用率≥当前带宽80%时,定义为带宽使用率过高。带宽使用率持续过高,将影响实例的网络连通性或网络吞吐,例如实例无法远程连接、网速过慢等。

  • 内存使用率过高:一般来说,当内存使用率≥80%时,定义为内存使用率过高。内存使用率过高,可能会出现系统卡顿、内部服务响应速度变慢等问题。

  • I/O使用率过高:一般来说,当前I/O读写≥该云盘I/O的80%时,定义为I/O使用率过高。I/O使用率过高,可能会出现文件读写变慢、应用性能下降或报错等问题。

问题排查

您可以使用SAR工具或htop工具定位该实例的负载过高及各资源的使用情况。

使用sar工具查看实例各资源使用情况
使用htop查看系统内各进程负载情况

sar是System Activity Reporter(系统活动情况报告)的缩写,sar工具对系统状态进行取样后,通过计算数据和比例来表达系统当前的运行状态。其特点是可以连续对系统取样,获得大量的取样数据。其取样数据和分析结果可以存入文件,所需的负载很小。

sar是Linux系统中较为全面的性能分析工具,可以从多个方面对系统的活动进行监控和报告,包括文件读写情况、系统调用使用情况、串口、CPU效率、内存使用情况、进程活动及IPC(Inter-Process Communication,进程间通信)等。

安装sar工具

如果您的ECS实例中默认未安装sar工具,可参考如下步骤进行安装。

  1. 使用VNC连接Linux系统的ECS实例。

    具体操作,请参见使用VNC登录实例

  2. 执行如下命令,安装sar工具。

    yum install sysstat
  3. 执行如下命令,启动sysstat服务。

    systemctl start sysstat
  4. 执行如下命令,查看sysstat服务状态。

    systemctl status sysstat

    当返回系统中出现Active: active (exited)表示sysstat服务已启动。

查看CPU使用率
查看队列长度和CPU平均负载
查看磁盘使用情况
查看内存负载
查看I/O负载
查看swap分区页面交换情况

执行如下命令,查看CPU负载。

sar -u 1 5   #每隔一秒刷新,刷新5次

系统显示类似如下。

Linux 3.10.0-123.9.3.el7.x8664 (iZ23pddtofdZ)     07/04/2016     _x86_64    (1 CPU)
10:16:35 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
10:16:36 AM     all     14.14      0.00      1.01      0.00      0.00     84.85
10:16:37 AM     all     14.14      0.00      0.00      1.01      0.00     84.85
10:16:38 AM     all      0.00      0.00      1.01      0.00      0.00     98.99
10:16:39 AM     all      0.00      0.00      0.00      0.00      0.00    100.00
10:16:40 AM     all      1.00      0.00      0.00      0.00      0.00     99.00
Average:        all      5.86      0.00      0.40      0.20      0.00     93.54

显示结果主要字段说明

  • %user:用户模式下消耗的CPU时间比例。

  • %nice:通过nice改变了进程调度优先级的进程,在用户模式下消耗的CPU时间比例。

  • %system:系统模式下消耗的CPU时间比例。

  • %iowait:CPU等待磁盘I/O导致空闲状态消耗的时间比例。

  • %steal:利用Xen等操作系统虚拟化技术,等待其它虚拟CPU计算占用的时间比例。

  • %idle:CPU空闲时间百分比。

常见sar命令参数

sar命令的参数说明如下,区分大小写。

  • -A:汇总所有的报告。

  • -a:报告文件读写使用情况。

  • -B:报告附加缓存的使用情况。

  • -b:报告缓存的使用情况。

  • -c:报告系统调用的使用情况。

  • -d:报告磁盘的使用情况。

  • -g:报告串口的使用情况。

  • -h:报告关于buffer使用的统计数据。

  • -m:报告IPC消息队列和信号量的使用情况。

  • -n:报告命名cache的使用情况。

  • -p:报告调页活动的使用情况。

  • -q:报告运行队列和交换队列的平均长度。

  • -R:报告进程的活动情况。

  • -r:报告没有使用的内存页面和硬盘块。

  • -u:报告CPU的利用率。

  • -v:报告进程、i节点、文件和锁表状态。

  • -w:报告系统交换活动状况。

  • -y:报告TTY设备活动状况。

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/4188.html

(0)
打赏 微信扫一扫 微信扫一扫
提示“No supported authentication methods available (server sent: publickey,gssapi-keyex,gssapi-with-mic)”错误的问题原因和解决方案
上一篇 2024年9月28日 上午10:34
如何查看Linux系统I/O负载情况?
下一篇 2024年9月28日 上午10:38

相关推荐

  • 实例内存未耗尽时触发 Out Of Memory

    现象描述 Linux 云服务器在内存使用率未占满的情况下触发了 OOM(Out Of Memory)。如下图所示: 可能原因 可能原因 处理措施 内存使用率过高 检查内存使用率是否过高 进程数超限 检查进程数是否超限 系统可用内存低于 min_free_kbytes 值 检查系统可用内存是否低于 min_free_kbytes 值 故障处理 检查内存使用率是…

    2025年5月19日
    1.3K00
  • linux system intstall VGA driver解决方法

    1.AMD $ sudo apt-get install  fglrx 2.Nvidia $ sudo apt-get install nvidia-current —————–installed after———– restart you…

    服务器运维 2019年1月15日
    2.8K00
  • 腾讯云服务器linux系统MBR 分区云硬盘扩容至大于2TiB

    当您的云硬盘在已有 MBR 分区并已创建文件系统的情况下,扩容至大于 2TiB,此时 MBR 分区下的文件系统已无法扩容至大于 2TiB,请参见本文将 MBR 分区形式转换为 GPT 分区形式 注意事项 请谨慎操作,误操作可能会导致数据丢失或异常。请给对应云硬盘创建快照,完成数据备份。详情请参见 创建快照。如出现误操作导致数据丢失,则可回滚快照进行数据恢复。…

    2026年1月13日
    43100
  • 如何处理cenots,linux服务器负载高问题排除方法-学派吧

    前言 这几天碰到几个负载过高的情况、今天整理下排除方法。供大家参考、如果有需要服务器、切不懂运维的可以找我们。QQ7271895linux服务器出现高负载的情况下,一般都有一些具体的症状,比如cpu、内存等被耗尽,磁盘IO或者网络等出现问题,下面通过具体命令去分析解决高负载的问题 工具 centos6.5_x64htop 、collectl、 iotop、 …

    2018年10月23日
    2.5K00
  • 最新如何在macOS上安装Homebrew的图文教程

    Homebrew是最受欢迎的macOS系统包管理工具,使用brew命令行实用程序,可以轻松地在Mac上添加新软件包,但首先必须安装它。本篇文章将介绍如何使用简单命令在系统上安装Homebrew。 如何安装Homebrew? 在系统上启动终端(/applications/utilities/terminal)应用程序,然后在其上运行以下命令。 $ ruby -…

    服务器运维 2019年5月7日
    3.6K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部