Linux主要性能指标监控

Linux系统性能监控
本文介绍如何使用top、free和vmstat命令监控Linux系统的CPU、内存和交换区使用情况。涵盖进程状态、内存利用率及虚拟内存缓冲区监控方法。

1.CPU&进程

 

1.1 top命令

 

top - 20:07:00 up 186 days,  3:47,  3 users,  load average: 0.01, 0.02, 0.00

Tasks:  82 total,   1 running,  80 sleeping,   1 stopped,   0 zombie

Cpu(s):  3.7% us,  0.0% sy,  0.0% ni, 96.3% id,  0.0% wa,  0.0% hi,  0.0% si


第1行 load average
系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第2行 进程情况
Tasks: 29 total 进程总数
1 running 正在运行的进程数
28 sleeping 睡眠的进程数
0 stopped 停止的进程数
0 zombie 僵尸进程数

第3行 cpu利用情况
多颗cpu的系统按"1"查看每颗cpu利用率
Cpu(s):
us 用户空间占用CPU百分比
sy 内核空间占用CPU百分比
ni 用户进程空间内改变过优先级的进程占用CPU百分比
id 空闲CPU百分比
wa 等待输入输出的CPU时间百分比
hi 硬件中断 
si 软件中断
后面两个参数我没有深入了解过,也不是很明白.

关于top命令的详细情况,请查阅top命令详解文章

 

 

2.Memory

 

2.1 top 命令

Mem:   4149144k total,  3832668k used,   316476k free,   277592k buffers

Swap:  2096440k total,      144k used,  2096296k free,  2397028k cached


Mem:内存利用率
total 物理内存总量
used 使用的物理内存总量
free 空闲内存总量
buffers 用作内核缓存的内存量

Swap:内存交换区利用率Swap
total 交换区总量
used 使用的交换区总量
free 空闲交换区总量
cached 缓冲的交换区总量。内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,
该数值即为这些内容已存在于内存中的交换区的大小。相应的内存再次被换出时可不必再对交换区写入。

 

2.2 free

free -m 内存信息按照M单位显示

                   total       used       free     shared    buffers     cached
Mem:          4051       3744        307          0        271       2340
-/+ buffers/cache:       1132       2919
Swap:         2047          0       2047

 

total: 内存总数
used: 已经使用的内存数
free: 空闲的内存数
shared: 当前已经废弃不用,总是0
buffers:  Buffer缓存内存数,是块设备的读写缓冲区
cached:  Page缓存内存数,文件系统的cache

关系:total=used+free
第二部分(-/+ buffers/cache):
(-buffers/cache) used内存数:(指的第一部分Mem行中的used - buffers-cached)
(+buffers/cache) free内存数: (指的第一部分Mem行中的free + buffers+cached)
-buffers/cache反映的是被程序实实在在吃掉的内存
+buffers/cache反映的是可以挪用的内存总数
对应用程序来讲是(-/+ buffers/cach).buffers/cached 是等同可用的,因为buffer/cached是为了提高程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。

关于buffer与cache的区别
A buffer is something that has yet to be "written" to disk
buffer为有待写入磁盘的数据的缓冲区(供块设备访问,即随机访问数据片的设备)

A cache is something that has been "read" from the disk and stored for later use
cache为已经被从磁盘读取和存储有待使用的缓冲区

第三部分为虚拟内存缓冲区(swap),与windows不同的是,linux在物理内存没有耗尽的情况下,swap是不使用的.我曾经在做性能测试的过程中监控,发现服务器物理free内存只剩下

15m时候,swap换入换出都仍然为0

 

2.3 vmstat n 动态监控内存使用情况(n为采样间隔时间)

 在性能测试过程中,n最好不设置过小,以免耗费不必要的系统资源影响测试结果.

 

procs -----------memory-------------       -----swap---   ----io----   --system--  ------cpu----
 r  b   swpd    free    buff         cache        si   so         bi    bo    in     cs    us sy id wa
 1  0  144  312628  277612  2397268     0    0          1     9     1         0        2  0 98  0
 0  0  144  312628  277628  2397252     0    0          0    19    1006  869    5  0 95  0

 

procs:
r:在运行队列中等待的进程数
b:在等待io的进程数


memory
swpd 切换到内存交换区的内存数量(k表示)。如果swpd的值不为0,或者比较大(比如超过了100m),代表曾经使用虚拟内存的数量,只要si、so的值长期为0,说明数据从磁盘到内存无换入换出,系统性能还是正常的.
free 当前的空闲页面列表中内存数量(k表示)
buff 作为buffer cache的内存数量,一般对块设备的读写才需要缓冲。
cache: 作为page cache的内存数量(k),一般作为文件系统的cache,如果cache较大,说明用到cache的文件较多,如果此时IO中bi比较小,说明文件系统效率比较好。

 

swap

si: 从磁盘交换到内存的交换页数量,单位:KB/秒

so: 从内存交换到磁盘的交换页数量,单位:KB/秒

 

io

bi: 发送到块设备的块数,单位:块/秒

bo: 从块设备接收到的块数,单位:块/秒

以上两项数值高,表示磁盘读写频繁,排除是否程序在大量读取文件。可以使用iostat进一步观察磁盘情况

 

system系统:

in: 每秒的中断数,包括时钟中断。

cs: 每秒的环境(上下文)切换次数。

如以上两项数值持续走高,说明程序引起的cpu调度出现问题,考虑程序处理逻辑的问题

 

cpu
us 列显示了用户方式下所花费 CPU 时间的百分比。us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,需要考虑优化用户的程序。
sy 列显示了内核进程所花费的cpu时间的百分比。这里us + sy的参考值为80%,如果us+sy 大于 80%说明可能存在CPU不足。
wa 列显示了IO等待所占用的CPU时间的百分比。这里wa的参考值为30%,如果wa超过30%,说明IO等待严重,这可能是磁盘大量随机访问造成的,也可能磁盘或者磁盘访问控制器的带宽瓶颈造成的(主要是块操作)

 

 

以上供性能测试时对linux系统实时监控所用,总结还会不断完善.感觉总结起来真的比较辛苦.

 

<think>好的,我需要帮助用户找到通过vCenter Server批量升级ESXi主机的方法或指南。首先,我得确认用户的需求是什么。用户提到的是批量升级,所以可能需要使用自动化或脚本的方式,而不是逐个手动升级。根据提供的引用内容,引用[1]提到主要升级需要新的许可证密钥,比如从4.x到5.x,而次要升级不需要。这可能和用户的升级类型有关,需要提醒用户注意这一点。 接下来,引用[2]提到了使用PowerCLI命令获取ESXi主机列表,比如$esxiHosts = Get-VMHost。这可能是在PowerCLI脚本中批量操作的一部分。引用[3]涉及vCenter Single Sign-On的认证,说明用户可能需要先进行身份验证才能执行操作。引用[4]提到了VCSA 8.0中的vmdk用途,但可能和升级ESXi关系不大,暂时可以忽略。 用户的需求是找到批量升级的指南,所以需要整理出步骤。首先,用户需要准备新的ESXi镜像文件,可能存放在vCenter的可访问位置,比如存储库。然后,使用vSphere Lifecycle Manager(vLCM)来管理主机基准和合规性检查,这可能是在vCenter Server中集成的功能。引用[1]提到主要升级需要新许可证,所以如果用户是从大版本升级(如7.x到8.x),需要确保许可证已更新。 可能的步骤包括: 1. 使用vSphere Client登录vCenter Server,确保有足够权限。[引用3] 2. 通过vLCM创建基准,将ESXi镜像上传为基准。 3. 将基准附加到ESXi主机或集群。 4. 检查兼容性,解决可能的硬件或VM兼容问题。 5. 执行批量升级,可能使用PowerCLI脚本自动化,如引用[2]中的命令获取主机列表,再循环执行升级。 6. 升级完成后验证状态,并更新许可证(如需主要升级)。[引用1] 需要提醒用户注意事项,比如快照VM、备份配置、维护模式等。同时,如果用户需要详细脚本示例,可以结合PowerCLI命令,如Connect-VIServer连接vCenter,然后循环处理每个主机,进入维护模式,安装更新,重启等。 还要注意,用户的问题可能涉及不同版本的具体操作,因此建议参考官方文档确保步骤正确。同时,引用[2]中的替换变量需要用户实际操作时填写正确的地址、用户名和密码。</think>### 通过vCenter Server批量升级ESXi主机的方法指南 #### **步骤1:准备工作** 1. **确认升级类型** - 主要升级(如ESXi 7.x → 8.x):需准备新版本的许可证密钥[^1]。 - 次要升级(补丁或小版本更新):无需更换许可证[^1]。 2. **获取ESXi镜像文件** - 从VMware官网下载目标版本的ISO镜像(如`VMware-ESXi-8.0.x-xxxxxx-depot.zip`)。 3. **备份ESXi主机配置** - 使用`vicfg-cfgbackup`工具或通过vSphere Client导出主机配置文件。 --- #### **步骤2:使用vSphere Lifecycle Manager(vLCM)批量升级** vLCM是vCenter Server内置的集中式生命周期管理工具,支持批量升级。 1. **登录vCenter Server** - 通过vSphere Client连接vCenter Server,需具备管理员权限[^3]。 2. **创建基准(Baseline)** - 导航至**菜单 → 生命周期管理 → 基准**,选择**导入ISO**,上传ESXi镜像文件。 - 定义基准类型为“主机升级”。 3. **附加基准到ESXi主机或集群** - 选中目标集群或主机,进入**更新 → 附加基准**,选择创建的基准。 4. **扫描合规性** - 执行预升级检查,验证硬件、虚拟机兼容性及依赖项。 5. **批量修复(升级)** - 勾选所有需升级的主机,点击**修复**,系统将自动进入维护模式并完成升级。 --- #### **步骤3:通过PowerCLI脚本自动化升级** 若需更灵活控制,可使用VMware PowerCLI脚本批量操作。 ```powershell # 连接vCenter Server Connect-VIServer -Server <vCenter服务器地址> -User <用户名> -Password <密码> [^2] # 获取所有ESXi主机列表 $esxiHosts = Get-VMHost [^2] # 循环升级每台主机 foreach ($host in $esxiHosts) { # 进入维护模式 Set-VMHost -VMHost $host -State Maintenance # 执行升级(需提前上传镜像到主机的存储) $esxcli = Get-EsxCli -VMHost $host -V2 $esxcli.software.profile.update.Invoke(@{ depot = "/path/to/ESXi-8.0.x-depot.zip" dry-run = $false }) # 退出维护模式并重启 Restart-VMHost -VMHost $host -Force } ``` --- #### **注意事项** 1. **兼容性验证** - 确保虚拟机硬件版本、VMware Tools与目标ESXi版本兼容。 2. **许可证更新** - 主要升级后需在**管理 → 许可**中分配新许可证密钥。 3. **回退方案** - 升级失败时,可通过ESXi启动菜单回滚到旧版本(仅支持部分场景)。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值