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 ? )))