The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Alpine Linux покинул наиболее активный сопровождающий, opennews (??), 31-Июл-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


32. "Alpine Linux покинул наиболее активный сопровождающий"  +3 +/
Сообщение от lucentcode (ok), 01-Авг-23, 00:21 
А зачем systemd, и вообще система инициализации, в Docker? Разве это не рушит саму философию Docker? По одному сервису в контейнере, и не более. Контейнер запускает только свой сервис, и всё. Если вам нужно запустить в одном контейнере init, и кучу сервисов с его помощью, вам нужна обычная виртуалка, а не Docker-контейнер. А в виртуалке уже без проблем запустится systemd. Я даже в извращениях вроде LXC/OpenVZ не вижу смысла. Хочешь честную VPS? Бери KVM/Xen. Хочешь контейнеры, микросервисы, и всё по фен-шую? Тогда каждый сервис пакуй в Docker,  в отдельный контейнер. Заодно такой подход и масштабирование позволяет наладить куда более простым образом, и оркестрацию всего этого зоопарка. В хорошей распределённой сервисной архитектуре init-система — не нужное излишество. В роли вашей init-системы должен быть оркестратор, что запускает нужные контейнеры с учётом их зависимостей, и текущих потребностей приложения. Или docker-compose + docker, если у вас что-то очень простое. Этот подход прост, и понятен. А попытки запихнуть в один контейнер много сервисов  — контринтуитивен, и выглядит странным.
Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

48. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от Аноним (110), 01-Авг-23, 02:14 
> По одному сервису в контейнере, и не более. Контейнер запускает только свой сервис, и всё.
> Если вам нужно запустить в одном контейнере init, и кучу сервисов с его помощью, вам нужна обычная виртуалка, а не Docker-контейнер.

Докер используют, в том числе, и чтобы просто предоставить настроенное, готовое для работы окружение.

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

79. "Alpine Linux покинул наиболее активный сопровождающий"  +1 +/
Сообщение от вй (?), 01-Авг-23, 07:16 
Docker не подходит для этой цели, он создан именно для application container, а не для system container (LXC/LXD/OpenVZ).
Ответить | Правка | Наверх | Cообщить модератору

103. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от Аноним (110), 01-Авг-23, 11:34 
> Docker не подходит для этой цели, он создан именно для application container, а не для system container (LXC/LXD/OpenVZ).

Ну так он и запускает application - оболочку типа bash, например. А ты уже потом из него юзаешь другой софт и библиотеки, которые засунули в этот контейнер.

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

126. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от NixMan (?), 01-Авг-23, 14:21 
> Docker не подходит для этой цели, он создан именно для application container,
> а не для system container (LXC/LXD/OpenVZ).

Use Nix, Luke!
https://www.youtube.com/watch?v=0uixRE8xlbY

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

124. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от NixMan (?), 01-Авг-23, 14:20 
>> По одному сервису в контейнере, и не более. Контейнер запускает только свой сервис, и всё.
>> Если вам нужно запустить в одном контейнере init, и кучу сервисов с его помощью, вам нужна обычная виртуалка, а не Docker-контейнер.
> Докер используют, в том числе, и чтобы просто предоставить настроенное, готовое для
> работы окружение.

Use Nix, Luke!
https://www.youtube.com/watch?v=0uixRE8xlbY

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

181. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от lucentcode (ok), 02-Авг-23, 23:20 
Для одного процесса. Всё, что требует запуска init — тянет уже на LXC, OpenVZ и KVM. И лучше сразу начинать с KVM. Поверьте, это решит в будущем многие проблемы, в том числе с изоляцией по ресурсам, так как если вы запускаете солянку из приложений в многопроцессном режиме(с кучей обработчиков), рано или поздно ваше приложение начнёт влиять на хост-систему, и на другие контейнеры. Лучше сразу совать его в отдельную виртуалку с нормальной изоляцией, и возможностью лимитировать выделение ресурсов на неё, чтобы она не нагибала весь сервер.
Ответить | Правка | К родителю #48 | Наверх | Cообщить модератору

88. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от Staxemail (ok), 01-Авг-23, 08:49 
Затем, что хочется иметь перезапуск приложения, для чего его приходится запускать под супервизором (до systemd очень часто втыкались daemontools). Иногда еще дизайн приложения требует явного запуска многих обработчиков, опять же делать свой полноценный контроллер этих обработчиков с современными возможностями systemd часто можно не писать, он отлично отследит чтобы было скажем 16 обработчиков и отдельные экземпляры перезапускались при падении. Разделять на 16 контейнеров и перезапускать средствами докера плохо по производительности и может быть неудобно в плане управления, логов и тп
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

91. "Alpine Linux покинул наиболее активный сопровождающий"  +1 +/
Сообщение от амоним (?), 01-Авг-23, 09:04 
ненене. есть контейнеры, а есть система оркестрации.
задача докера запустить приложение в контейнере.
а вот где запустить, сколько экземпляров и прочее - это оркестратор.

аналогично - os запускает процесс. а systemd отвечает, в вашем случае, за кол-во процессов и прочее

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

102. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от Staxemail (ok), 01-Авг-23, 10:35 
> ненене. есть контейнеры, а есть система оркестрации.
> задача докера запустить приложение в контейнере.
> а вот где запустить, сколько экземпляров и прочее - это оркестратор.

Когда апач запускает 16 воркеров, причем тут оркестрация?

Когда современный systemd позвляет запустить 16 воркеров моего приложения, используя его аналогично мастер-процессу апача (который был создан до systemd и переносимо для работы в разных системах, поэтому он так не может), зачем вы мне предлагаете делать 16 контейнеров?

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

105. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от амоним (?), 01-Авг-23, 11:39 
если я правильно задачу понимаю, то какая проблема использовать супервайзер в докере?

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

всё как в старые добрые времена, без systemd. сам так делал и с нодой и с питоном.

я не против systemd. жизнь без bash проще и солнце ярче.
я просто говорю, что оркестрация решается докером и кубером (ну оркестраторов много, просто кубер это дефолт).
а если надо супервайзер в докере - то и его можно использовать (хотя это и будет плохой практикой по ряду причин)

ну а апач.. ну собссно нормально работает в докере.

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

106. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от амоним (?), 01-Авг-23, 11:45 
т.е. собственно речь шла изначально - что система инициализации не нужна, и много процессов - плохо по-умолчанию.
и по факту - так и есть. если система инициализации нужна, именно для того, чтобы выступать супевайзером - используй супервайзер.

systemd настолько большая, что говорить о том, что она мне нужна ради одной функции - странно.

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

150. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от scriptkiddis (?), 01-Авг-23, 18:49 
> оркестраторов много

Этож какие кроме как куб? Но только если они умеют self hosting.

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

157. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от амоним (?), 01-Авг-23, 20:15 
> > оркестраторов много
> Этож какие кроме как куб? Но только если они умеют self hosting.

имелись ввиду DCOS, nomad

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

178. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от scriptkiddis (?), 02-Авг-23, 15:17 
>> > оркестраторов много
>> Этож какие кроме как куб? Но только если они умеют self hosting.
> имелись ввиду DCOS, nomad

Где у dcos self hosting на моем железе? Линк или дока есть?

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

172. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от Staxemail (ok), 02-Авг-23, 07:59 
> если я правильно задачу понимаю, то какая проблема использовать супервайзер в докере?

У меня никаких проблем нет - его использование упрощает жизнь, поэтому используем, да! Я аргументировал к мнению человека выше, который топил за то, чтобы в докере был один процесс всего.

> я не против systemd. жизнь без bash проще и солнце ярче.

А вот тут мы подбираемся к тому, что бывают ситуации когда supervisord и daemontools не дают чего-то интересного, что доступно в systemd. И что значит большой и тяжелый??

ps_mem -p 3832
Private  +   Shared  =  RAM used    Program

  4.1 MiB +   1.5 MiB =   5.6 MiB    systemd
---------------------------------
                          5.6 MiB
=================================


> я просто говорю, что оркестрация решается докером и кубером (ну оркестраторов много,
> просто кубер это дефолт).

Ну да, и начинается зоопарк окестраторов сверху. У себя скажем я миникуб запущу, а разрабочик соседний оформляет все в композе тк ему так прикольно у себя запускать, автоматическая конвертация ломает сети/соединения между контейнерами и ты чертыхаясь, подменяя RUN в контейнерах, вооружившись tcpdump и nc тратишь время на дебаг каждый раз. Брр.

> а если надо супервайзер в докере - то и его можно использовать
> (хотя это и будет плохой практикой по ряду причин)

Сам докер слишком кривой супервайзер, а если это куб например и он делает рестарт подов, это слишком оторвано от приложения по сравнению с супервайзером... Так что в реальном мире это осмысленно. Ну не идеален мир, что поделать.

> ну а апач.. ну собссно нормально работает в докере.

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

180. "Alpine Linux покинул наиболее активный сопровождающий"  +/
Сообщение от lucentcode (ok), 02-Авг-23, 23:17 
Разные экземпляры процесса(не потоки, а именно процессы) — разные контейнеры. Нужен перезапуск? Или слежение за верным тушением процессов? Да это же работа окрестратора. Их несколько, и любой из них может решить эту проблему корректно. Говорите, есть небольшие накладные расходы в буквально жалкие проценты по системным ресурсам? Так в нормальной архитектуре нужно бюджет на железо немножко поднять, а не извращаться с init внутри контейнера. Это нормальная практика, разве нет? Нет, я конечно понимаю, что из шурупов, отвёртки и хлебушка можно слепить "троллейбус", но зачем? Хлеб  — это хлеб, а контейнер Docker — это контейнер. Нужно вам запускать приложение с кучей обработчиков, и релоадить из средствами init-системы? Так умеет LXC и OpenVZ, но для этого есть вообще-то KVM. Делать же из Docker то, что его архитектура даже не подразумевала(троллейбус из хлебушка) — это как-то не правильно. Баловство какое-то. Да ещё с жалкой попыткой сэкономить три рубля на железе ценой потери удобства от использования нормальной архитектуры с оркестрацией контейнеров.
Ответить | Правка | К родителю #88 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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