在麒麟操作系统(基于Linux内核)中进行系统性能监控和优化,需要结合系统工具、内核参数调整和硬件资源管理。以下是详细的解决方案:
top
/htop
实时监控CPU、内存、进程资源占用:
top # 基础版
htop # 增强版(需安装:sudo apt install htop)
P
(CPU排序)、M
(内存排序)、T
(时间排序)。vmstat
查看系统整体资源使用(CPU、内存、IO):
vmstat 1 # 每秒刷新一次
iostat
监控磁盘I/O性能(需安装 sysstat
):
sudo apt install sysstat
iostat -x 1 # 查看磁盘吞吐和延迟
netstat
/ss
网络连接和带宽监控:
ss -tulnp # 查看监听端口和连接
iftop # 实时网络流量(需安装:sudo apt install iftop)
nmon
综合监控工具(CPU、内存、磁盘、网络):
sudo apt install nmon
nmon # 交互式界面
dstat
替代 vmstat
和 iostat
的多功能工具:
sudo apt install dstat
dstat -cdngy # 监控CPU、磁盘、网络、内存
sar
历史性能数据(需启用 sysstat
服务):
sar -u 1 3 # 查看CPU历史数据
调整进程优先级
使用 nice
和 renice
:
nice -n 10 command # 启动低优先级进程
renice -n 5 -p 1234 # 调整已有进程优先级
限制CPU资源
使用 cgroups
或 cpulimit
:
cpulimit -p 1234 -l 50 # 限制PID为1234的进程CPU占用50%
关闭不必要的服务
使用 systemctl
禁用冗余服务:
systemctl list-unit-files --type=service
systemctl disable servicename
释放缓存
手动清理缓存(谨慎使用):
echo 3 > /proc/sys/vm/drop_caches # 释放页缓存、目录项、inode
调整Swappiness
减少交换分区使用(默认值60,建议10-30):
sudo sysctl vm.swappiness=10
# 永久生效:在 /etc/sysctl.conf 中添加 `vm.swappiness=10`
使用大页内存(HugePages)
优化数据库等内存密集型应用:
sudo sysctl vm.nr_hugepages=1024
调度器选择
针对SSD或NVMe调整为 deadline
或 noop
:
echo "deadline" | sudo tee /sys/block/sda/queue/scheduler
文件系统优化
noatime
、data=writeback
)。ext4
或 xfs
替代旧文件系统。LVM缓存
为机械硬盘添加SSD缓存(需LVM配置)。
调整TCP参数
修改 /etc/sysctl.conf
:
net.core.rmem_max=16777216
net.ipv4.tcp_fastopen=3
生效命令:sudo sysctl -p
启用多队列网卡(RSS)
分配IRQ到多核:
sudo ethtool -L eth0 combined 8
编辑 /etc/sysctl.conf
,优化以下参数(示例):
# 减少TCP连接延迟
net.ipv4.tcp_syncookies=1
# 提升并发连接数
net.core.somaxconn=4096
# 减少内存碎片
vm.overcommit_memory=1
生效命令:sudo sysctl -p
journalctl
bash
journalctl -xe --no-pager
dmesg
bash
dmesg | grep -i error
alertmanager
或 Zabbix
设置阈值告警。通过以上方法,可以全面监控麒麟操作系统性能并针对性优化。如需更深入的调优,需结合具体应用场景(如数据库、Web服务器等)。