20230401--RHEL/Rocky/AlmaLinux8表现内存低于现实硬件内存

计算机软件开发 2024-9-2 08:32:06 106 0 来自 中国
由于RHEL/CentOS7在2024年6月30日将EOL(End Of Life,结束生命周期),迩来一连在将生产上的服务的OS升级迁徙到RHEL/AlmaLinux8,但是一连发现本来用类似的资源的服务器经常出现SWAP不敷、杀毒软件ClamAV历程因内存而被Kill等告警。
本日迁徙一个测试情况的Web应用,参考原来服务申请了一个1C1G(1024M)的服务器,安装AlmaLinux8.7后,由于同步大量数据期待发现现实内存竟然只有790M。
# more /proc/meminfo |grep MemTotalMemTotal:         796008 kB# free -m              total        used        free      shared  buff/cache   availableMem:            777         306         231           6         239         339Swap:          2047           0        2047一度猜疑是云提供商提供的资源是虚的1G,但是对比旧服务器、登录云提供商官网确认。都没有标题,开始猜疑是AlmaLinux 8系统的标题;快要期摆设的一些服务器都看了下,内存资源都未到达现实物理内存的值。
1)查察硬件内存资源,确实是1024M。
# dmidecode -t Memory|moreHandle 0x0085, DMI type 6, 12 bytesMemory Module Information        Socket Designation: RAM socket #0        Bank Connections: None        Current Speed: Unknown        Type: EDO DIMM        Installed Size: 1024 MB (Single-bank Connection)        Enabled Size: 1024 MB (Single-bank Connection)        Error Status: OK2)1G/2G/4G被占用情况
1G内存,现实仅800M-# more /proc/meminfo |grep MemTotalMemTotal:         796008 kB2G内存,现实1800M-# more /proc/meminfo |grep MemTotalMemTotal:        1828236 kB4G内存,现实3800M-more /proc/meminfo |grep MemTotalMemTotal:        3793476 kB1.观察分析

由于系统表现少了200M的内存,猜疑系统启动前的一些机制占用的该部门内存;
1)查察启动过程内核中内存干系加载信息
# dmesg | grep -i memory[    0.000000] ACPI: Reserving FACP table memory at [mem 0x3fefee73-0x3fefef66][    0.000000] ACPI: Reserving DSDT table memory at [mem 0x3feeaa08-0x3fefee72][    0.000000] ACPI: Reserving FACS table memory at [mem 0x3fefffc0-0x3fefffff][    0.000000] ACPI: Reserving FACS table memory at [mem 0x3fefffc0-0x3fefffff][    0.000000] ACPI: Reserving BOOT table memory at [mem 0x3feea9e0-0x3feeaa07][    0.000000] ACPI: Reserving APIC table memory at [mem 0x3feea29e-0x3feea9df][    0.000000] ACPI: Reserving MCFG table memory at [mem 0x3feea262-0x3feea29d][    0.000000] ACPI: Reserving SRAT table memory at [mem 0x3fee9757-0x3fee9ffe][    0.000000] ACPI: Reserving HPET table memory at [mem 0x3fee971f-0x3fee9756][    0.000000] ACPI: Reserving WAET table memory at [mem 0x3fee96f7-0x3fee971e][    0.000000] Reserving 160MB of memory at 672MB for crashkernel (System RAM: 1023MB)为crashkernel预留160MB内存(系统RAM: 1023MB)...原来是为crashkernel保存了160MB的内存,属于kdump服务。kdump服务是在系统奔溃时天生内核转储文件。
2)查抄crashkernel设置及kdump服务
查察kdump服务状态。
#  systemctl status kdump.service查察crashkernel设置
# cat /etc/default/grubGRUB_TIMEOUT=5GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"GRUB_DEFAULT=savedGRUB_DISABLE_SUBMENU=trueGRUB_TERMINAL_OUTPUT="console"GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/almalinux-swap rd.lvm.lv=almalinux/root rd.lvm.lv=almalinux/swap"GRUB_DISABLE_RECOVERY="true"GRUB_ENABLE_BLSCFG=true3)查察官方文档关于kdump服务的设置。
在系统引导过程中为 kdump 保存内存。内存巨细在系统 Grand Unified Bootloader (GRUB)设置中设置。内存巨细取决于设置文件中指定的 crashkernel= 选项的值以及系统物理内存的巨细。
crashkernel= 选项可以通过多种方式界说。您可以指定 crashkernel= 值或设置 auto 选项。crashkernel=auto 参数根据系统中的物理内存总量自动保存内存。设置后,内核将自动为捕获内核保存恰当数量的所需内存。这有助于防止内存不敷(OOM)错误。
注意:
kdump 的自动内存分配因系统硬件架构和可用内存巨细而异。
比方,在 AMD64 和 Intel 64 上,crashkernel=auto 参数仅在可用内存高出 1GB 时才起作用。64 位 ARM 架构和 IBM Power Systems 须要高出 2GB 的可用内存。
假如系统自动分配低于最小内存阈值,您可以手动设置保存内存量。
2.办理标题

1))制止kdump服务
# systemctl stop kdump# systemctl disable kdump2)修改grub文件
将crashkernel=auto改为crashkernel=0
# cp -p /etc/default/grub /etc/default/grub.org# vi /etc/default/grub 变更以下内容:   变更前:GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/almalinux-swap rd.lvm.lv=almalinux/root rd.lvm.lv=almalinux/swap"   变更后:GRUB_CMDLINE_LINUX="crashkernel=0 resume=/dev/mapper/almalinux-swap rd.lvm.lv=almalinux/root rd.lvm.lv=almalinux/swap"3)更新grub设置文件、重启系统
# grub2-mkconfig -o /boot/grub2/grub.cfg# reboot4)确认内存增长了160MB
# more /proc/meminfo |grep MemTotalMemTotal:         959852 kB固然内存空间提升160M,但是离1024M还差一些,后续再分析。
参考URL:

https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/8/html/managing_monitoring_and_updating_the_kernel/configuring-kdump-memory-usage_configuring-kdump-on-the-command-line
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-23 18:27, Processed in 0.158592 second(s), 32 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表