Назад | Перейти на главную страницу

Как запустить сервер Apache в заданном контейнере контрольных групп?

у меня есть apache сервер 2.4.41 работает на ubuntu 19.10 для которой я хочу назначить контрольную группу, чтобы я мог изолировать ее сетевой трафик и перенаправить его через другой сетевой интерфейс. Я могу создать контрольную группу и назначить ей идентификатор класса и добавить правила маршрутизации через iptables, но я не могу назначить контрольную группу серверу. Эта команда:

sudo cgexec -g net_cls:novpn /usr/sbin/apache2ctl start

кажется, ничего не делает. Я также пробовал:

sudo cgexec -g net_cls:novpn /usr/bin/systemctl start apache2.service

но это тоже не сработало. выход /proc/{apache main pid}/cgroup после запуска команд:

12:rdma:/
11:cpuset:/
10:cpu,cpuacct:/
9:pids:/system.slice/apache2.service
8:freezer:/
7:perf_event:/
6:hugetlb:/
5:blkio:/
4:memory:/system.slice/apache2.service
3:net_cls,net_prio:/
2:devices:/system.slice/apache2.service
1:name=systemd:/system.slice/apache2.service
0::/system.slice/apache2.service

и systemctl status apache2.service является:

● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-12-26 21:56:42 GMT; 12min ago
     Docs: https://httpd.apache.org/docs/2.4/
  Process: 23065 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
 Main PID: 23083 (apache2)
    Tasks: 6 (limit: 4915)
   Memory: 10.2M
   CGroup: /system.slice/apache2.service
           ├─23083 /usr/sbin/apache2 -k start
           ├─23092 /usr/sbin/apache2 -k start
           ├─23093 /usr/sbin/apache2 -k start
           ├─23095 /usr/sbin/apache2 -k start
           ├─23096 /usr/sbin/apache2 -k start
           └─23098 /usr/sbin/apache2 -k start

Dec 26 21:56:42 arcm-server systemd[1]: Starting The Apache HTTP Server...
Dec 26 21:56:42 arcm-server systemd[1]: Started The Apache HTTP Server.

Почему не работает и как это исправить? Спасибо.