UbuntuシステムのユーザーグループにRAMを制限します。

UbuntuシステムのユーザーグループにRAMを制限します。

GPUベースのシステムがあります。複数のユーザーがシステムを使用しているため、RAMが完全に利用されてメモリが残らないことがよくあります。私を除くすべてのユーザーに最大RAM制限を設定したいと思います。私は以下を試しました:

  1. Ubuntuでグループ作成を使用してくださいgroupadd
    ポイント3.1に従ってUbuntuでcgroupsグループを作成するにはmemlimit地図時間

    質問:明らかに、cgcreate私が作成したグループのUIDを取得する方法はありません。

  2. これをフォローしました回答:Ubuntuを使用してUbuntuに
    グループを作成しました。にグループが作成されました。最後に実行されました。groupnamegroupadd
    memlimit/etc/cgconfig.conf
    /etc/cgrules.conf@groupname memory memlimit/
    sudo cgrulesengd

    質問:エラーはありませんが、メモリの制限は影響しません。

答え1

もしcgroup 統合 (cgroup バージョン 2)許可され、管理者パスワードがあります。次のステップはUbuntuで動作します。18.04(以前のバージョンのUbuntuについてはわかりません):

  1. systemd.unified_cgroup_hierarchy=1に追加しGRUB_CMDLINE_LINUX_DEFAULT/etc/default/grub実行しますupdate-grub
  2. 以下を実行してください/etc/systemd/system/user.slice.d/allmemory.conf

[Slice] MemoryHigh=32G

  1. Linuxを再起動してください。これにより、ユーザーを含むすべてのユーザーのメモリ消費量が32GBに制限されます。この制限を取り除くには、別のシェルを起動してくださいsystemd-run --scope /bin/bash。新しいbashシェルは他のcgroupに属し、メモリによって制御されません。

関連情報