Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
| Операционная система | Поддерживаемые архитектуры CPU |
|---|---|
| CentOS 8 - 8.4 Red Hat Enterprise Linux 8 |
x86_64 ARM 64/v8 |
В этом документе в качестве примера используется трехузловой кластер: узел master — mdw, а два сегментных узла — sdw1 и sdw2.
Процесс установки сервера состоит из пяти этапов: проверка базовой информации о сервере, подготовка к установке, установка RPM-пакета базы данных, развертывание базы данных и конфигурация после установки.
Перед началом установки проверьте основную системную информацию. Это хорошая практика, поскольку понимание характеристик сервера поможет вам более эффективно спланировать развертывание кластера.
| Шаг | Команда | Назначение |
|---|---|---|
| 1 | free -h |
Просмотр использования памяти |
| 2 | df -h |
Просмотр объема дискового пространства |
| 3 | lscpu |
Просмотр количества ядер процессора |
| 4 | cat /etc/system-release |
Просмотр версии ОС |
| 5 | uname -a |
Отображение всей информации о ядре в следующем порядке (если результаты -p или -i неизвестны, они опускаются): имя ядра; имя хоста; релиз ядра; версия ядра; аппаратная архитектура; тип процессора (непереносимый); аппаратная платформа (непереносимая); название ОС |
| 6 | tail -11 /proc/cpuinfo |
Просмотр подробных сведений о процессоре |
CentOS 8 и RHEL 8 используют dnf в качестве менеджера пакетов по умолчанию.
EPEL (Extra Packages for Enterprise Linux) предоставляет дополнительные пакеты, отсутствующие в стандартных репозиториях Red Hat и CentOS. PowerTools содержит библиотеки и инструменты разработчика. Он доступен в RHEL/CentOS, но по умолчанию отключен. Пакеты EPEL зависят от PowerTools. Если EPEL включен, PowerTools также должен быть включен.
Выполните следующие шаги от имени пользователя root или с правами root.
# dnf -y install epel-release && \
dnf -y install 'dnf-command(config-manager)' && \
dnf config-manager --set-enabled powertools && \
dnf config-manager --set-enabled epel && \
dnf -y update
Установите необходимые зависимости от имени пользователя root или с правами root.
# dnf install -y libicu python3-devel python3-pip openssl-devel openssh-server net-tools
Скопируйте RPM-пакет с локального компьютера на все узлы кластера.
~ scp <local file path> <username>@<server IP>:<server file path>
Отключите брандмауэр:
# systemctl stop firewalld.service
# systemctl disable firewalld.service
Отключите SELinux. Отредактируйте файл /etc/selinux/config и установите значение SELINUX=disabled:
# sed s/^SELINUX=.*$/SELINUX=disabled/ -i /etc/selinux/config
# setenforce 0
Остановите службы sssd:
# systemctl stop sssd
# systemctl stop sssd-kcm.socket
Убедитесь, что каждый узел имеет постоянное имя хоста. Если оно не задано, используйте следующую команду. Например, на узле master:
# hostnamectl set-hostname mdw
Аналогичным образом задайте имена хостов на двух сегментных узлах:
# hostnamectl set-hostname sdw1
# hostnamectl set-hostname sdw2
Убедитесь, что все узлы могут взаимодействовать друг с другом по имени хоста или IP-адресу. Добавьте записи в файл /etc/hosts, чтобы сопоставить имена хостов с адресами сетевых интерфейсов локальной сети. Например, файл /etc/hosts на каждом из трех узлов должен содержать строки, аналогичные следующим:
192.168.100.10 mdw
192.168.100.11 sdw1
192.168.100.12 sdw2
Примечание!
Вы должны установить RPM-пакет базы данных на всех узлах сервера с использованием учетной записи root или с правами sudo. Системные зависимости будут установлены автоматически.
# dnf install -y matrixdb6_6.2.0+enterprise-1.el8.x86_64.rpm
После успешной установки процессы supervisord и MXUI запускаются автоматически. Эти фоновые службы обеспечивают веб-интерфейс управления и контроль процессов.
Если необходимо настроить порты, измените файл /etc/matrixdb6/defaults.conf после установки RPM-пакета. Этот шаг требуется только на узле Master.
# vim /etc/matrixdb6/defaults.conf
YMatrix предоставляет графический инструмент для развертывания. Удаленный веб-интерфейс доступен через порты 8240 и 4617. После установки эти порты по умолчанию открыты на всех узлах. Процесс MXUI обеспечивает службу веб-интерфейса.
Примечание!
Если графический интерфейс недоступен, обратитесь к разделу развертывание из командной строки.
Для доступа к мастеру установки через веб-браузер. Сервер, IP-адрес которого вы введете, станет узлом Master вашего кластера (в данном примере — mdw):
http://<IP>:8240/
На первой странице установщика введите пароль суперпользователя. Вы можете просмотреть его с помощью следующей команды:

На второй странице выберите «Развертывание на нескольких узлах», затем нажмите «Далее».

Продолжайте выполнение четырех шагов развертывания на нескольких узлах.
Шаг 1: Добавление узлов
Нажмите кнопку «Добавить».

Введите IP-адреса, имена хостов или полные доменные имена sdw1 и sdw2 в текстовое поле. Нажмите «Comfirm», затем «Далее».

Шаг 2: Настройка параметров кластера
«Зеркальное отображение данных» определяет, будут ли сегментные узлы включать резервные зеркала. Включите зеркалирование в производственных средах для обеспечения высокой доступности. Система автоматически рекомендует наибольший диск и соответствующее количество сегментов на основе системных ресурсов. Настройте в соответствии с вашим вариантом использования. Конфигурацию топологии кластера можно просмотреть на диаграмме. После подтверждения нажмите «Далее».

Шаг 3: Настройка путей хранения данных и etcd
Выберите путь хранения для etcd на каждом сервере. Кластер etcd будет создан на случайном нечетном числе серверов для обеспечения согласованности выборов и предотвращения ничьих.

Если вы установите флажок для развертывания etcd на дисках с данными, имейте в виду связанные с этим риски.

Шаг 4: Выполнение развертывания
На этом шаге отображаются ранее настроенные параметры. Проверьте их и нажмите «Развернуть».

Система автоматически развертывает кластер и показывает подробные шаги и ход выполнения. Когда все шаги успешно завершены, развертывание завершено.

Развертывание завершено.

По умолчанию YMatrix разрешает удаленные подключения. Если во время установки вы не выбрали «Разрешить удаленный доступ к базе данных», вручную добавьте строку, аналогичную следующей, в файл pg_hba.conf. Это позволит любому пользователю с любого IP подключаться с аутентификацией по паролю. При необходимости скорректируйте диапазон IP-адресов или имя базы данных, чтобы снизить риски безопасности:
# host all all 0.0.0.0/0 md5
После внесения изменений переключитесь на пользователя mxadmin и перезагрузите файл pg_hba.conf:
# su - mxadmin
$ mxstop -u
Используйте следующие команды для запуска, остановки, перезапуска или проверки состояния кластера YMatrix:
$ mxstart -a
$ mxstop -af
$ mxstop -arf
$ mxstate -s
| Команда | Назначение |
|---|---|
mxstop -a |
Остановка кластера. (Останавливается только после завершения активных сеансов; может зависнуть при наличии активных сеансов.) |
mxstop -af |
Принудительная немедленная остановка кластера |
mxstop -arf |
Перезапуск кластера. Ожидает завершения текущих SQL-запросов. (Может зависнуть при наличии активных сеансов.) |
mxstate -s |
Проверка состояния кластера |