
Vitalii
26.04.2016
11:54:37
когда-то работал
уже нет
ссылки на код можно найти на гитхабе, сейчас нет времени
LXC - это грубо говоря kernel technologies (cgroups and namespaces) + user-land tools, + наверное темплейты тоже есть как в openvz, могу ошибаться

Google

Vitalii
26.04.2016
11:55:49
плюс либы

Dmitrii
26.04.2016
11:56:00
И как они там щас контейнизируются?

Vitalii
26.04.2016
11:56:38
докер когда-то пользовал lxc
а потом они переписали и сейчас напрямую работают с ядерными cgroups и namespaces
причем достаточно давно
я код смотрел год или два назад, детали точно не помню , примерно так

??Dmitry????
26.04.2016
11:57:19
?cgroups and namespaces) + user-land tools
докер ведь теми же самыми словами описать можно

Vitalii
26.04.2016
11:57:36
да, просто user-land tools более другие ) тоесть вообще другие

??Dmitry????
26.04.2016
11:58:01
интересно - каких контейнеров больше - lxd или докер?
*с

Dmitrii
26.04.2016
11:58:16
Где

??Dmitry????
26.04.2016
11:58:23
во всем мире в продакшенах

Vitalii
26.04.2016
11:58:38
))

Dmitrii
26.04.2016
11:58:50
Я думаю никто так и не узнает

Vitalii
26.04.2016
11:58:57
докер ориентирован на микросервисы, а lxc это более oldschool

Dmitrii
26.04.2016
11:59:02
У нас лично plain LXC

Google

Dmitrii
26.04.2016
11:59:25
Не вижу никаких принципиальных преимуществ в докере

??Dmitry????
26.04.2016
11:59:26

Dmitrii
26.04.2016
12:00:10
Единственное бесит что когда контейнер уже явно поднят то ssh пару минут еще раздупливается
Но это может я что-то не так делаю.

??Dmitry????
26.04.2016
12:00:29
с чем это связано?
внутри контейнера есть система инициализации?

Dmitrii
26.04.2016
12:01:05
Не исследовал проблему. В логах критических ошибок нет. Т.е. проблема где то глубже
Сеть настроена бриджом

Vitalii
26.04.2016
12:02:24
ARP может
на хосте

Dmitrii
26.04.2016
12:02:49
Причем контейнер высирает connection refused

??Dmitry????
26.04.2016
12:02:59
я пару дней назад в проксмоксе наклепал контейнер на посмотреть, там ссх сразу доступна после старта контейнера была

Dmitrii
26.04.2016
12:03:01
Т.е сеть типа есть но не совсем

Vitalii
26.04.2016
12:03:04
а хотя пару минут слишком много

Dmitrii
26.04.2016
12:03:17
Ну не пару. Но минуту точно

Vitalii
26.04.2016
12:03:28
> Причем контейнер высирает connection refused
может sshd еще не успел стартовать просто
раз connnection refusedd, то точно не arp
это уже tcp

Dmitrii
26.04.2016
12:03:55
Дак lxc attach если сделать то он уже висит там

??Dmitry????
26.04.2016
12:04:06
если не знаешь в чем проблема - пеняй на systemD ?

Google

Dmitrii
26.04.2016
12:04:09
Sshd всмвсле

Vitalii
26.04.2016
12:04:26
я тогда хз, смотреть надо

Dmitrii
26.04.2016
12:04:54
Да. Там не тривиально. Но мешает только когда контейнеры надо пересоздать
Мы не фанаты деплоить приложение как контейнер так что нам не особо мешает

Vitalii
26.04.2016
12:08:35
lxc - подход "контейнер как хост", шаред ядро на много недо-хостов (lxc контейнеров)
хост - имею ввиду полноценный линукс, за исключением известных ограничений
docker - больше про подход "контейнер = приложение + его зависимости"
имхо так

Dmitrii
26.04.2016
12:10:00
Так ктож мешает в обычный LXC контейнер напихать всех зависимостей?
Просто мы делаем так - у нас есть базовый темплейт контейнера. А напихиваем в него всякое с помощью Ansible.

Vitalii
26.04.2016
12:12:49
ага
вот почти то же самое в докере, напихиваешь чем угодно, хоть ансиблем, но не каждый раз в сам контейнер, а один раз в самый первый контейнер, прообраз так сказать
грубо говоря
а дальше докер сам
лучше послушать почитать ) я бы рассказал что понял про докер, но как-то позже, сейчас не моуг

Dmitrii
26.04.2016
12:13:30
Зато когда "подпихнуть" чуть чуть надо не надо пол инфраструктуры сносить

Vitalii
26.04.2016
12:13:32
*могу

Dmitrii
26.04.2016
12:15:34
Мы например конфиг для приложения тоже ансимблем генерим на нодах. Т.к. плейбуки едины для всех окружений
Получается при докер подходе мне придется убивать старые контейнеры, деплоить новые, прописывать их в апстриме на балансере
Overcomplicated

Vitalii
26.04.2016
12:19:59
ок whatever может вам докер просто не подходит
никто ж не заставляет

Dmitrii
26.04.2016
12:20:20
Мне кажется он не подходит многим
Но на волне "моды" начинают грызть кактус
У нас вполне обычное php приложение. С точно такой же базой данных и кешом как у всех

Google

Evgeny
26.04.2016
12:22:06
Не у всех php

Vitalii
26.04.2016
12:23:00
если вы как команда не потратили достаточно времени чтоб разобраться с какой-то технологией, то она вам точно не подходит )
в том числе и докер
так что все норм

Dmitrii
26.04.2016
12:23:59
Не у всех php
Есть какие то принципиальные отличия от приложений на ruby, python или nodejs?

Evgeny
26.04.2016
12:24:19
на ноде очень легко поднимать

Dmitrii
26.04.2016
12:24:20
Хотя и Java варники дкплоят вполне себе

Evgeny
26.04.2016
12:24:23
сорри
легко поднимать\опускать контейнеры и ничего перенастраивать не надо. честная докер идеология мс

Dmitrii
26.04.2016
12:24:57
Хороший юз кейс имхо это си демоны
И сколько времени у вас уходит на полный цикл замены старого контейнера на новый?
Включая его сборку, подготовку, замену, изменения в апстриме?

Evgeny
26.04.2016
12:32:02
до стейджа в зависимости от массовости коммита до 30 минут
самое быстрое - 4 минуты

Dmitrii
26.04.2016
12:34:05
Это все очень долго. Если вся конфигурация зафиксирована в ансмбле или где-то еще, то я так же как и вы имею идентичный стейт везде. Только сделать я могу это за 10 секунд потому что таски у меня протегированы и нет смысла запускать их все.

Evgeny
26.04.2016
12:35:09
10 секунд вместе со всеми тестами?
Но как?
у меня только юниттесты прогоняются до минуты. потом еще интеграционные и шорт-бизнес-кейс лист

Anton
26.04.2016
12:36:28
Он про изменение конфигурации онли

Evgeny
26.04.2016
12:37:39
Тогда я не совсем понимаю. Изменение конфигурации != замена старого контейнера на новый
Я говорю про цикл который отрабатывает при коммите нового кода в ветку

Anton
26.04.2016
12:40:58
Если я правильно понимаю, то он утверждает, что обновление контейнера на куче машин занимает больше времени, чем просто обновление конфигурации через ансибл

Google

Anton
26.04.2016
12:41:10
Но я не уверен
:D

Evgeny
26.04.2016
12:41:47
само по себе обновление контейнера на куче машин (без всякой фигни типа тестирования, да и кому она нужна) тоже укладывается в 10 секунд.

Taviscaron
26.04.2016
12:42:11
Я не понимаю, что мешает в контейнере подправить конфигурации через ansible? Это, конечно, немного противоречит философии docker'а, но это детали же ;)
подправили конфиг, параллельно подправили image, в следующий раз разлилось все как нало

Evgeny
26.04.2016
12:42:45
просто непонятно зачем
когда гораздо проще выполнть blue-green и ничего не сломать

Taviscaron
26.04.2016
12:43:17

Алексей
26.04.2016
12:43:33
господа, кто нить мониторит influx telegraf-ом ?

Anton
26.04.2016
12:43:53
(У меня эта идея была ещё до появления сварма, а его я так и не протестировал, поэтому сильно не бейте)

Roman
26.04.2016
12:49:15
https://blog.acolyer.org/2016/04/26/the-linux-scheduler-a-decade-of-wasted-cores/

Dmitrii
26.04.2016
13:26:35
Сорри, отвлекся. Да я имел ввиду замену конфигурации только
Да, никто не запрещает еще и имидж подправить. Но ведь можно и без имеджа жить. Я об этом. Убирается лишняя сущность
При сохранении консистентности конфигурации
Меньше сущностей - проект проще и дешевле в поддержке.
Те же LXC контейнеры сетпятся тем же ансимблем в том числе
В итоге имеем 1 репозиторий со всем и ничего лишнего

Dan
26.04.2016
13:34:11
кто хорошо знает баш? )))

Alibek
26.04.2016
13:34:18
"И я, и я - того-же мнения"! На предыдущей работе с трудом, но вбивал, что конфигурации ansible в git это всё что нужно для управления.

Magistr
26.04.2016
13:35:14
а как же красивые морды kubernetes и dcos ? )))