阿里云虚拟主机内存占用大问题解决

文章讲述了作者将一台4核8G的主机降级为2核4G后,发现即使未启动大量任务,内存占用仍达2.5G。通过一系列排查,包括查看top、free-m和psaux,发现巨页内存(hugepage)占用问题。博主逐步解决过程,揭示了hugepage对内存管理的影响和配置调整的重要性。

今年买了一台2核4G的主机,把4核8G的降配下来。

结果:机器没有启动任务程序,就占用2.5G内存。
 

total used free shared buff/cache available Mem: 

3.7G 2.5G 1.0G 64M 159M 972M Swap: 0B 0B 0B

阿里工程师回复:

1、top,然后按大写的M对占用内存的进程进行排序

2、free -m

top:

Tasks:  97 total,   1 running,  96 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.0 us,  0.5 sy,  0.0 ni, 98.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  3881688 total,   929616 free,  2645168 used,   306904 buff/cache
KiB Swap:        0 total,        0 free,        0 used.   922736 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                                                                                  
  889 root      20   0  474660  32132     72 S   0.0  0.8   0:11.79 dockerd                                                                                                                                                                                                  
  453 root      20   0  341060  27364    716 S   0.0  0.7   0:00.91 firewalld                                                                                                                                                                                                
 1288 root      10 -10  144920  20652   3620 S   3.3  0.5  20:44.46 AliYunDun                                                                                                                                                                                                
  944 root      20   0  343864  15812    176 S   0.0  0.4   0:05.04 containerd                                                                                                                                                                                               
  885 root      20   0  562884  12900     80 S   0.0  0.3   0:04.87 tuned                                                                                                                                                                                                    
  812 root      20   0  113568  12492      0 S   0.0  0.3   0:00.00 dhclient                                                                                                                                                                                                 
  894 root      20   0  806092   9336   3784 S   0.0  0.2   0:37.64 aliyun-service                                                                                                                                                                                           
  395 polkitd   20   0  535040   8392   1264 S   0.0  0.2   0:00.24 polkitd                                                                                                                                                                                                  
  405 root      20   0  295512   5968   4012 S   0.0  0.2   0:10.61 rsyslogd                                                                                                                                                                                                 
27180 root      20   0  148688   5740   4428 S   0.0  0.1   0:00.10 sshd                                                                                                                                                                                                     
  336 root      20   0   37284   5400   4924 S   0.0  0.1   0:17.93 systemd-journal                                                                                                                                                                                          
 1252 root      20   0  214292   3972     16 S   0.0  0.1   0:01.35 php-fpm                                                                                                                                                                                                  
 1266 www       20   0  214292   3968      8 S   0.0  0.1   0:00.00 php-fpm                                                                                                                                                                                                  
 1267 www       20   0  214292   3968      8 S   0.0  0.1   0:00.00 php-fpm                                                                                                                                                                                                  
 1261 www       20   0  214292   3964      8 S   0.0  0.1   0:00.00 php-fpm                                                                                                                                                                                                  
 1262 www       20   0  214292   3964      8 S   0.0  0.1   0:00.00 php-fpm                                                                                                                                                                                                  
 1263 www       20   0  214292   3964      8 S   0.0  0.1   0:00.00 php-fpm  

free -m

