43 lines
3.8 KiB
Markdown
43 lines
3.8 KiB
Markdown
|
---
|
|||
|
aliases:
|
|||
|
- cgroup
|
|||
|
tags:
|
|||
|
- maturity/🌱
|
|||
|
date:
|
|||
|
- - 2024-03-19
|
|||
|
zero-link:
|
|||
|
- "[[../../meta/zero/00 Linux|00 Linux]]"
|
|||
|
parents:
|
|||
|
- "[[Контейнерная виртуализация]]"
|
|||
|
linked:
|
|||
|
---
|
|||
|
Control group — это механизм в ядре Linux, предоставляющий функциональность управления и ограничения ресурсами, используемыми [процессами](../fundamental/Процесс%20ОС.md), запущенными в системе. Это позволяет системному администратору распределять ресурсы, такие как CPU, память, [пропускная способность](../architecture/Throughput.md) сети и доступ к устройствам, между наборами процессов.
|
|||
|
|
|||
|
С помощью cgroup можно:
|
|||
|
- Управлять лимитом cpu. Как процент времени, который выделяется, так и CPU-sets, то есть какие ядра мы можем задействовать. Есть как общее ограничение, так и индивидуальные для подпроцессов
|
|||
|
- Управлять ограничением по памяти. Имеется возможность настроить как максимальный так и минимальный порог.
|
|||
|
- Доступ к устройствам
|
|||
|
- Ограничения сети
|
|||
|
- Ограничения дисковых операций
|
|||
|
|
|||
|
С помощью cgroup можно:
|
|||
|
- Ограничивать количество ресурсов, которые могут использовать процессы в группе. Например, можно задать максимальное количество CPU или объем оперативной памяти, которые доступны определенной группе процессов.
|
|||
|
- Отслеживать использование ресурсов процессами или группами процессов. Это позволяет вести мониторинг загрузки системы и определять, какие процессы или группы процессов используют больше всего ресурсов.
|
|||
|
- Управлять приоритетами доступа к ресурсам для различных групп процессов. Это может быть полезно для обеспечения того, чтобы критически важные задачи имели доступ к необходимым ресурсам в первую очередь.
|
|||
|
|
|||
|
Утилита `cgroup` позволяет организовывать процессы в иерархические группы, что упрощает управление и делает систему более гибкой и масштабируемой. `cgroup` широко используется в технологиях виртуализации и контейнеризации, таких как [[../../meta/zero/00 Docker|Docker]] и Kubernetes, поскольку они предоставляют эффективные средства для изоляции и управления ресурсами виртуальных и контейнеризированных сред.
|
|||
|
***
|
|||
|
## Мета информация
|
|||
|
**Область**:: [[../../meta/zero/00 Linux|00 Linux]]
|
|||
|
**Родитель**:: [[Контейнерная виртуализация]]
|
|||
|
**Источник**::
|
|||
|
**Автор**::
|
|||
|
**Создана**:: [[2024-03-19]]
|
|||
|
### Дополнительные материалы
|
|||
|
-
|
|||
|
### Дочерние заметки
|
|||
|
```dataview
|
|||
|
LIST
|
|||
|
FROM [[]]
|
|||
|
WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link)
|
|||
|
```
|