The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Релиз FreeBSD 11.3"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для контроля за появлением новых сообщений - перед выходом жмите "Пометить прочитанным".
. "Релиз FreeBSD 11.3" +1 +/
Сообщение от Дон Ягон (ok), 10-Июл-19, 18:35 
>> Пока ты не скажешь, как именно запущен процесс, твой вопрос не имеет никакого смысла. И в какой ОС.
> Я запускаю все процессы под Linux и через systemd. Но мне чертовски интересно, как это делаете вы, в мире, где systemd не существует. По-этому я не знаю, как вы запускаете процессы. Предположим обычным sysv-init или rc.subr - на выбор.

Если ты запускаешь процесс systemd'ой, лучше всего ей же и останавливать, очевидно.
sysvinit, ЕМНИП, штатных средств для запуска в контейнере не имеет. Можно написать своё, да. Потому и вопрос - "КАК ИМЕННО ЗАПУЩЕН".
В случае FreeBSD - там контейнеры - jail. Когда я ей пользовался, запускать сервис в джейле надо было тоже какой-то самописной логикой.

В любом случае, проблемы решаемы. Во FreeBSD всегда можно посмотреть на jail id у процесса и выбрать правильный. В Linux можно сделать cat /proc/$PID/cgroup и/или ls /proc/$PID/ns/* и понять,  в какой сигруппе/нэймспейсе контейнер, ну и далее по вкусу..

>[оверквотинг удален]
>    0:02 /usr/libexec/sssd/sssd_pam --uid 0 --gid 0 --debug-to-files
> 16829 ?        S  
>    0:02 /usr/libexec/sssd/sssd_pam --uid 0 --gid 0 --debug-to-files
> 28421 ?        S  
>    0:02 /usr/libexec/sssd/sssd_pam --uid 0 --gid 0 --debug-to-files
> 28499 ?        S  
>    0:02 /usr/libexec/sssd/sssd_pam --uid 0 --gid 0 --debug-to-files
> 28947 ?        S  
>    0:03 /usr/libexec/sssd/sssd_pam --uid 0 --gid 0 --debug-to-files
> Дано: Есть hypervisor с 4 контенерами. И на гипервизоре и в контейнерах крутиться sssd демон, который авторизует юзеров из LDAP. Какой из вышеперечисленных процессов работает на гипервизоре, а какой в контейнерах?

См. выше про магию с /proc. Плюс есть ещё команда lsns, чтобы понять, какие вообще нэймспейсы есть.

> Задача: написать init скрипт, который рестартанёт нужный sssd_pam

Сорян, но нет. Скрипт я писать не буду. Всё, что нужно для его написания я перечислил в этом ответе. Поиграйся с примерами команд, что я тебе писал, если ты правда хочешь разобраться, а не потроллить, станет понятно, как отличать контейнеры без systemd.
Собственно, мой изначальный поинт был в том, что cgroups/namespaces - это свойство ОС, а не systemd и всем этим можно пользоваться и из скриптов, было бы только желание.

Ну и кстати вопрос, а точно ли это хорошая практика - убивать контейнеризованый демон с гипервизора?

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Релиз FreeBSD 11.3, opennews, 09-Июл-19, 22:18  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру