当前位置: 首页 > news >正文

RHCA02

  1. 系统监控工具
    1)top命令
    top命令的概述

功能特点:top是一个实时系统监控工具,可以监控大量系统运行状态信息,包括CPU、内存、进程等资源使用情况。
监控范围:能够监控系统整体负载、进程状态、CPU使用率、内存占用等关键指标。
系统运行时间的查看

时间显示:top命令第一行显示系统当前时间、运行时长和用户数,如"19:02:42 up 56 min"表示系统已运行56分钟。
计时规则:运行时间从系统启动开始计算,重启后会重新计时。
实际应用:可通过该信息判断服务器持续运行时间,例如显示"up 523 days"表示服务器已连续运行523天。
用户数量的显示与解释

用户数含义:显示当前登录系统的用户会话数,每个SSH连接计为一个用户。
查看方法:使用w命令可查看详细用户连接信息,包括登录来源、空闲时间和当前活动。
动态变化:用户数会随连接断开实时变化,如从两个SSH连接断开一个后,用户数显示为1。
平均负载的解读

三个数值:分别表示1分钟、5分钟和15分钟的系统平均负载率。
空闲判断:当三个值都接近0时,表示系统非常空闲。
CPU关系:负载值与CPU核心数直接相关,理想情况下负载值不应超过CPU核心数。
临界值:对于2核CPU,负载值达到2表示CPU资源已饱和;64核CPU则在负载低于64时都算正常。
CPU繁忙程度的衡量

负载测试:通过运行多个dd if=/dev/zero进程可以人为制造CPU负载,观察负载值变化。
核心数对应:2核CPU运行4个计算密集型进程时,负载值会接近4,表示需要4个CPU才能满足需求。
性能判断:当负载持续高于CPU核心数时,说明需要增加CPU资源。
进程状态:top显示的任务中,R表示运行中,S表示休眠,I表示交互式等待。
2)mpstat命令
mpstat命令介绍

基本功能:用于监控处理器使用情况,显示每个CPU核心的详细统计信息
关键指标:
%usr:用户空间占用CPU百分比
%sys:内核空间占用CPU百分比
%idle:CPU空闲百分比
空闲率判断:当%idle为0%时表示处理器处于繁忙状态
查看特定处理器状态

指定处理器:使用-P参数后接处理器编号(如-P 1查看1号处理器)
采样设置:
1 5表示每秒采样1次,连续采样5次
示例:mpstat -P 1 1 5监控1号处理器5秒
繁忙判断:空闲率为0%表示处理器完全被占用
硬中断与软中断

硬中断(hi):
由硬件设备触发(网卡/硬盘/显卡等)
在top命令中显示为"hi"指标
可通过/proc/interrupts查看具体中断号
软中断(si):
与进程优先级相关
在top命令中显示为"si"指标
高优先级进程抢占低优先级进程时产生
中断调优:可根据中断号对硬件中断进行针对性优化
内存与swap机制

swap作用:
当物理内存不足时临时存储不常用内存数据
数据需要时重新读回内存处理(swap只做暂存)
防止内存溢出导致系统崩溃
使用特点:
内存紧张时自动释放buffer/cache
曾经使用的swap空间可能保留直到数据被需要
非正常关闭swap可能导致数据丢失
内存压力测试

测试工具:bigmem可模拟内存占用
示例:bigmem 1200申请1200MB内存
按Enter键释放内存
内存释放机制:
内存紧张时自动释放buffer/cache
部分核心内存不会被完全释放
swap中的数据在关闭时会被读回内存
swap操作命令

关闭swap:swapoff -a命令
执行时会卡住,正在将swap数据读回内存
正常关闭可保证数据完整性
非正常关闭可能导致数据丢失
重新启用:swapon -a可重新激活swap分区
2. vmstat命令
1)进程状态监控

运行状态统计: 可以查看系统中处于运行状态的进程数量,以及阻塞状态的进程数量
状态分类:
运行状态(run): 正在CPU上执行的进程
阻塞状态(block): 等待I/O或其他资源的进程
2)内存与交换空间

内存相关指标:
free: 空闲内存量
buff: 用作缓冲的内存
cache: 用作缓存的内存
交换空间活动:
swap in: 从交换空间读入内存的数据量
swap out: 从内存写入交换空间的数据量
交换机制: 当物理内存不足时,系统会将不活跃的内存页交换到磁盘空间
3)交换空间配置建议

配置原则:
内存<4G: 建议swap为内存2倍
内存4G-16G: 建议swap与内存等大
内存>16G: 建议不超过32G
动态调整:
可根据实际使用情况动态扩展swap空间
扩展前提是磁盘有足够剩余空间
业务考量:
内存密集型应用(如数据库)可适当增大swap
Web应用等连接密集型服务也建议配置较大swap
4)系统性能指标

上下文切换:
表示进程间通信的频繁程度
数值高说明系统进程调度频繁
过多切换会导致系统性能下降
中断速率:
反映系统处理硬件中断的频率
是评估系统负载的重要指标之一
二、swap设置
基本原则: 不需要过于在意swap大小的细节设置,遵循基本设置原则即可
灵活性: 即使初始设置不合理,后续也可以进行调整
应用场景:
当应用消耗过多内存时使用
在内存资源不足的情况下需要更多swap空间
特殊场景:
k8s建议关闭swap
Docker压力测试时建议关闭swap,以测试系统真实承受能力
三、内存溢出

  1. 内存申请失败
    直接后果: 当申请内存超过物理内存时,程序会自动结束或失败
    示例: 尝试申请1600M内存时,由于物理内存不足,程序直接终止
    系统保护机制: 系统会杀死某些进程以防止内存溢出导致系统死机
  2. OOM Killer机制
    全称: Out of Memory Killer
    功能: 自动终止某些进程以保障系统正常运行
    特点:
    是系统防止内存溢出的重要机制
    会在内存调优部分详细讲解
    有专门的OOM解决方案案例
  3. 虚拟内存与物理内存
    申请机制:
    应用程序申请的是虚拟内存(如100G、200G)
    系统分配虚拟内存,但实际只使用部分物理内存
    区别:
    虚拟地址空间与物理地址空间是两个不同概念
    与swap无关,是应用程序层面的机制
    工作流程:
    应用程序通过虚拟内存申请
    系统从物理内存中实际分配资源
    后续内容: 内存管理将详细讲解虚拟内存和物理内存的工作机制
    四、PCP监控
  4. 安装pcp工具
    1)工具安装
    工具名称: pcp-GUI(Performance Co-Pilot图形界面)
    安装方式: 通过yum install pcp pcp-gui命令安装,系统默认不包含该工具
    后台服务: 安装完成后会自动启用pmcd服务,该服务用于收集性能指标数据
    2)基本功能
    监控范围: 可监控2000+种系统参数,涵盖CPU、内存、磁盘、网络等各方面
    参数查询: 使用pminfo命令查看所有可监控参数
    监控示例:
    磁盘读写监控:disk.all.read(读字节数)、disk.all.write(写字节数)
    单位显示:默认以KB为单位显示监控数据
  5. pcp查询参数意义
    1)参数解释功能
    命令格式: pminfo -d 参数名
    功能说明: 可查询具体监控参数的含义和单位
    示例:disk.all.read参数表示"所有磁盘设备读取的字节数"
    包含参数类型、数据来源、计量单位等详细信息
    2)实时监控命令
    基本命令: pmval -v 参数名
    示例:pmval -v disk.all.write监控磁盘写入量
    输出格式: 实时显示每秒数据变化,包括当前值和单位
  6. 图形界面
    1)PM Chart工具
    启动命令: pmchart(后台运行需加&)
    功能特点:
    可视化监控多个参数
    支持自定义监控图表组合
    颜色区分不同指标(如黄色表示读,蓝色表示写)
    2)数据记录功能
    记录操作: 通过界面"Record Start"按钮开始记录
    存储位置: 数据保存在~/.pcp目录下
    记录间隔: 默认每秒记录一次,可自定义调整
    回放功能: 可查看历史记录的数据变化趋势
  7. 考试题pcplog分析
    1)考试文件处理流程
    文件获取: 考试时会将监控数据文件夹压缩成.tgz格式的数据包,需要从服务器下载
    文件内容: 解压后包含数据库文件(监控数据)和configure文件(监控参数配置)
    注意事项:
    数据库文件不能直接打开
    configure文件记录了被监控的系统参数
    2)数据分析方法
    参数查看: 通过configure文件确认监控了哪些系统参数
    数据解读:
    记录开始/结束时间(如20:03:48-20:05:09)
    监控次数(如81次)
    记录间隔(1秒/次)
    数据单位(KB/s)
    多设备监控: 可同时监控多个硬盘(sda/sdb)或NAS设备
    3)科学计数法转换
    表示形式: 如
    计算方法: 使用公式进行转换
    数据处理技巧: 分析时需要排除前13行非数据内容
    4)例题:pcplog分析题
    题目解析
    解题步骤:
    解压下载的.tgz文件
    查看configure确认监控参数
    使用pmvl -a命令分析数据
    处理科学计数法数据
    典型问题:
    计算每秒写入KB数
    确定峰值写入速度
    答案处理:
    保留原始监控数据单位
    正确转换科学计数法
  8. 公式换算内存
    1)数据提取与处理
    tail命令应用:使用tail -n 12提取最后12行数据,后调整为tail -n 13固定提取13行特定位置数据
    数据过滤:通过减3操作去除最后三行不需要的数据
    数值转换:使用awk工具处理数据,其中print$2表示提取第二列数值
    2)进制转换方法
    十六进制转换:使用printf函数将16进制数值转换为十进制
    括号使用:转换时需要正确使用括号保证运算顺序
    验证方法:通过比对转换结果(如72915、125400等数值)验证转换准确性
    3)单位换算技巧
    KB换算:将KB值除以1000转换为MB(如125400KB→125MB/s)
    性能指标:
    平均值:278MB/s
    最高值:300MB/s(对应311数值)
    典型范围:249-276MB/s
    科学计数法处理:需掌握科学计数法转十进制的方法
    4)监控工具应用
    系统监控:可以记录和分析系统设备详细信息
    性能分析:通过数值换算判断系统性能指标
    考试重点:需掌握数值换算方法和性能判断标准
    5)例题:设备性能分析
    题目解析
    数据提取流程:先获取固定行数→去除干扰行→提取特定列
    换算步骤:十六进制→十进制→单位换算
    答案判断:通过比较换算结果确定最高性能值
    易错点:科学计数法识别、单位换算系数选择
    6)工具补充说明
    dmesg工具:系统消息监控的补充工具
    综合应用:多种监控工具配合使用可获得完整系统状态
    注:本笔记完整记录了从原始数据提取到最终性能分析的全流程,重点包括命令使用、数值转换方法和性能指标判断标准,适用于系统监控和性能分析场景的复习备考。
    五、系统启动
  9. 系统启动流程
    启动阶段:光标闪烁时系统正在进行内核加载等关键操作
    关键步骤:
    开机自检(BIOS/UEFI)
    加载GRUB引导程序
    读取启动分区
    加载内核和根分区驱动
    以只读方式挂载根文件系统
    可视化控制:通过修改GRUB参数(删除rhgb和quiet)可显示详细启动过程
    重要分界点:出现"Welcome to Red Hat"红色提示行表示内核加载完成
  10. dmessage
    功能定位:记录内核加载和驱动初始化阶段的详细日志
    核心特性:
    无时间戳:显示启动过程的相对时间(如6.38秒)
    内存存储:仅保存在内存缓冲区中,关机后消失
    单次记录:只保留最近一次启动信息
    版本差异:
    RHEL7及之前:/var/log/dmessage文件
    RHEL8开始:改用dmesg命令查看
    实用技巧:
    使用dmesg | grep eth查看网卡识别情况
    通过dmesg -T显示带时间戳的日志
    过滤特定硬件信息(如sda、网卡型号等)
    典型应用:
    诊断硬件识别问题
    查看驱动加载情况
    验证内核参数修改效果
    获取设备原始命名(如网卡初始名称)
    六、系统调优基础
    调优位置:
    /proc目录下的系统参数
    /sys目录下的设备参数
    /proc/sys目录的内核参数
    持久化工具:
    使用systemctl工具配置内核参数
    可确保重启后参数仍然有效
    七、调优
  11. 查看内核参数
    查看命令: 使用systemctl -a可以列出系统所有内核参数,共955个
    存储位置: 所有参数存储在/proc/sys/目录下,例如网络参数在/proc/sys/net/ipv4/子目录
  12. 内核参数修改方法
    1)临时修改
    内存修改: 直接修改/proc/sys/下的参数文件(如echo 1 > /proc/sys/net/ipv4/ip_forward)
    立即生效: 修改后立即生效,因为直接操作内存数据
    临时性: 重启后失效,不会写入硬盘
    2)永久修改
    配置文件: /etc/sysctl.conf
    语法规则: 将/proc/sys/后的路径用点连接(如net.ipv4.ip_forward=1)
    生效方式:
    立即生效:sysctl -p(加载配置文件到内存)
    重启生效:系统启动时会自动读取该文件
    3)替代命令
    快捷修改: 使用sysctl -w命令(如sysctl -w net.ipv4.ip_forward=1)
    等效操作: 该命令效果等同于直接修改/proc/sys/对应文件
  13. 忽略ICMP请求
    参数路径: /proc/sys/net/ipv4/icmp_echo_ignore_all
    开关作用:
    0:响应ICMP请求(默认值)
    1:忽略ICMP请求(实现"防ping"效果)
    网络影响: 修改后不影响SSH等连接,仅阻止ping响应
    配置示例:
  14. 路由转发功能
    关键参数: /proc/sys/net/ipv4/ip_forward
    功能说明:
    0:禁用路由转发(默认)
    1:启用路由转发(将Linux变为路由器)
    典型场景:
    注意事项: 需配合正确的网关设置使用
  15. tend调优工具
    1)基本介绍
    功能定位: 系统调优工具,帮助初学者或管理员进行系统性能优化
    版本适配:
    红帽6开始引入
    红帽7默认安装
    红帽8 CSA考试已包含相关考点
    目录位置: /usr/lib/tuned/
    2)应用场景
    典型场景:
    桌面应用优化
    省电模式配置
    网络性能调优(时延/吞吐量)
    虚拟化环境优化(KVM宿主机/虚拟机)
    实现方式: 提供预置的内核参数调优方案
    3)配置文件使用
    核心文件: tuned.conf
    包含各类调优参数建议值
    参数分类清晰(CPU/磁盘/网络等)
    生效机制:
    开机自动加载(通过tuned服务)
    与systemctl配置冲突时以后者为准
    支持自定义profile(如h4442)
    4)高级功能
    脚本集成:
    支持在配置中添加执行脚本
    通过日志(/var/log/tuned.log)验证执行情况
    服务依赖:
    可设置启动顺序依赖(如FTP服务后启动)
    解决服务间参数加载时序问题
    动态参数处理:
    支持变量方式处理动态进程ID
    示例:echo -17 > /proc/$(pidof vsftpd)/oom_adj
    5)使用建议
    最佳实践:
    将多数调优参数集中写入单个配置文件
    关键服务参数建议直接写入服务单元文件
    复杂调优可结合cgroup实现
    优势总结:
    避免传统rc.local方式的维护困难
    提供统一管理界面和日志跟踪
    支持场景化的一键调优方案
  16. 服务启动
    1)红帽6与红帽7服务管理差异
    版本差异:红帽6使用传统的init脚本管理服务,而红帽7改用systemd系统
    操作习惯:红帽6用户初次使用红帽7会有强烈不适应感,类似Windows管理员初次接触Linux
    命令对比:红帽6中启动FTP服务使用service FTP restart,实际是调用/etc/init.d/下的脚本
    2)服务脚本工作原理
    位置参数机制:服务脚本通过case$1 in结构处理start/stop/restart等参数
    start:执行服务启动脚本段
    stop:执行服务停止脚本段
    restart:先执行stop再执行start
    错误处理:当输入无效参数时,脚本会显示使用帮助信息
    3)红帽7的systemd改进
    配置文件位置:服务配置位于/usr/lib/systemd/system/目录下
    优势:比传统脚本更灵活,实际功能等价但实现方式不同
    配置读取:通过For in config循环读取目录下所有.config文件
    4)服务启动顺序控制
    传统启动顺序管理
    目录结构:通过/etc/rc.d/rc5.d/下的文件控制(5对应运行级别)
    命名规则:
    S13network:S表示start,13表示启动顺序
    K50netconsole:K表示kill,50表示关闭顺序
    数字含义:数字越小启动越早,关闭时数字越大越先关闭
    启动顺序配置
    配置方法:通过chkconfig on命令设置,实际修改/etc/rc.d/rc*.d/下的链接
    示例:FTP服务通常设置为S60启动,K50关闭
    关机流程:执行init 0时先按顺序关闭所有服务再关机
    5)版本演进对比
    进程变化:红帽6第一个进程是init,红帽7改为systemd
    用户适应:长期使用红帽6的用户需要时间适应systemd管理方式
    发展趋势:红帽8延续了systemd的管理模式,证明其设计优势
http://www.lryc.cn/news/610209.html

相关文章:

  • 飞算JavaAI编程插件:以AI之力赋能Java开发,让编码效率再升级
  • 0基礎網站開發技術教學(三) --(後端PHP篇)-- [內有2025最新可用 phpstudy2018下載鏈接]
  • ShowDoc与Docmost对比分析:开源文档管理工具的选择指南
  • numpy基础知识2
  • 《P1462 通往奥格瑞玛的道路》
  • 图的存储方式-邻接表
  • 超急评估:用提前计算分摊性能成本
  • C + +
  • 机器学习(12):拉索回归Lasso
  • Linux环境下(Ubuntu)Fortran语言如何安装配置NetCDF
  • Integer Types Range and varieties
  • QT:交叉编译mysql驱动库
  • MySQL进阶:(第八篇)深入解析InnoDB存储架构
  • 如何手动打包 Linux(麒麟系统)的 Qt 程序
  • Linux 系统启动原理
  • 通用代码自用
  • [硬件电路-156]:什么是电信号? 电信号的本质:电信号是随时间变化的电压或电流。本质是电子运动表征信息,兼具能量传输与信息编码传递功能。
  • 开源网页生态掘金:从Bootstrap二次开发到行业专属组件库的技术变现
  • 多线程(一)
  • 【Spring AI快速上手 (二)】Advisor实现对话上下文管理
  • 【计算机网络 | 第2篇】计算机网络概述(下)
  • 如何使用 DBeaver 连接 MySQL 数据库
  • 移动端 WebView 视频无法播放怎么办 媒体控件错误排查与修复指南
  • SAP-ABAP:ABAP Open SQL 深度解析:核心特性、性能优化与实践指南
  • 深入剖析Java Stream API性能优化实践指南
  • Mybatis 简单练习,自定义sql关联查询
  • 卸油管链接检测误检率↓76%:陌讯多模态融合算法实战解析
  • Dbeaver数据库的安装和使用(保姆级别)
  • 基于FAISS和Ollama的法律智能对话系统开发实录-【大模型应用班-第5课 RAG技术与应用学习笔记】
  • Ubuntu系统VScode实现opencv(c++)图像一维直方图