> On 29 Jun 2022, at 10:56, Valentin Nechayev <ne...@netch.kiev.ua> wrote: > > hi, > > Wed, Jun 29, 2022 at 10:05:47, i wrote about "Re: [freebsd] AWS Tech > Conference": > >>> 2. своё пространство pidʼов >> >> Похоже что нету, но на самом деле не очень то и надо - вообще то pid-ы >> изнутри docker контейнеров тоже прекрасно видны на host системе. > > Во-первых, видны, но под своими номерами. В контейнере иерархия > строится от pid=1, дальше последовательно 2, 3 и так далее, а у хоста > они видны иначе. Вот я заглянул execʼом в контейнер: > > / # ps ax > PID USER TIME COMMAND > 1 root 0:00 sleep 3600 > 10 root 0:00 /bin/sh > 15 root 0:00 ps ax > > А вот я смотрю на то же самое из хост-системы: > > 4037136 ? Sl 0:00 /usr/bin/containerd-shim-runc-v2 -namespace moby > -i > d cc8eb0bd81e855e58132d5db46ae35a534bf746abeb6fd4d8e20459ae683b47a -address > /var > /run/docker/containerd/containerd.sock > 4037157 ? Ss 0:00 \_ sleep 3600 > 4042116 pts/0 Ss+ 0:00 \_ /bin/sh > > Во-вторых, эта видимость односторонняя (ещё бы). > > (Вот что плохо, что соответствие pidʼов хоста и контейнера надо искать кривыми > путями. Видимо, обычно мало кому нужно.)
Виноват, в спешке думал об UID-ах. Да, такого нету. Насколько это критично не знаю. В общем не должно, но уверен что есть куча мест, которые ожидают первый процесс в контейнере имеет pid=1 и сломаются если это будет не так. >>> 3. шейперы разных шедулеров (CPU, IO, память) и пространства учёта >> >> Есть через rctl, который умеет дружить с jail: >> https://docs.freebsd.org/doc/9.2-RELEASE/usr/share/doc/freebsd/handbook/security-resourcelimits.html > > Жестковато и неиерархично, но для начала сойдёт. > >> Частично есть: cpuset.id в jail(8). Но на самом деле не так часто >> используется в K8s. > > Где как... мы сейчас в контейнерах привязываемся через DPDK к сетевым > интерфейсам, там это критично. > >> Повторюсь: большинство необходимых компонент есть, а чего нету, то можно >> доделать и/или не так уже и критично на самом деле. > > Я вообще-то не утверждал, что его нет :) > я говорил, что для полноценного контейнера нужно много больше, чем те 2-3 > пункта, что привёл Евгений. > Это сейчас мы уже перешли к конкретным пунктам, есть или нет, и как именно. > >> Причём много этого всего есть задолго до того, как оно появилось в linux. > > Ой я бы не спешил с подобными историческими выводами:) Всё началось где-то в 2006-м году, когда Google надоело поддерживать внутреннее глубоко кастомное ядро, и они опубликовали свои разработки для Borg, которые теперь известны как cgroups. До этого все в линукс мире верили “фигня эти ваши jail-ы, будущее за виртаулизацией”. Но это не принципиально для вопроса. >> Только никто не будет это всё ручками лепить докучи. Надо чтобы всё это было > слеплено в стандартизированный СRI. И вот этого нету. > > Да, похоже на то. > > > -netch- _______________________________________________ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd