Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
| Операционная система | Поддерживаемая архитектура CPU |
|---|---|
| CentOS 8 | x86_64 |
| Red Hat 8 | x86_64 |
Процесс установки сервера включает 5 этапов: просмотр базовой информации о сервере, подготовку к установке, установку 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 и Red Hat 8 по умолчанию используют новое поколение менеджера пакетов dnf. Выполните следующие шаги от имени пользователя root или с правами root.
# dnf -y --disablerepo '*' --enablerepo=extras swap centos-linux-repos centos-stream-repos --allowerasing && \
# dnf -y distro-sync && \
# 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
Выполните замену репозиториев CentOS 8 и Red Hat 8 от имени пользователя root или с правами root.
# dnf -y --disablerepo '*' --enablerepo=extras swap centos-repos centos-stream-repos
Скопируйте предстоящие RPM-пакеты со своего локального устройства на все узлы.
~ scp <本地文件路径> <用户名>@<服务器 IP 地址>:<服务器文件路径>
Обновите установленный дистрибутив Linux до последней доступной версии. Команда distro-sync отличается от команды upgrade. Upgrade — это обычная команда для обновления операционной системы, тогда как distro-sync обновляет все пакеты Linux, не соответствующие вашей версии, до существующей. Выполните следующие шаги от имени пользователя root или с правами root.
# dnf -y distro-sync
Репозиторий EPEL (Extra Packages for Enterprise Linux) предоставляет дополнительные пакеты, которые не входят в стандартные репозитории Red Hat и CentOS. Репозиторий PowerTools служит контейнером для библиотек и инструментов разработки. Он доступен в операционных системах RHEL/CentOS, но по умолчанию отключен. Пакет EPEL зависит от пакета PowerTools. Если репозиторий EPEL активирован, PowerTools должен быть установлен в системе.
Выполните следующие шаги от имени пользователя root или с правами root.
# dnf -y install epel-release && \
# 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
Отключите брандмауэр:
# 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
Убедитесь, что на всех узлах заданы постоянные имена хостов. Если они отсутствуют, используйте следующую команду для их установки. Например, на мастер-узле можно задать так:
# 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-пакет MatrixDB от имени пользователя root или с правами root.
# dnf install -y matrixdb-4.8.0.enterprise-1.el7.x86_64.rpm
Примечание!
Во время фактической установки замените имя файла на актуальное имя скачанного RPM-пакета.
После успешной установки процессы supervisor и MXUI будут автоматически запущены. Эти фоновые процессы обеспечивают графический интерфейс и сервисы управления процессами.
Если требуется настроить порты, вручную создайте файл /etc/matrixdb/defaults.conf для конфигурации после установки RPM-пакета. Эта операция выполняется только на мастер-узле. Пример:
# vim /etc/matrixdb/defaults.conf
Добавьте следующее содержимое и при необходимости измените номера портов:
MasterPortBase = 5438
StandbyPortBase = 5439
PrimaryPortBase = 6500
MirrorPortBase = 7500
Здесь по-прежнему используется графическое развертывание, предоставляемое MatrixDB. Для удалённого графического развертывания необходимо, чтобы порты 8240 и 4617 сервера были доступны. После установки эти порты на всех узлах будут открыты по умолчанию. Служба графического интерфейса предоставляется процессом MXUI.
Используйте браузер для доступа к URL мастера установки с графическим интерфейсом, где указан IP-адрес сервера mdw:
http://<IP>:8240/
На первой странице мастера установки необходимо ввести пароль суперпользователя, который можно посмотреть с помощью команды sudo more /etc/matrixdb/auth.conf.

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

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

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

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

Третий шаг — настройка путей хранения.

Четвёртый шаг — выполнение развертывания. На этом этапе будут перечислены параметры конфигурации из предыдущих действий. После проверки корректности нажмите «Выполнить развертывание».

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

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

По умолчанию установленная MatrixDB поддерживает удалённые подключения. Если во время установки не был установлен флажок «Разрешить удалённое подключение к базе данных», вручную измените файл $MASTER_DATA_DIRECTORY/pg_hba.conf, добавив строку следующего вида, указывающую, что пользователям с любого IP-адреса разрешено подключаться ко всем базам данных через аутентификацию по паролю. Диапазон IP-адресов или имена баз данных можно ограничить в соответствии с реальными потребностями, чтобы снизить риски безопасности:
# host all all 0.0.0.0/0 md5
После внесения этих изменений выполните следующую команду для перезагрузки конфигурационного файла pg_hba.conf:
# gpstop -u
Запуск, остановка, перезапуск и просмотр состояния MatrixDB можно выполнить с помощью следующих команд:
| Команда | Назначение |
|---|---|
| gpstop -a | Остановить кластер. (В этом режиме, если есть активные сессии, закрытие базы данных зависнет) |
| gpstop -af | Быстрая остановка кластера |
| gpstop -ar | Перезапуск кластера. Ожидание завершения текущего SQL-запроса (в этом режиме, если есть активные сессии, закрытие базы данных зависнет) |
| gpstate -s | Просмотр состояния кластера |