Spec-Zone.ru › MariaDB

Почему стоит автоматизировать развертывание и управление MariaDB

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

Инфраструктура как код

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

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

Код автоматизации на высоком уровне, и обычно разработчика не интересует, как реализованы операции. Их реализация делегирована модулям, которые обрабатывают конкретные компоненты инфраструктуры. Например, модуль может одинаково работать с менеджерами пакетов apt и yum. Другие модули могут реализовывать операции для определённого поставщика облачных услуг, так что мы указываем, что нужно создать снимок, но нам не нужно писать команды для этого. В особых случаях, конечно, можно написать команды Bash или скрипты на любом языке и указать, что они должны быть выполнены.

Ручное вмешательство на серверах по-прежнему возможно. Это полезно, например, для расследования проблем с производительностью. Но важно оставлять серверы в состоянии, описанном в коде.

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

Автоматизированный переключение

После репликации важными аспектами для автоматизации являются балансировка нагрузки и переключение.

Прокси-серверы могут реализовывать балансировку нагрузки, перенаправляя поступающие запросы на различные серверы, пытаясь распределить нагрузку равномерно. Они также могут отслеживать, что серверы MariaDB работают и находятся в хорошем состоянии, тем самым избегая отправки запросов на сервер, который отключён или имеет проблемы.

Однако это не решает проблему с репликацией: если сервер-мастер выходит из строя, его реплики должны переключиться на другой сервер. Обычно это означает, что существующая реплика повышается до статуса мастера. Такого рода изменения возможны благодаря MariaDB GTID.

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

Автоматизация переключения минимизирует время восстановления. Способ сделать это – использовать Orchestrator, инструмент, который может автоматически повысить реплику до статуса мастера. Выбор реплики для повышения выполняется разумным образом, учитывая такие факторы, как версии серверов и формат бинарного журнала.

Ресурсы

  • Автоматизация непрерывной конфигурации на Википедии.
  • Инфраструктура как код на Википедии.

Контент первоначально предоставлен компанией Vettabase Ltd.

Контент, воспроизведенный на этом сайте, является собственностью соответствующих владельцев, и этот контент не проходит предварительного просмотра со стороны 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/why-to-automate-mariadb-deployments-and-management/

Spec-Zone.ru

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