[root@izwz9947gr37kg75oe64tkz ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           3790        2584         906          72         299         899
Swap:             0           0           0

卸载宝塔后:
[root@izwz9947gr37kg75oe64tkz ~]# top 
top - 13:28:49 up 13:38,  4 users,  load average: 0.07, 0.09, 0.07
Tasks:  89 total,   2 running,  87 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.3 sy,  0.0 ni, 99.0 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st
KiB Mem :  3881688 total,   801700 free,  2637216 used,   442772 buff/cache
KiB Swap:        0 total,        0 free,        0 used.   928240 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                                                                                  
  889 root      20   0  474660  32132     72 S   0.0  0.8   0:11.86 dockerd                                                                                                                                                                                                  
  453 root      20   0  341060  27364    716 S   0.0  0.7   0:00.91 firewalld                                                                                                                                                                                                
 1288 root      10 -10  144920  21148   4116 S   1.9  0.5  20:55.11 AliYunDun                                                                                                                                                                                                
  944 root      20   0  343864  15812    176 S   0.0  0.4   0:05.07 containerd                                                                                                                                                                                               
  885 root      20   0  562884  12900     80 S   0.0  0.3   0:04.90 tuned                                                                                                                                                                                                    
  812 root      20   0  113568  12492      0 S   0.0  0.3   0:00.00 dhclient                                                                                                                                                                                                 
  894 root      20   0  806092   9364   3808 S   0.0  0.2   0:37.87 aliyun-service                                                                                                                                                                                           
  395 polkitd   20   0  535040   8580   1452 S   0.0  0.2   0:00.25 polkitd                                                                                                                                                                                                  
  405 root      20   0  295512   6484   4520 S   0.0  0.2   0:10.73 rsyslogd                                                                                                                                                                                                 
  336 root      20   0   37284   5992   5516 S   0.0  0.2   0:18.13 systemd-journal                                                                                                                                                                                          
27180 root      20   0  148688   5740   4428 S   0.0  0.1   0:00.12 sshd                                                                                                                                                                                                     
27667 root      20   0  148688   5740   4428 S   0.0  0.1   0:00.06 sshd                                                                                                                                                                                                     
27710 root      20   0  145788   4928   3696 S   0.0  0.1   0:00.00 sshd                                                                                                                                                                                                     
27712 root      20   0  145788   4788   3556 S   0.0  0.1   0:00.00 sshd                                                                                                                                                                                                     
    1 root      20   0  191064   3104   1584 S   0.0  0.1   0:03.12 systemd                                                                                                                                                                                                  
27711 sshd      20   0  106200   2444   1428 S   0.0  0.1   0:00.00 sshd  

差不了多少:

   total        used        free      shared  buff/cache   available
Mem:           3790        2576         780          72         433         905
Swap:             0           0           0

查占用内存详情,前10:

[root@izwz9947gr37kg75oe64tkz ~]# ps aux|head -1; ps aux | sort -k4nr | head -10

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root       889  0.0  0.8 474660 32132 ?        Ssl  Nov06   0:11 /usr/bin/dockerd -H fd://
root       453  0.0  0.7 341060 27364 ?        Ssl  Nov06   0:00 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid
root      1288  2.5  0.5 144920 21148 ?        S<sl Nov06  21:01 /usr/local/aegis/aegis_client/aegis_11_13/AliYunDun
root       944  0.0  0.4 343864 15812 ?        Ssl  Nov06   0:05 /usr/bin/containerd
root       812  0.0  0.3 113568 12492 ?        Ss   Nov06   0:00 /sbin/dhclient -1 -q -lf /var/lib/dhclient/dhclient--eth0.lease -pf /var/run/dhclient-eth0.pid -H izwz9947gr37kg75oe64tkz eth0
root       885  0.0  0.3 562884 12900 ?        Ssl  Nov06   0:04 /usr/bin/python -Es /usr/sbin/tuned -l -P
polkitd    395  0.0  0.2 535040  8580 ?        Ssl  Nov06   0:00 /usr/lib/polkit-1/polkitd --no-debug
root       894  0.0  0.2 806092  9412 ?        Ssl  Nov06   0:38 /usr/local/share/aliyun-assist/2.2.3.247/aliyun-service
postfix  27752  0.0  0.1  95204  5088 ?        S    13:29   0:00 pickup -l -t unix -u
root     27180  0.0  0.1 148688  5740 ?        Ss   13:20   0:00 sshd: root@pts/2

阿里工程师回复2:

firewalld:不需要,先停止
aegis_client:卸载云安全中心插件
重启服务器

          只释放了不几M内存。

阿里工程师回复3:

/proc/meminfo中看到有hugepage占用了内存查看/etc/sysctl.conf中有相应的参数设置。您可以在/etc/sysctl.conf中把该参数注释,然后重启系统再查看一下内存使用情况。

重启服务器后:

[root@izwz9947gr37kg75oe64tkz ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           3790         154        3323           8         313        3404
Swap:             0           0           0

结论:hugepage是大页内存,不是虚拟内存,ECS对配置hugepage没有限制,但是配置之后,系统会为hugepage预留内存。

总结解决问题,还得找专业人的。

### 阿里云服务器2G内存实际可用容量低的原因 在阿里云服务器上,当配置为2GB RAM时,实际上可使用的内存量可能低于预期值。这主要是由于以下几个原因: - **操作系统开销**:Linux系统本身会占用一部分物理内存用于缓存文件数据和其他内部操作,这部分资源对于提升系统的整体性能至关重要[^1]。 - **后台进程和服务**:默认安装的操作系统通常运行着多个守护程序和网络服务,这些都会消耗一定量的RAM空间。 - **虚拟化技术的影响**:如果采用的是虚拟机形式提供的云计算实例,则hypervisor层也会额外占据一些内存来管理各个来宾OS之间的隔离性和安全性[^3]。 针对上述情况,可以采取如下措施优化并增加剩余可用内存的数量: #### 调整Swap交换分区设置 创建或调整swap小可以帮助缓解物理内存不足的问题。通过命令`swapon -s`查看当前swap状态;如果没有启用的话可以通过以下方式建立新的swap文件: ```bash sudo fallocate -l 2G /swapfile # 创建一个2GB小的swap文件 sudo chmod 600 /swapfile # 设置权限只允许root访问 sudo mkswap /swapfile # 将其标记为swap区域 sudo swapon /swapfile # 启动新创建好的swap区 ``` #### 减少不必要的启动项和服务 关闭那些不必要开机自启的服务项目,减少它们对内存的压力。利用工具如`systemctl list-units --type=service`找出所有正在运行中的服务单元名称,并决定哪些是可以禁用掉的(例如某些数据库引擎、Web应用框架等),执行相应指令停止指定服务以及设定不再随主机重启而自动加载: ```bash sudo systemctl stop <servicename>.service sudo systemctl disable <servicename>.service ``` #### 升级硬件规格 考虑到长期稳定性的需求,在条件允许的情况下适当升级ECS实例类型也是一种有效的办法。比如从基础版N4升至更配版本,可以获得更多的CPU核心数及更内存容量支持业务增长带来的负载变化[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值