Thanks Mantas for replying. I have made the below changes.
Added systemd.unified_cgroup_hierarchy=1 in /etc/default/grub ran sudo update-grub and rebooted the node. GRUB_CMDLINE_LINUX="audit=1 rootdelay=180 nousb net.ifnames=0 biosdevname=0 fsck.mode=force fsck.repair=yes ipv6.disable=1 systemd.unified_cgroup_hierarchy=1" Even after making these changes MemorySwapMax not taking into effect. support@vrni-platform:~$ cat /proc/cmdline BOOT_IMAGE=/vmlinuz-4.15.0-143-generic root=/dev/mapper/vg-root ro audit=1 rootdelay=180 nousb net.ifnames=0 biosdevname=0 fsck.mode=force fsck.repair=yes ipv6.disable=1 systemd.unified_cgroup_hierarchy=1 audit=1 support@vrni-platform:~$ findmnt TARGET SOURCE FSTYPE OPTIONS / /dev/mapper/vg-root ext4 rw,relatime,errors=panic,data=ordered ├─/sys sysfs sysfs rw,nosuid,nodev,noexec,relatime │ ├─/sys/kernel/security securityfs securityfs rw,nosuid,nodev,noexec,relatime │ ├─/sys/fs/cgroup cgroup cgroup2 rw,nosuid,nodev,noexec,relatime,nsdelegate │ ├─/sys/fs/pstore pstore pstore rw,nosuid,nodev,noexec,relatime │ ├─/sys/kernel/config configfs configfs rw,relatime │ ├─/sys/fs/fuse/connections fusectl fusectl rw,relatime │ └─/sys/kernel/debug debugfs debugfs rw,relatime ├─/proc proc proc rw,nosuid,nodev,noexec,relatime │ └─/proc/sys/fs/binfmt_misc systemd-1 autofs rw,relatime,fd=28,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=1935 ├─/dev udev devtmpfs rw,nosuid,relatime,size=8182012k,nr_inodes=2045503,mode=755 │ ├─/dev/pts devpts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 │ ├─/dev/shm tmpfs tmpfs rw,nosuid,nodev,noexec │ ├─/dev/hugepages hugetlbfs hugetlbfs rw,relatime,pagesize=2M │ └─/dev/mqueue mqueue mqueue rw,relatime ├─/run tmpfs tmpfs rw,nosuid,noexec,relatime,size=1642560k,mode=755 │ ├─/run/lock tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k │ ├─/run/rpc_pipefs sunrpc rpc_pipefs rw,relatime │ ├─/run/shm none tmpfs rw,nosuid,nodev,noexec,relatime │ ├─/run/user/116 tmpfs tmpfs rw,nosuid,nodev,relatime,size=1642556k,mode=700,uid=116,gid=122 │ ├─/run/user/998 tmpfs tmpfs rw,nosuid,nodev,relatime,size=1642556k,mode=700,uid=998,gid=998 │ ├─/run/user/118 tmpfs tmpfs rw,nosuid,nodev,relatime,size=1642556k,mode=700,uid=118,gid=124 │ ├─/run/user/1001 tmpfs tmpfs rw,nosuid,nodev,relatime,size=1642556k,mode=700,uid=1001,gid=1001 │ └─/run/user/121 tmpfs tmpfs rw,nosuid,nodev,relatime,size=1642556k,mode=700,uid=121,gid=127 ├─/boot /dev/sda1 ext4 rw,relatime,data=ordered ├─/tmp /dev/mapper/vg-tmp ext4 rw,nosuid,nodev,relatime,data=ordered ├─/home /dev/mapper/vg-home ext4 rw,nodev,relatime,data=ordered └─/var /dev/mapper/vg-var ext4 rw,relatime,errors=panic,data=ordered ├─/var/log /dev/mapper/vg-var+log ext4 rw,relatime,data=ordered │ └─/var/log/audit /dev/mapper/vg-var+log+audit ext4 rw,relatime,data=ordered └─/var/tmp /dev/mapper/vg-tmp ext4 rw,nosuid,nodev,relatime,data=ordered support@vrni-platform:~$ Any other suggestions? On Mon, Jul 5, 2021 at 1:46 AM Mantas Mikulėnas <graw...@gmail.com> wrote: > Looks like your Ubuntu version is using the "hybrid" cgroup mode by > default. Cgroup v2 is indeed *enabled* in your kernel, but not necessarily > *in use* – in the hybrid mode, systemd still mounts all resource > controllers (cpu, memory, etc.) in v1 mode and only sets up its own process > tracking in the v2 tree. See `findmnt`. > > You could boot with the systemd.unified_cgroup_hierarchy=1 kernel option > to switch everything to cgroups v2, but if you're using container software > (docker, podman) make sure those are cgroups v2-compatible. > > On Sun, Jul 4, 2021 at 10:36 AM Debraj Manna <subharaj.ma...@gmail.com> > wrote: > >> Hi >> >> I am trying to restrict the swap usage of a process using MemorySwapMax as >> mentioned in the doc >> <http://manpages.ubuntu.com/manpages/bionic/man5/systemd.resource-control.5.html> >> with >> Ubuntu 18.04. >> >> Environment >> ------------ >> >> ubuntu@vrni-platform:/usr/lib/systemd/system$ uname -a >> Linux vrni-platform 4.15.0-143-generic #147-Ubuntu SMP Wed Apr 14 16:10:11 >> UTC 2021 x86_64 x86_64 x86_64 GNU/Linux >> >> ubuntu@vrni-platform:/usr/lib/systemd/system$ systemctl --version >> systemd 237 >> +PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP >> +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN >> -PCRE2 default-hierarchy=hybrid >> >> My systemd unit file looks like below >> >> [Unit] >> Description=My service >> After=network.target >> StartLimitIntervalSec=0 >> [Service] >> Type=simple >> Restart=always >> RestartSec=1 >> User=support >> MemoryMax=2000M >> KillMode=process >> MemoryAccounting=true >> OOMScoreAdjust=1000 >> MemorySwapMax=1M >> ExecStart=/usr/bin/java -cp /home/support -XX:NativeMemoryTracking=summary >> -Xmx10000m MemoryConsumer 100 200 1 >> >> MemoryMax is working as expected but MemorySwapMax seems to be not taking >> effect and I am seeing the process, MemoryConsumer still using swap more >> than the one specified in MemorySwapMax, >> >> MemorySwapMax documentation states "This setting is supported only if the >> unified control group hierarchy is used and disables MemoryLimit=." >> >> As mentioned here <https://unix.stackexchange.com/a/471495/364181> I can see >> cgroup v2 enabled on my setup. >> >> ubuntu@vrni-platform:/tmp/tuk$ sudo mount -t cgroup2 none /tmp/tuk >> ubuntu@vrni-platform:/tmp/tuk$ ls -l /tmp/tuk/ >> total 0 >> -r--r--r-- 1 root root 0 Jul 2 17:13 cgroup.controllers >> -rw-r--r-- 1 root root 0 Jul 2 17:13 cgroup.max.depth >> -rw-r--r-- 1 root root 0 Jul 2 17:13 cgroup.max.descendants >> -rw-r--r-- 1 root root 0 Jun 30 14:42 cgroup.procs >> -r--r--r-- 1 root root 0 Jul 2 17:13 cgroup.stat >> -rw-r--r-- 1 root root 0 Jul 2 17:13 cgroup.subtree_control >> -rw-r--r-- 1 root root 0 Jul 2 17:13 cgroup.threads >> drwxr-xr-x 2 root root 0 Jun 30 14:42 init.scope >> drwxr-xr-x 87 root root 0 Jul 2 15:05 system.slice >> drwxr-xr-x 7 root root 0 Jun 30 15:22 user.slice >> ubuntu@vrni-platform:/tmp/debraj$ sudo umount /tmp/tuk >> >> Can someone suggest what configuration I am missing? >> >> >> _______________________________________________ >> systemd-devel mailing list >> systemd-devel@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/systemd-devel >> > > > -- > Mantas Mikulėnas >
_______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/systemd-devel