liunx服务器巡检常用指标和指令详解

首先直接给出我们服务器巡检的几项分析指标,如表格所示:

指标 数值
15分钟内CPU 负载 4%
内存剩余可用 337M
内存大小 3.7G
硬盘大小 50G
硬盘已用 3.4G
网络流入速率(RX) 188kb
网络流出速率(TX) 131kb

您可以使用以下命令来查看 Linux 服务器的性能指标:

  1. 内存剩余可用和内存大小:
free -h

执行该命令后,会输出当前系统的内存使用情况,包括总内存、已用内存、剩余内存等信息,例如:

              total        used        free      shared  buff/cache   available
Mem:           15Gi       3.3Gi       9.9Gi       128Mi       2.3Gi        11Gi
Swap:         4.0Gi          0B       4.0Gi

其中,total 表示总内存大小,free 表示剩余可用内存大小。

  1. 硬盘大小和硬盘已用:
df -h

执行该命令后,会输出当前系统的硬盘使用情况,包括磁盘挂载点、总大小、已用大小、可用大小等信息,例如:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G  5.9G   41G  13% /
/dev/sda2        50G   33G   14G  71% /data

其中,Size 表示总大小,Used 表示已用大小,Avail 表示可用大小。

  1. 网络流入速率和网络流出速率:
iftop

执行该命令后,会实时显示网络流入和流出的速率和流量,例如:

    1.23Mb      2.46Mb      3.69Mb               4.92Mb      6.15Mb      7.38Mb               
===============================================================================================
TX:             cum:   13.2MB   13.2MB   13.2MB  dev:   0.0%   0.0%   0.0%   0/0B   0/0B   0/0B
RX:             cum:   11.9MB   11.9MB   11.9MB  dev:   0.0%   0.0%   0.0%   0/0B   0/0B   0/0B
TOTAL:          cum:   25.1MB   25.1MB   25.1MB  dev:   0.0%   0.0%   0.0%   0/0B   0/0B   0/0B

其中,TX 表示网络流出,RX 表示网络流入,cum 表示累计流量,dev 表示网络设备的占用率。

注意,上述命令需要在 Linux 服务器上执行。如果您是通过 SSH 登录到服务器,则可以直接在终端中输入这些命令。如果您是通过远程桌面或 Web 控制台登录到服务器,则需要打开终端或命令行工具来执行这些命令。

  1. CPU 负载情况
top -bn1 | grep load

top -bn1 | grep load,用于输出 CPU 负载信息。执行该脚本后,会依次输出服务器的内存使用情况、硬盘使用情况、网络流量情况和 CPU 负载信息

在 Linux 系统中,负载(Load Average)指的是一段时间内运行队列中的平均进程数,也可以理解为正在使用 CPU 和等待 CPU 的进程数。在系统负载高的情况下,表示 CPU 正在被大量的进程使用,或者有大量的进程在等待 CPU 时间片,可能会导致系统响应变慢。

Linux 系统的负载值通常由三个数字组成,分别代表 1 分钟、5 分钟和 15 分钟内的平均进程数。例如,您提供的负载值 “0.00, 0.01, 0.16” 表示:

  • 1 分钟内的平均进程数为 0.00;
  • 5 分钟内的平均进程数为 0.01;
  • 15 分钟内的平均进程数为 0.16。

一般来说,当负载值小于 CPU 数量的 70% 时,表示系统负载较低;当负载值大于 CPU 数量的 70% 时,表示系统负载较高;当负载值超过 CPU 数量时,表示系统负载非常高,可能会导致系统响应变慢。

例如,如果您的服务器有 4 个 CPU 核心,那么当负载值小于 2.8(4*0.7)时,表示系统负载较低;当负载值大于 2.8 时,表示系统负载较高;当负载值超过 4 时,表示系统负载非常高。

需要注意的是,负载值并不是唯一的性能指标,系统的 CPU 使用率、内存使用率、I/O 等性能指标也需要考虑。通常需要综合考虑多个性能指标来评估系统的性能状况。

要计算负载百分比,首先需要知道服务器的 CPU 核心数量。假设您的服务器有 4 个 CPU 核心,那么可以使用以下公式来计算负载百分比:

负载百分比 = (load average / CPU 核心数量) * 100%

例如,对于您提供的负载值 “0.00, 0.01, 0.16”,计算负载百分比的结果为:

1 分钟负载百分比 = (0.00 / 4) * 100% = 0%
5 分钟负载百分比 = (0.01 / 4) * 100% = 0.25%
15 分钟负载百分比 = (0.16 / 4) * 100% = 4%

因此,您的服务器的负载百分比在短时间内非常低,但在长时间内可能会达到 4% 左右,这个数值是相对较低的,表示服务器的 CPU 运行状况较好。需要注意的是,负载百分比只是参考值,实际情况还需要综合考虑其他性能指标来评估系统的性能状况。

您可以使用以下命令来查看 Linux 服务器的 CPU 核心数量:

grep -c ^processor /proc/cpuinfo

执行该命令后,会输出当前系统的 CPU 核心数量,例如:

4

其中的数字表示当前系统的 CPU 核心数量。

另外,您也可以使用 lscpu 命令来查看 CPU 的详细信息,包括 CPU 核心数量、CPU 频率、CPU 型号等。例如,执行以下命令查看 CPU 核心数量:

lscpu | grep "^CPU(s):"

执行该命令后,会输出当前系统的 CPU 核心数量,例如:

CPU(s):              4

其中的数字也表示当前系统的 CPU 核心数量。

需要注意的是,不同的 CPU 型号可能具有不同的核心数量和线程数量,因此在不同的服务器上,同样的命令可能会输出不同的结果。

附上一个shell脚本

#!/bin/bash

# 内存使用情况
echo "Memory Usage:"
free -h

# 硬盘使用情况
echo "Disk Usage:"
df -h

# 网络流量情况
echo "Network Traffic:"
iftop

# CPU 负载情况
echo "CPU Load:"
top -bn1 | grep load

你可能感兴趣的:(程序员的日常,服务器,网络,linux)