Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
В этом документе описывается инструмент добавления зеркальных узлов (Mirror) mxaddmirrors.
mxaddmirrors можно добавить зеркальные узлы в систему YMatrix, развернутую изначально без них, и запустить процесс онлайн-репликации между основными экземплярами сегментов (Primary) и соответствующими им зеркалами.Примечание!
Во время процесса добавления зеркал база данных должна быть простаивающей. Не должно выполняться никаких рабочих нагрузок и других запросов.
Ниже приведено подробное описание аргументов командной строки:
| Подкоманда | Параметр | Описание | Опционально |
|---|---|---|---|
| config | Создает пользовательский конфигурационный файл | ||
| --init-file | Инициализирует шаблон конфигурации | Обязательно | |
| --db-cluster-id | Идентификатор кластера базы данных. Используется для идентификации уникального кластера базы данных | Опционально | |
| --filename | Сохраняет сгенерированный конфигурационный файл по указанному пути. Если файл не существует, он будет создан автоматически. Можно также использовать перенаправление вывода | Опционально | |
| init | Преобразует собранные данные в базовый план | ||
| --db-cluster-id | Идентификатор кластера базы данных. Хранится в файле /etc/matrixdb5/cluster.conf. Используйте последний ClusterID, если развернут только один кластер; в противном случае выберите соответствующий --db-cluster-id |
Обязательно | |
| --mirror-port-base | Начальный порт, с которого начинается поиск свободного порта для прослушивания зеркалом. По умолчанию поиск начинается с порта 7000 |
Опционально | |
| plan | Генерирует план развертывания | ||
| --init-file | Абсолютный путь к файлу вывода, полученному от команды init |
Обязательно | |
| --custom-config | Абсолютный путь к файлу, сгенерированному командой config |
Опционально | |
| setup | Выполняет развертывание | ||
| --plan-file | Абсолютный путь к файлу вывода, полученному от команды plan |
Обязательно |
Примечание!
Достаточно указать только обязательные параметры, если поведение по умолчанию вас устраивает.
Инструмент mxaddmirrors должен выполняться пользователем с правами sudo на хосте мастера (кроме пользователя mxadmin, используйте абсолютный путь /opt/ymatrix/matrixdb6/bin/mxaddmirrors). Если команда mxaddmirrors init была случайно запущена под пользователем без прав sudo, файл mxaddmirrors.init будет создан в контексте этого пользователя и станет доступен только для чтения другим пользователям. В этом случае необходимо удалить этот файл и повторно выполнить команду под пользователем с правами sudo, чтобы пересоздать его.
Приведены два примера использования: один — с поведением по умолчанию, другой — с пользовательской конфигурацией. Смотрите ниже:
Примечание!
Выберите либо 3.1, либо 3.2. Поведение по умолчанию следует политике распределения зеркал Ring от YMatrix. Пользовательская конфигурация позволяет адаптироваться к другим желаемым стратегиям зеркалирования. Независимо от выбора, необходимо выполнить полный цикл добавления зеркал.
Сбор информации об узлах и частичной конфигурации развертывания базы данных.
$ mxaddmirrors init > /tmp/mxaddmirrors.init
Генерация плана развертывания на основе собранной информации.
$ mxaddmirrors plan --init-file /tmp/mxaddmirrors.init > /tmp/mxaddmirrors.plan
Выполнение развертывания.
$ mxaddmirrors setup --plan-file /tmp/mxaddmirrors.plan --mode cli
Сбор информации об узлах и частичной конфигурации развертывания базы данных.
$ mxaddmirrors init > /tmp/mxaddmirrors.init
Сохранение сгенерированной конфигурации в файл config. Если файл не существует, он будет создан автоматически.
$ mxaddmirrors config --init-file /tmp/mxaddmirrors.init > /tmp/config
Примечание!
Разумная конфигурация генерируется как для сбалансированных, так и для несбалансированных кластеров, но ручная проверка всё равно необходима.
Редактирование файла config.
$ edit config
Генерация плана развертывания с использованием собранных данных и пользовательской конфигурации.
$ mxaddmirrors plan --init-file /tmp/mxaddmirrors.init --custom-config /tmp/config > /tmp/mxaddmirrors.plan
Выполнение развертывания.
$ mxaddmirrors setup --plan-file /tmp/mxaddmirrors.plan --mode cli
Сгенерированный конфигурационный файл имеет формат CSV:
0||7000|
1||7000|
content_id, hostname, port и rootdir of datadir (используются для создания каталогов и файлов баз данных).content_id не должно быть пустым и должно быть уникальным. Все изменённые параметры применяются немедленно — «что видите, то и получите».Примечание!
Для несбалансированных развертываний обратитесь к соответствующему разделу в руководстве по развертыванию асимметричных кластеров за правилами конфигурации.
Примечание!
Начиная с версии YMatrix 5, была внедрена новая архитектура базы данных. Для добавления зеркал теперь используется инструментmxaddmirrors, который несовместим сgpaddmirrors. Предыдущие версии могут продолжать использоватьgpaddmirrors.