tencent cloud

Cloud Virtual Machine

ドキュメントCloud Virtual MachineトラブルシューティングLinuxインスタンスのメモリに関する障害Linuxインスタンス:VNCログイン時に「Cannot allocate memory」というエラーが表示される

Linuxインスタンス:VNCログイン時に「Cannot allocate memory」というエラーが表示される

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-09-08 17:33:12

現象の説明

VNCを使用してCVMにログインすると、システムに正常にアクセスできず、「Cannot allocate memory」というエラー情報が表示されます。下図のとおりです。



考えられる原因

システム内に複数のラージページメモリが存在することが原因と考えられます。ラージページメモリはデフォルトで2048KBを占有し、/etc/sysctl.confのラージページメモリの数に基づいて計算されます。以下の図は例で、1280ラージページメモリは2.5Gに相当します。インスタンスの構成は低めでも、2.5Gがまだラージページメモリプール(Huge Pages pool)に割り当てられている場合、システムには使用可能なメモリがなくなり、再起動後にシステムに入れなくなります。



解決方法

1. 処理手順 を参照して、プロセス総数が限度を超えていないかどうか確認してください。
2. ラージページのメモリ構成を確認し、適切な構成に変更します。

処理手順

1. ログエラーfork:Cannot allocate memory を参照して、プロセス数が限度を超えていないかどうか確認してください。プロセス数が限度を超えていない場合は、次の手順に進んでください。
2. シングルユーザーモードでCVMにログインします。詳細については、Linux CVMを設定してシングルユーザーモードに入る をご参照ください。
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を再起動すればログインを再開できます。

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック