Spec-Zone.ru › MariaDB

Переход с MariaDB Galera Cluster 10.0 на MariaDB 10.1 с Galera Cluster

MariaDB начиная с 10.1

С MariaDB 10.1, патч MySQL-wsrep был интегрирован в MariaDB Server. Поэтому в MariaDB 10.1 и выше функциональность MariaDB Galera Cluster может быть получена путем установки стандартных пакетов MariaDB Server и пакета библиотеки поставщика Galera wsrep.

Выполнение поэтапного обновления

Следующие шаги можно использовать для поэтапного обновления с MariaDB Galera Cluster 10.0 на MariaDB 10.1. При поэтапном обновлении каждый узел обновляется индивидуально, поэтому кластер всегда работает. С точки зрения приложения простоя нет.

Сначала, прежде чем начать:

  1. Сначала ознакомьтесь с Переходом с MariaDB 10.0 на MariaDB 10.1, чтобы увидеть, что изменилось между основными версиями.
    1. Проверьте, были ли изменены или удалены какие-либо системные переменные или параметры. Убедитесь, что конфигурация вашего сервера совместима с новой версией MariaDB перед обновлением.
    2. Проверьте, были ли изменения в репликации в новой версии MariaDB, которые могли бы вызвать проблемы, пока кластер содержит обновленные и не обновленные узлы.
    3. Проверьте, были ли добавлены новые функции в новую версию MariaDB. Если новая функция в новой версии MariaDB не может быть реплицирована в старой версии MariaDB, не используйте эту функцию, пока все узлы кластера не будут обновлены до новой версии MariaDB.
  2. Далее, убедитесь, что версии Galera совместимы.
    1. Если вы обновляетесь с последней версии MariaDB Galera Cluster 10.0 на MariaDB 10.1, то версии будут совместимы. Последние версии MariaDB Galera Cluster 10.0 и все версии MariaDB 10.1 используют Galera 3 (т.е. версии поставщика Galera wsrep 25.3.x), поэтому они должны быть совместимы.
    2. Если вы используете более старую версию MariaDB Galera Cluster 10.0, которая по-прежнему использует Galera 2 (т.е. версии поставщика Galera wsrep 25.2.x), рекомендуется сначала обновить ее до последней версии MariaDB Galera Cluster 10.0, использующей Galera 3 (т.е. версии поставщика Galera wsrep 25.3.x).
    3. См. Что такое MariaDB Galera Cluster?: Версии поставщика Galera wsrep для получения информации о том, какие версии MariaDB используют какие версии поставщика Galera wsrep.
  3. В идеале, вы хотите иметь достаточно большой gcache, чтобы избежать передачи моментального снимка состояния (SST) во время поэтапного обновления. Размер gcache можно настроить, задав gcache.size Например:
    wsrep_provider_options="gcache.size=2G"

Перед обновлением рекомендуется сделать резервную копию вашей базы данных. Это всегда хорошая идея перед обновлением. Мы рекомендуем Percona XtraBackup.

Затем для каждого узла выполните следующие шаги:

  1. Измените конфигурацию репозитория, чтобы менеджер пакетов системы установил MariaDB 10.1. Например,
    • В дистрибутивах Linux, подобных Debian, Ubuntu и др., см. Обновление репозитория MariaDB APT до новой основной версии для получения дополнительной информации.
    • В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и др., см. Обновление репозитория MariaDB YUM до новой основной версии для получения дополнительной информации.
    • В дистрибутивах Linux, подобных SLES, OpenSUSE и др., см. Обновление репозитория MariaDB ZYpp до новой основной версии для получения дополнительной информации.
  2. Если вы используете прокси-сервер балансировки нагрузки, такой как MaxScale или HAProxy, убедитесь, что сервер удален из пула, чтобы он не принимал новые подключения.
  3. Установите innodb_fast_shutdown в 0. Его можно динамически изменить с помощью SET GLOBAL. Например:
    SET GLOBAL innodb_fast_shutdown=0;
  4. Остановить MariaDB.
  5. Удалите старую версию MariaDB и поставщика Galera wsrep.
    • В дистрибутивах Linux, подобных Debian, Ubuntu и др., выполните следующее:
      sudo apt-get remove mariadb-galera-server galera
    • В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и др., выполните следующее:
      sudo yum remove MariaDB-Galera-server galera
    • В дистрибутивах Linux, подобных SLES, OpenSUSE и др., выполните следующее:
      sudo zypper remove MariaDB-Galera-server galera
  6. Установите новую версию MariaDB и поставщика Galera wsrep.
    • В дистрибутивах Linux, подобных Debian, Ubuntu и др., см. Установка пакетов MariaDB с помощью APT для получения дополнительной информации.
    • В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и др., см. Установка пакетов MariaDB с помощью YUM для получения дополнительной информации.
    • В дистрибутивах Linux, подобных SLES, OpenSUSE и др., см. Установка пакетов MariaDB с помощью ZYpp для получения дополнительной информации.
  7. Внесите необходимые изменения в параметры конфигурации в файлах параметров, такие как my.cnf. Это включает удаление любых системных переменных или параметров, которые больше не поддерживаются.
    • Важно отметить, что для активации Galera в MariaDB 10.1 требуется новый параметр: необходимо установить wsrep_on=ON.
  8. В дистрибутивах Linux, использующих systemd, возможно, потребуется увеличить таймаут запуска службы, так как стандартный таймаут в 90 секунд может быть недостаточным. См. Systemd: Настройка таймаута службы Systemd для получения дополнительной информации.
  9. Запустить MariaDB.
  10. Выполните mysql_upgrade с параметром --skip-write-binlog.
    • mysql_upgrade выполняет две задачи:
      1. Убеждается, что системные таблицы в базе данных mysql полностью совместимы с новой версией.
      2. Выполняет очень быструю проверку всех таблиц и помечает их как совместимые с новой версией MariaDB.

После завершения этого процесса для одного узла переходите к следующему.

Обратите внимание, что при обновлении поставщика Galera wsrep иногда может измениться версия протокола Galera. Поставщик Galera wsrep не должен начинать использовать новую версию протокола, пока все узлы кластера не будут обновлены до новой версии, поэтому это обычно не проблема во время поэтапного обновления. Однако это может вызвать проблемы, если вы перезапустите не обновленный узел в кластере, где остальные узлы были обновлены.

Содержимое, воспроизводимое на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проверяется заранее компанией MariaDB. Мнения, информация и мнения, выраженные в этом содержимом, не обязательно отражают точку зрения MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/upgrading-galera-cluster-upgrading-from-mariadb-galera-cluster-100-to-maria/

Spec-Zone.ru

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