Рейтинг:0

Как настроить несколько сервисных групп apache + php-fpm + mariadb на одном сервере с ограничениями ресурсов для каждой группы?

флаг cn

У нас есть веб-сервер Centos8, на котором размещены сотни веб-сайтов с использованием 3 сервисов: apache, mariadb и php-fpm. Поскольку apache и mariadb не поддерживают ограничение ресурсов для каждой учетной записи, все веб-сайты имеют одинаковый доступ ко многим системным ресурсам (хранилищу, базе данных), и один веб-сайт может перегрузить компьютер (часто это происходит из-за запросов к базе данных) и вывести из строя все размещенные веб-сайты. там.

Мы хотели бы использовать контрольные группы Linux и, возможно, другие функции контейнера, чтобы ввести ограничения на ресурсы, которые может использовать один веб-сайт, в основном количество процессов php, операций ввода-вывода и запросов к базе данных в секунду.

Один (не обязательно самый эффективный) способ добиться этого — запустить одну выделенную группу сервисов (apache+mariadb+php-fpm) для каждого веб-сайта или группы веб-сайтов с определенной настройкой лимитов ресурсов.Таким образом, иметь сотни одновременно работающих сервисных групп.

Каков более простой способ настроить это из существующей настройки рабочих 3 сервисов? Производительность второстепенна, и мы не хотим заниматься созданием и запуском сотен образов контейнеров. Вместо этого мы хотели бы, чтобы все было определено в легко изменяемой во время выполнения форме в корневой файловой системе и управляло всеми службами через systemd. Таким образом, никаких докер-контейнеров.

флаг us
Я не думаю, что контрольные группы охватывают такую ​​абстрактную метрику, как запросы к базе данных в секунду. cgroup — это функция уровня ядра, и она знает только то, что известно ядру: процессы, использование памяти/ЦП для каждого процесса и т. д.
флаг cn
@TeroKilkanen Конечно, некоторые ограничения будут реализованы с помощью контрольных групп, некоторые другие ограничения должны быть реализованы путем запуска выделенных демонов с определенной конфигурацией.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.