Как FT защищен от ситуации «Split brain»?

Split brain, на мой взгляд, — это ситуация, когда половинки мозга «забывают» о существовании друг друга. Каждая думает, что она главнее.

FT (Fault Tolerance) — защита виртуальной машины, позволяющая уменьшить внеплановый простой до нескольких секунд. Это достигается за счет того, что в один момент времени на двух разных хостах запущены две копии одной виртуальной машины. Одна из них является первичной, и имеет доступ к диску и сети, вторая же является копией и повторяет за первой все инструкции процессора и работу с памятью.
Для защиты от ситуации, когда две виртуальные машины в Fault Tolerance начнут бороться за жесткий диск, предусмотрен следующий механизм:
Когда включается механизм защиты FT, первичная создает на общем хранилище файл вида generation.N, где N — порядковый номер. Когда запускается вторичная виртуальная машина, первичная сообщает ей текущий порядковый номер.
В случае, когда одна из виртуальных машин считает, что произошел сбой, она пытается переименовать этот файл в generation.N+1. Если эта операция выполняется успешно, эта машина становится первичной, после чего снова создается вторичная виртуальная машина для защиты. Если же операция завершается с ошибкой, значит у нас жива первичная виртуальная машина. В этом случае текущая виртуальная машина выключается.
За ссылку спасибо The VMGuy.
P.S.: Оказывается, этот пост был навеян чтением записок виртуального админа. Это ж какую траву курить надо было, чтобы прочитать «Записки» и забыть об этом :))
Немного подумал и решил оставить пост. Прости, Антон. 🙂
P.P.S. Вспомнил — жег старые рамы на даче — видимо, нанюхался краски :)))

Запись опубликована в рубрике 4.0, VMware, vSphere, Новости с метками . Добавьте в закладки постоянную ссылку.

2 комментария: Как FT защищен от ситуации «Split brain»?

  1. Anton Zhbankov говорит:

    >значит у нас жива первичная виртуальная машина

    Неточно. Значит вторая машина жива и успела перехватить управление. А это могла быть и теневая машина.

  2. A.Vakhitov говорит:

    Согласен.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *