Pull to refresh

Comments 14

Теперь мы защищены от неполадок как со стороны СХД, так и со стороны коммутатора. Но что будет, если выйдет из строя сетевой адаптер сервера? Этот сервер потеряет доступ к сети и СХД. Поэтому нужно задублировать также и сетевые адаптеры:

Это уже защита от двойного отказа (карта+сервер), а не единичного(карта или сервер). Если сетевая карта в сервере навернется, то должно произойти переключение на резервный.

так же, не очень понятно зачем в данной схеме коммутаторы (как дополнительные точки отказа и цены), если можно воткнуть контроллеры СХД напрямую, так же крестом =). Т.е. тем кто в теме объяснять не надо, а вот стороннему обывателю будет не ясно.

Вообще, все статьи про резервирование надо начинать с требований.

так же, не очень понятно зачем в данной схеме коммутаторы

Да, в случае с двумя серверами действительно можно соединить серверы и СХД напрямую. Но если серверов несколько, то подключить напрямую скорее всего не получится - не хватит портов на контроллерах СХД.

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

Есть примеры расчета реальных отказоустойчивых кластерных систем (коэффициента готовности)?

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

Минимум 4.

2 узла – это практически гарантированный взаимный отстрел.

3 узла – оставляют 2 после выхода из строя 1, и дальше см. предыдущий пункт.

См. также по этому поводу: https://habr.com/ru/post/281723/

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

Про четыре параллельных узла - это про клаcтеры? Примеры есть? Обычно речь про два. Скажу более - в реальности трехузловые системы менее надежны чем двухузловые. Это потому, что узлы кластера сами по себе высоконадежны и добавление узлов уже не так увеличивает общий коэффициент готовности, как добавление нового узла снижает общую надежность за счет дополнительного "распределенного" переключателя резерва, который тоже имеет надежность. В этих расчетах, как правило, уже про оценку надежности кластерного ПО, которое должно определять наличие отказа при условии что он произошел, время переключения, а также ложные срабатывания переключателя на резерв (реально отказа не было, но переключение произошло и один узел ушел в простой).

В окрестностях "пяти девяток" надежность узлов в расчете общего коэффициента готовности уходит на второй план (вклад наработки на отказ каждого узла). Именно это я хотел увидеть на примерах расчета реальных отказоустойчивых систем.

В трёхузловой системе причину отказа можно установить мажоритарным голосованием (что и делает штатное программное обеспечение кластера высокой готовности), в двухузловой – способа достоверно локализовать нефатальный отказ не существует.

О коэффициенте готовности в пять девяток я вообще никогда не слышал, тут не надо путать с надёжностью. Это система без регламентных работ?

История из жизни -система хранения NetApp - две головы актив актив завязанные оптикой и полка с дисками. Вроде бы надёжно ? Но через пару лет вылетела одна голова (сначала ушла в ребут и потом ребутилась по кругу) и вторая голова все запросы приняла на себя. Ой как ей было тяжко... Всё почуствовали -). Этот кейс разбирали неделю!!!... После этого я понял зачем хитрые EMC в свои системы хранения пихают по три головы -).

Да вообще в любой надежной системе должно быть как минимум 3 узла. 2 узла это верная смерть, т.к. split-brain. Как минимум нужен арбитр, он может не быть полноценным 3 узлом.

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

2 узла это верная смерть, т.к. split-brain. Как минимум нужен арбитр, он может не быть полноценным 3 узлом.

Выделенный Арбитр (мажоритарной системы) становится единой точкой отказа и "тащит" общую надежность вниз. Каким бы он не был, - полноценным или нет. В кластерных системах пример выделенного "железного" арбитра есть?

Верное замечание. Вот как раз модуль управления AMM у нас недавно и сломался в IBMовской блейд-системе. Весь такой упрощённый и единственный не резервированный (ну и само шасси не резервировано тоже).

Тогда это нифига не арбитр, а ерунда какаято. Речь о том, что в кворумных системах необязательно делать все узлы полноценными. Арбитр может давать голос свой в общее голосование, но не хранить на себе данные например. Его отказ приведет лишь к тому, что два остальных узла будут большинством и система отлично продолжит работать. Похожим образом работает vmware vsan, где арбитром может быть любая дохлая тачка с esxi. И не надо городить еще один полноценный кластер просто чтобы сделать нечетное число узлов.

Sign up to leave a comment.