--- 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) ```