ฉันกำลังพยายามจำกัดการแลกเปลี่ยนการใช้กระบวนการโดยใช้ MemorySwapMax
ตามที่กล่าวไว้ใน เอกสาร ด้วย Ubuntu 18.04
สิ่งแวดล้อม
ubuntu@vrni-platform:/usr/lib/systemd/system$ uname -a
Linux vrni-platform 4.15.0-143-generic #147-Ubuntu SMP วันพุธที่ 14 เมษายน 16:10:11 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
ubuntu@vrni-platform:/usr/lib/systemd/system$ systemctl --version
ระบบd 237
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 ลำดับชั้นเริ่มต้น = ไฮบริด
ไฟล์ systemd unit ของฉันมีลักษณะดังนี้
[หน่วย]
คำอธิบาย=บริการของฉัน
หลังจาก = network.target
StartLimitIntervalSec=0
[บริการ]
ประเภท = ง่าย
เริ่มใหม่ = เสมอ
รีสตาร์ทวินาที = 1
ผู้ใช้ = การสนับสนุน
MemoryMax=2000M
KillMode=กระบวนการ
MemoryAccounting=จริง
OOMScoreAdjust=1000
MemorySwapMax=0
ExecStart=/usr/bin/java -cp /home/support -XX:NativeMemoryTracking=summary -Xmx10000m MemoryConsumer 100 200 1
ฉันพยายามปิดการใช้งาน swap สำหรับกระบวนการนี้โดยระบุ 0 สำหรับ MemorySwapMax
. แต่ดูเหมือนว่ามีบางอย่าง ปัญหา ใน systemd ซึ่งได้รับการแก้ไขใน systemd 239
ดังนั้นฉันจึงลองตั้งค่า MemorySwapMax=1M
. แต่นั่นก็ดูเหมือนจะไม่ได้จำกัดการใช้หน่วยความจำ swap สำหรับบริการ systemd นี้
เอกสารสำหรับ MemorySwapMax
ระบุสิ่งนี้
การตั้งค่านี้ได้รับการสนับสนุนก็ต่อเมื่อใช้ลำดับชั้นของกลุ่มควบคุมแบบรวมและปิดใช้งาน MemoryLimit=
ใครช่วยบอกฉันทีว่าฉันจะรู้ได้อย่างไรว่า systemd กำลังใช้งานอยู่ ลำดับชั้นของกลุ่มควบคุมแบบรวม
กำลังถูกใช้ในการตั้งค่าของฉันหรือสิ่งอื่นใดที่อาจเป็นปัญหาซึ่งไม่อนุญาต MemorySwapMax
มีผลบังคับใช้?
แก้ไข
ดังที่ได้กล่าวมานี้ คำตอบ ฉันสามารถเห็น cgroup2
เปิดใช้งาน
ubuntu@vrni-platform:/tmp/debraj$ sudo mount -t cgroup2 ไม่มี /tmp/debraj
ubuntu@vrni-platform:/tmp/debraj$ ls -l /tmp/debraj/
รวม 0
-r--r--r-- 1 รูทรูท 0 2 ก.ค. 17:13 น. cgroup.controllers
-rw-r--r-- 1 รูทรูท 0 2 ก.ค. 17:13 น. cgroup.max.ความลึก
-rw-r--r-- 1 รูทรูท 0 2 ก.ค. 17:13 น. cgroup.max.descendants
-rw-r--r-- 1 รูท 0 มิ.ย. 30 14:42 น. cgroup.procs
-r--r--r-- 1 รูทรูท 0 2 ก.ค. 17:13 น. cgroup.stat
-rw-r--r-- 1 รูทรูท 0 2 ก.ค. 17:13 น. cgroup.subtree_control
-rw-r--r-- 1 รูทรูท 0 2 ก.ค. 17:13 น. cgroup.threads
drwxr-xr-x 2 รูทรูท 0 มิ.ย. 30 14:42 น. init.scope
drwxr-xr-x 87 รูทรูท 0 2 ก.ค. 15:05 system.slice
drwxr-xr-x 7 รูทรูท 0 มิ.ย. 30 15:22 user.slice
ubuntu@vrni-platform:/tmp/debraj$ sudo umount /tmp/debraj