#干货满满#Linux系统迁移前信息手工收集方法
  

灵峰气韵 154338人觉得有帮助

{{ttag.title}}
本帖最后由 灵峰气韵 于 2022-5-25 16:50 编辑

【应用场景】
鉴于部分客户对业务系统服务器有安全保护要求,不允许植入工具对其进行性能分析和收集,故
列出Linux服务器负载信息的手工命令收集方式。Windows服务器的Perfmon是自带的收集工具
(详见https://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=208585),不需要植入。

【注意事项】
命令查看 Linux 当前负载状态,只能记录瞬时值,无法收集平均值。

一、top命令详解

1、第一行load average:行,可以看出当前系统的负载情况。
08:10:00 — 当前系统时间。
304 days, 8:55 — 系统已经运行了 304 天 8 小时 55 分钟(在这期间没有重启过)。
1 users — 当前有 1 个用户登录系统。
load average: 0.92, 1.23 , 1.50 — load average 后面的三个数分别是 1 分钟、
5 分钟、15 分钟的负载情况。

【注释】
load average 数据是每隔 5 秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这
个数除以逻辑 CPU 的数量,结果高于 5 的时候就表明系统在超负荷运转了。

2、第二行Tasks行,可以看出系统进程运行情况。
Tasks — 任务(进程),系统现在共有 334 个进程,其中处于运行中的有 2 个,
332 个在休眠(sleep),stoped 状态的有 0 个,zombie 状态(僵尸)的有 0 个。
3、第三行CPU(s):行,可以看出当前CPU状态。
4.2% us — 用户空间占用 CPU 的百分比。
2.0% sy — 内核空间占用 CPU 的百分比。
0.0% ni — 改变过优先级的进程占用 CPU 的百分比。
93.4% id — 空闲 CPU 百分比。
0.1% wa — IO 等待占用CPU 的百分比。
4、第四行内存状态行,可以看出服务器当前内存的使用情况。
65789208k total — 物理内存总量(62.74GB)。
24213288k used — 使用中的内存总量(23GB)。
19098200k free — 空闲内存总量(18.2GB)。
22477720k buff — 缓存的内存量 (21.44GB)。
5、第五行,交换分区使用状态行,可以看出交换分区使用情况。
67104764k total — 交换区总量(64GB)。
1320448k used — 使用的交换区总量(1.26GB)。
65784316k free — 空闲交换区总量(62.74GB)。
40749692k cached — 缓冲的交换区总量(4GB)。

【注意】
第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量
(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去
使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到 free 中去,因
此在 Linux 上 free 内存会越来越少,但不用为此担心。这里有个近似的计算公式:第四行的 free
+ 第四行的 buffers + 第五行的 cached,按这个公式可计算此台服务器的可用内存:
19098200KB +22477720KB +40749692KB= 43.6GB。

二、free命令详解

Linux的内存使用情况,除了上述的用top命令获取之外,也可以利用以下方式进行计算。一般常
见的用法是free -m(以MB为单位显示内存使用情况)。


【注意】
内存剩余量为 free + buffers + cached,按这个公式可计算此台服务器的可用内存:8.85G
+193M +4.6GB = 13.6GB。
15953M total — 物理内存总量(16GB)。
6885M used — 使用中的内存总量(6.7GB)。
9067M free — 空闲内存总量(8.85G)。
193M buffers — 缓存的内存量(193M)。
4695M cached — 缓冲的交换区总量(4.6GB)。

三、iostat 命令详解

Iostat命令常用于Linux系统查看当前磁盘的IO状态。包括磁盘IOPS、吞吐量、响应时间、磁盘繁
忙度等指标。常用的命令为iostat -x -m 5。
参数解释:
-x  参数,iostat 一个比较常用的选项,该选项将用于显示和 io 相关的扩展(详细)数据。
-m 参数,iostat 以 MB 为单位显示磁盘读写吞吐。
5 代表,每五秒收集一次信息。

输出项解释:
Device,设备列,看见当前所有的磁盘。
r/s,每秒 IO 读的次数。
w/s,每秒 IO 写的次数。
rMB/s,每秒 IO 读的吞吐量,单位 MB。
wMB/s,每秒 IO 写的吞吐量,单位 MB。
await,磁盘的相应时间,单位 ms, 一般地系统 IO 响应时间应该低于 5ms,如果大于 10ms 就比
较大了。
%unil,磁盘的繁忙度,单位%,一般地,如果该参数是 100%表示该磁盘已经接近满负荷运行了

四、netstat命令详解

netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及
每一个网络接口设备的状态信息。
参数解释:
-a 或--all:显示所有连线中的 Socket。
-h 或--help:在线帮助。
-l 或--listening:显示监控中的服务器的 Socket。
-n 或--numeric:直接使用 IP 地址,而不通过域名服务器。
-p 或--programs:显示正在使用 Socket 的程序识别码和程序名称。
-t 或--tcp:显示 TCP 传输协议的连线状况。
-u 或--udp:显示 UDP 传输协议的连线状况。
-v 或--verbose:显示指令执行过程。
-V 或--version:显示版本信息。用法举例:
[root@HFOA ~]# netstat -a        # 列出所有端口
[root@HFOA ~]# netstat -at        # 列出所有TCP 端口
[root@HFOA ~]# netstat -au        # 列出所有 UDP 端口
[root@HFOA ~]# netstat -l        # 只显示监听端口
[root@HFOA ~]# netstat -lt        # 显示监听TCP 端口
[root@HFOA ~]# netstat -lu        # 显示监听 UDP 端口
[root@HFOA ~]# netstat -s        # 显示所有端口的统计信息
root@HFOA ~]# netstat -st        # 显示所有 TCP 的统计信息
[root@HFOA ~]# netstat -su        # 显示所有 UDP 的统计信息
root@HFOA ~]# netstat -p        #显示 PID 和进程名称
[root@HFOA ~]# netstat -antp | grep ssh #查看所有的 SSH 服务网络连接
[root@HFOA ~]# netstat -nltp | grep 1521 #查看监听端口是 1521 的 TCP 网络连接。
[root@HFOA ~]# netstat -natp | grep 192.200.244.180. # 查 看 所 有 的 与
192.200.244.180 有关的 TCP 网络连接
[root@HFOA ~]# netstat -natp | grep java #查看所有的 java 程序TCP 网络连接输出项解释:

Proto 协议列,该行显示网络连接所用到的协议。
Recv-Q 表示网络接收队列,表示收到的数据已经在本地接收缓冲,但是还有多少没有被进程取走

Send-Q 表示网路发送队列,对方没有收到的数据或者说没有 Ack 的,还在本地缓冲区。如果发送
队列Send-Q 不能很快的清零,可能是有应用向外发送数据包过快,或者是对方接收数据包不够快

Local Address 本地地址和端口。
Foreign Address 远程地址和端口。
State 网络连接状态。
PID/Program name PID 及程序名称。

【注意事项】
Recv-Q ,Send-Q 这两个值通常应该为 0,如果不为 0 可能是有问题的。packets 在两个队列里
都不应该有堆积状态。可接受短暂的非 0 情况。

五、df命令详解
Linux中df命令的功能是用来检查Linux服务器的文件系统的磁盘空间占用情况。可以利用该命令
来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
参数解释:
-a, --all 包含所有的具有 0 Blocks 的文件系统。
--block-size={SIZE} 使用 {SIZE} 大小的 Blocks。
-h, --human-readable 使用人类可读的格式(常用)。
-H, --si 很像 -h, 但是用 1000 为单位而不是用 1024。
-k, --kilobytes 就像是 --block-size=1024。
-m, --megabytes 就像 --block-size=1048576。
--no-sync 获取信息前不 sync (预设值)。
--sync 在获取信息前 sync。
-P, --portability 使用 POSIX 输出格式。
-t, --type=TYPE 限制列出文件系统的 TYPE。
-T, --print-type 显示文件系统的形式。
-x, --exclude-type=TYPE 限制列出文件系统不要显示 TYPE。
--help 显示帮助。
--version 输出版本。用法举例:
df -h; 查看当前服务器的磁盘容量及使用率。

打赏鼓励作者,期待更多好文!

打赏
55人已打赏

guhui 发表于 2024-8-26 09:44
  
感谢分享,学习一下~
FuJun 发表于 2024-8-19 12:33
  
感谢分享,学习一下~
talent 发表于 2024-3-5 11:47
  
每天学习一点新知识,谢谢分享
王龙龙 发表于 2024-3-4 17:31
  

感谢分享,有助于工资和学习
新手078326 发表于 2024-1-28 13:03
  
楼主分析的很详细,不错的实战经验
张嘉烽 发表于 2023-3-27 08:31
  
感谢分享,日常打卡学习
新手635345 发表于 2022-12-3 18:00
  
感谢分享,每日打卡。
俞建水 发表于 2022-9-14 08:18
  
谢谢分享,这个值得一看!   
新手081074 发表于 2022-9-10 09:33
  


每天学习一点,每天进步一点。
发表新帖
热门标签
全部标签>
安全效果
西北区每日一问
每日一问
【 社区to talk】
技术盲盒
干货满满
技术笔记
产品连连看
新版本体验
功能体验
技术咨询
信服课堂视频
标准化排查
2023技术争霸赛专题
每周精选
GIF动图学习
玩转零信任
社区帮助指南
答题自测
云计算知识
通用技术
天逸直播
秒懂零信任
自助服务平台操作指引
社区新周刊
每日一记
运维工具
用户认证
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
安装部署配置
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
答题榜单公布
纪元平台
卧龙计划
华北区拉练
以战代练
技术晨报
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
高手请过招
升级&主动服务
高频问题集锦
POC测试案例
全能先锋系列

本版版主

187
299
979

发帖

粉丝

关注

217
288
151

发帖

粉丝

关注

24
13
5

发帖

粉丝

关注

7
10
24

发帖

粉丝

关注

5
6
7

发帖

粉丝

关注

31
33
45

发帖

粉丝

关注

本版达人

皮皮虾·真

本周建议达人

郑州网络

本周分享达人

二进制网络

本周提问达人