Spec-Zone.ru › MySQL 8.4

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-8.4-en/mysql-cluster-start-phases.html

Spec-Zone.ru

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