Maksim
Чем больше запросов, тем выше нагрузка
Andrey
ну и да, я не планирую большой кластер
Maksim
Делай 1 апи сервер и не парься
Andrey
для большого кластера вполне разумно отделять контрольную часть
Maksim
идея имет право нажизнь
Andrey
у меня будет: а) маленький кластер в пределах 10 нод б) ноды будут рандомно удаляться и появляться (как в AWS ASG)
Maksim
но когда на ноде (любой) кончаться iops ты получишь коллапс кластера
Andrey
если на ноде кончатся iops то она умрёт.
Maksim
нет)
Andrey
как это может зааффектить остальные?
Maksim
в твоё случае умрёт весь кластер
Andrey
почему?
Maksim
кублет постить в 127.0.0.1 послкольку нет iops Апи не успевает ответить
Maksim
кублет помечается как NotReady
Maksim
после чего Шедулер с контроллером начинают размещать нагрузку на оставшихся
Andrey
ок
Maksim
нагрузка на оставшиеся растёт, начинают умирать другие АПИ сервера, за ними их кублеты
Maksim
Кластер начинает коллапсировать.
Maksim
либо поды вешаются в состояние пендинг
Andrey
я понял идею. А нельзя для деплоймента делать лимит на iops?
Maksim
нет
Maksim
Управлени отделяет от исполнения что бы они друг на друга не влияли
Maksim
в случае маленьких "дев/тест" сред можно совмещать, для уменьшения числа ресурсов, при том понимая что в дев/тест нету высоких нагрузок
Maksim
МЫ не говорим о стресс тестах и нагрузочных тестах
Andor
по той же причине, например, в эластиксёрч кластерах крайне рекомендуется мастера держать на отдельных хостах
Maksim
У тебя схема хоть и интересная, но он не удовлитворяет требования отказоустойчисвости
Andor
если мастер будет таймаутиться, то всему кластеру будет ой
Maksim
потому как каждый кублет имеет только один апи сервер, при том каждый из них имеет апи сервер
Maksim
какой-то узаконеный сплитбрейн
Andor
split-brain-as-a-service
Andrey
какой-то узаконеный сплитбрейн
вот именно поэтому мне и было интересно, как происходит взаимодействие между api сервисами.
Maksim
ни как
Andrey
ну а как тогда active-active работает?
Andrey
за это etcd исключительно отвечает?
Maksim
ресценивая АПИ сервер как NGinx, а etcd как статик html этого самого nginx
Andor
в етцд есть блокировки, апи-сервера друг другу не мешают, когда принимают запросы
Maksim
АПИсервер это http сервер. А как любой http сервер он ассинхронен
Maksim
То есть принял запрос, выполнил, сессию убил
Maksim
каждый запрос это новое обращение, при этом не важно кто именно его обрабатывает.
Andor
апи-сервер - стейтлесс, етцд - стейтфул
Maksim
ну да)
Maksim
вот етцд уже общается между собой)
Andrey
тогда я несколько не понимаю, откуда предполагается проблема с iops. Если оно stateless
Andrey
к диску тогда обращений нет
Maksim
Есть)
Maksim
у любого процесса есть обращение к диску
Andrey
ну, я бы не был так категоричен
Maksim
а вот зря)
Andrey
как минимум, есть бездисковые станции :)
Etki
тогда я несколько не понимаю, откуда предполагается проблема с iops. Если оно stateless
насколько понял, предполагалось запихнуть по etcd на каждый сервер
Maksim
там диски делаются в ОЗУ
Andor
у них диск в другом месте стоит, но он есть
Andrey
опять же, если у вас полетела файлуха, текущие ssh сессии будут работать
Andrey
без доступа к диску
Maksim
А ты попробуй там что нить сделай)
Andor
кажется разговор стал бессмысленным
Andrey
echo OK
Maksim
и получишь kernal panic
Anonymous
измерения
Maksim
если файлуха именно полетела
Andrey
не надо делать мне смешно. Я из такой ситуации сервер удалённо чинил
Maksim
У меня как то раз был сервер законнеченный по ssh когда рейд контроллер умер и диски перестали отвечать
Maksim
на любой чих ответом был kernal panic
Andrey
как минимум echo встроен в баш и он работает без обращения к диску
Logan
как минимум, есть бездисковые станции :)
у бездисковых станций есть диск, только он бездисковый. flashfs, squashfs – это оно
Andrey
ребята, вы гоните. Диск не является ресурсом необходимым для процесса
Vadim
тогда я несколько не понимаю, откуда предполагается проблема с iops. Если оно stateless
проблема с iops будет в etcd, кроме того api server себе еще резервирует немношк памяти и cpu. Возникает вопрос - зачем у нод отбирать ресурсы? Неужто так часто дохнут api-server'ы?
Andrey
если у меня pi в цикле вычисляется, зачем мне диск?
Maksim
Он является русурсом необходимым для CPU внезапно)
Logan
Он является русурсом необходимым для CPU внезапно)
вы не путаете диск и операцию ввода-вывода?
Vadim
если ответ "чтобы все ноды были одинаковы" - то мы вроде уже все согласились что etcd надо отдельно выносить
Vadim
вопросов больше нет
Vadim
без разделения worker/master/etcd
G72K
Интересно было бы узнать про изменения
сколько людей на рынке с нужной квалификацией (люди уже не знают что такое grub), насколько гладкие отношения с сетевиками/безопасниками, насколько важно резко вырасти, насколько важно иметь разные разнообразность нод, какое состояние текущей инфраструктуры, которую надо переиспользовать, как дела с легальностью хранения данных в датацентрах чужих людей и проч и проч
Andrey
без разделения worker/master/etcd
да, вначале я так хотел, но про etcd я услышал внятный аргумент
Vadim
ну и про мастеры вроде аргументы были внятные. Предложенная вами структура фактически federation