现象描述
使用 VNC 登录云服务器时,无法正常进入系统,且出现 Cannot allocate memory 报错信息。如下图所示:
可能原因
可能是系统中存在多个大页内存导致。一个大页内存默认占用2048KB,根据 /etc/sysctl.conf
里的大页内存个数计算,以下图为例,1280个大页内存等于2.5GB。如果实例的配置较低,但仍将2.5GB分配给大页内存池(Huge Pages pool),则将导致系统没有可用内存,重启后无法进入系统。
您可以参考参见 故障处理,查看总进程数是否超限,核实大页内存配置,并修改为合适的配置。
故障处理
1. 参见 日志报错 fork:Cannot allocate memory,核实进程数是否超限。若进程数未超限,则执行下一步。2. 使用单用户模式登入云服务器,详情请参见 设置 Linux 云服务器进入单用户模式。3. 执行以下命令,参见 可能原因 核实大页内存配置。
cat /etc/sysctl.conf | grep hugepages
若存在多个大页内存,则请按照以下步骤修改配置。4. 执行以下命令,使用 VIM 编辑器打开 /etc/sysctl.conf
配置文件。
vim /etc/sysctl.conf
5. 按 i 进入编辑模式,结合实例实际配置将 vm.nr_hugepages
配置项调低至合理数值。6. 按 Esc 并输入 :wq 后,按 Enter 保存并退出 VIM 编辑器。7. 执行以下命令,使配置立即生效。
sysctl -p
8. 配置完成后,重启云服务器即可恢复登录。
对腾讯云CVM服务器有疑惑?想了解产品收费? 联系解决方案专家
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心,购买腾讯云享受折上折,更有现金返利:同意关联,立享优惠
阿里云解决方案也看看?: 点击对比阿里云的解决方案
本文来自投稿,不代表新手站长_郑州云淘科技有限公司立场,如若转载,请注明出处:https://www.cnzhanzhang.com/17372.html