cgroups.sh
· 1.2 KiB · Bash
Raw
Control Groups (cgroups) позволяют ограничивать объем памяти, доступной для группы процессов.
Для начала необходимо создать группу для ограничения памяти:
'''
sudo cgcreate -g memory:/mygroup
'''
Далее настраиваются ограничение на использование памяти для группы mygroup. Например, ограничение на 512 MB:
echo 512M | sudo tee /sys/fs/cgroup/memory/mygroup/memory.limit_in_bytes
Добавьте процесс в группу cgroups, указав его PID:
sudo cgclassify -g memory:/mygroup <PID>
Либо запустите процесс непосредственно в группе cgroups:
sudo cgexec -g memory:/mygroup <command>
Теперь процесс будет ограничен в использовании памяти, что поможет избежать ситуаций, когда один процесс использует всю доступную память.
Примерно так же задаются ограничения и по CPU
опубликовано в @gitgate
1 | Control Groups (cgroups) позволяют ограничивать объем памяти, доступной для группы процессов. |
2 | |
3 | Для начала необходимо создать группу для ограничения памяти: |
4 | |
5 | ''' |
6 | sudo cgcreate -g memory:/mygroup |
7 | ''' |
8 | |
9 | Далее настраиваются ограничение на использование памяти для группы mygroup. Например, ограничение на 512 MB: |
10 | echo 512M | sudo tee /sys/fs/cgroup/memory/mygroup/memory.limit_in_bytes |
11 | |
12 | |
13 | Добавьте процесс в группу cgroups, указав его PID: |
14 | sudo cgclassify -g memory:/mygroup <PID> |
15 | |
16 | Либо запустите процесс непосредственно в группе cgroups: |
17 | sudo cgexec -g memory:/mygroup <command> |
18 | |
19 | Теперь процесс будет ограничен в использовании памяти, что поможет избежать ситуаций, когда один процесс использует всю доступную память. |
20 | |
21 | Примерно так же задаются ограничения и по CPU |
22 | |
23 | опубликовано в @gitgate |