Spec-Zone.ru › MySQL 9.2

25.6.4 Сводка фаз запуска кластера NDB

В этом разделе представлен упрощенный обзор шагов, вовлеченных в запуск узлов данных кластера NDB. Более подробная информация доступна в Фазах запуска кластера NDB в руководстве по внутренним механизмам NDB.

Эти фазы совпадают с теми, что отображаются в выводе команды node_id STATUS в клиенте управления (см. Раздел 25.6.1, «Команды в клиенте управления кластером NDB»). Эти фазы запуска также отображаются в столбце start_phase таблицы ndbinfo.nodes.

Типы запуска. Существует несколько различных типов и режимов запуска, как показано в следующем списке:

  • Первоначальный запуск. Кластер запускается со чистой файловой системой на всех узлах данных. Это происходит либо при первом запуске кластера, либо при перезапуске всех узлов данных с использованием параметра --initial.

    Примечание

    Файлы данных на диске не удаляются при перезапуске узла с использованием параметра --initial.

  • Перезапуск системы. Кластер запускается и считывает данные, сохраненные в узлах данных. Это происходит, когда кластер был остановлен после использования, когда требуется, чтобы кластер возобновил работу с точки, на которой он остановился.

  • Перезапуск узла. Это онлайн-перезапуск узла кластера, в то время как сам кластер работает.

  • Первоначальный перезапуск узла. Это то же самое, что перезапуск узла, за исключением того, что узел повторно инициализируется и запускается с чистой файловой системой.

Настройка и инициализация (фаза -1). Перед запуском каждый узел данных (ndbd процесс) должен быть инициализирован. Инициализация включает следующие шаги:

  1. Получение идентификатора узла

  2. Получение данных конфигурации

  3. Выделение портов для межсетевого взаимодействия

  4. Выделение памяти в соответствии с настройками, полученными из файла конфигурации

Когда узел данных или SQL-узел впервые подключается к узлу управления, он резервирует идентификатор узла кластера. Чтобы убедиться, что ни один другой узел не выделил тот же идентификатор узла, этот идентификатор сохраняется до тех пор, пока узел не сможет подключиться к кластеру и по крайней мере один ndbd не сообщит, что этот узел подключен. Это сохранение идентификатора узла защищено соединением между рассматриваемым узлом и ndb_mgmd.

После инициализации каждого узла данных процесс запуска кластера может продолжаться. Этапы, через которые проходит кластер в этом процессе, перечислены здесь:

  • Фаза 0. Блоки NDBFS и NDBCNTR начинают работу. Файловые системы узлов данных очищаются на тех узлах данных, которые были запущены с параметром --initial.

  • Фаза 1. На этом этапе запускаются все оставшиеся ядра кластера NDB. Устанавливаются подключения кластера NDB, устанавливается межблочное взаимодействие, запускаются сигналы «биения сердца». В случае перезапуска узла также проверяются подключения узлов API.

    Примечание

    Если один или несколько узлов зависают на Фазе 1, а остальные узлы зависают на Фазе 2, это часто указывает на проблемы с сетью. Возможной причиной таких проблем является наличие у одного или нескольких узлов кластера нескольких сетевых интерфейсов. Еще одним распространенным источником проблем, вызывающих это состояние, является блокировка TCP/IP-портов, необходимых для связи между узлами кластера. В последнем случае это часто связано с неправильно настроенным брандмауэром.

  • Фаза 2. Блок ядра NDBCNTR проверяет состояние всех существующих узлов. Выбирается узел-мастер, и инициализируется файл схемы кластера.

  • Фаза 3. Ядра DBLQH и DBTC устанавливают связь между собой. Определяется тип запуска; если это перезапуск, блок DBDIH получает разрешение на выполнение перезапуска.

  • Фаза 4. При первоначальном запуске или первоначальном перезапуске узла создаются файлы журнала отката. Количество этих файлов равно NoOfFragmentLogFiles.

    Для перезапуска системы:

    • Считывание схемы или схем.

    • Считывание данных из локальной точки восстановления.

    • Применение всей информации журнала отката до достижения последней восстанавливаемой глобальной точки восстановления.

    Для перезапуска узла найти хвост журнала отката.

  • Фаза 5. Большая часть операций, связанных с базой данных, при запуске узла данных выполняется на этой фазе. При первоначальном запуске или перезапуске системы выполняется локальная точка восстановления, за которой следует глобальная точка восстановления. На этой фазе начинаются периодические проверки использования памяти, и выполняются все необходимые перехваты узлов.

  • Фаза 6. На этой фазе определяются и настраиваются группы узлов.

  • Фаза 7. Выбирается узел-арбитр и начинает свою работу. Устанавливается следующий идентификатор резервной копии, а также скорость записи на резервный диск. Узлы, достигшие этой фазы запуска, отмечаются как Started. Теперь узлы API (включая узлы SQL) могут подключаться к кластеру.

  • Фаза 8. Если это перезапуск системы, все индексы перестроены (блоком DBDIH).

  • Фаза 9. Переменные внутреннего запуска узла сброшены.

  • Фаза 100 (УСТЕРЕЛА). Раньше именно на этом этапе при перезапуске узла или первоначальном перезапуске узла узлы API могли подключаться к узлу и начинать получать события. В настоящее время эта фаза пуста.

  • Фаза 101. На этом этапе перезапуска узла или первоначального перезапуска узла передача доставки событий передается присоединяющемуся узлу. Новый присоединившийся узел берет на себя ответственность за передачу своих основных данных подписчикам. Эта фаза также называется SUMA фазой передачи.

После завершения этого процесса для первоначального запуска или перезапуска системы обработка транзакций разрешена. Для перезапуска узла или первоначального перезапуска узла завершение процесса запуска означает, что узел теперь может действовать как координатор транзакций.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-9.2-en/mysql-cluster-start-phases.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API