CentOS 8, Red Hat 8 — развертывание кластеров в автономном режиме

  • Требования к операционной системе и платформе
Операционная система Поддерживаемая архитектура CPU
CentOS 8 x86_64
Red Hat 8 x86_64

Примечание!
Данное руководство ограничено 64-разрядными установочными пакетами. Если вам необходим 32-разрядный пакет, подготовьте его самостоятельно.

Установка сервера

Процесс установки сервера включает 6 шагов: просмотр базовой информации о сервере, подготовка к установке, установка RPM-пакета базы данных, установка зависимостей Python, развертывание базы данных и настройка после установки.

1 Просмотр базовой информации о сервере

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

Шаг Команды Назначение
1 free -h Просмотр информации об оперативной памяти ОС
2 df -h Просмотр объема дискового пространства
3 lscpu Просмотр количества ядер процессора
4 cat /etc/system-release Просмотр версии операционной системы
5 uname -a Вывод всей информации о ядре в следующем порядке (если определение типа процессора и платформы невозможно, результаты для параметров -p и -i опускаются): имя ядра; имя хоста в сетевом узле; номер выпуска ядра; версия ядра; имя архитектуры аппаратного обеспечения; тип процессора (непереносимо); аппаратная платформа (непереносимо); имя операционной системы
6 tail -11 /proc/cpuinfo Просмотр информации о процессоре

2 Подготовка к установке

2.1 Создание локального репозитория yum

Установщику YMatrix требуются дополнительные пакеты ресурсов, которые можно предоставить путем создания локального репозитория yum:

Сначала загрузите архив офлайн-репозитория с официального сайта: matrixdb_local_repo_centos8.tar.
Скопируйте этот архив на все узлы кластера.

~ scp <local file path> <username>@<server IP address>:<server file path>

Выполните следующие действия от имени пользователя root или с правами root.
Распакуйте установочный пакет и запустите скрипт createrepo.sh:

# tar xf matrixdb_local_repo_centos8.tar
# cd matrixdb_local_repo
# sh createrepo.sh

После успешного выполнения выполните команду dnf repolist, чтобы просмотреть репозиторий dnf и подтвердить успешность установки:

[root@localhost matrixdb_local_repo]# dnf repolist
Warehouse ID                                                                                                            Warehouse Name
appstream                                                                                                           CentOS Stream 8 - AppStream
baseos                                                                                                              CentOS Stream 8 - BaseOS
epel                                                                                                                Extra Packages for Enterprise Linux 8 - x86_64
epel-modular                                                                                                        Extra Packages for Enterprise Linux Modular 8 - x86_64
epel-next                                                                                                           Extra Packages for Enterprise Linux 8 - Next - x86_64
extras                                                                                                              CentOS Stream 8 - Extras
extras-common                                                                                                       CentOS Stream 8 - Extras common packages
powertools                                                                                                          CentOS Stream 8 - PowerTools
ymatrix                                                                                                             ymatrix

Убедитесь, что репозиторий ymatrix активирован.

2.2 Установка Python3

На всех узлах установите Python3 от имени пользователя root или с правами root:

# dnf install --disablerepo=* --enablerepo=ymatrix -y python3

2.3 Изменение конфигурации сервера

Отключите брандмауэр:

# 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

4 Установка RPM-пакета базы данных

Вернитесь в домашнюю директорию:

cd ~

На всех узлах выполните следующую команду dnf от имени пользователя root для установки RPM-пакета базы данных, указав локальный репозиторий. Системные библиотеки зависимостей будут установлены автоматически. По умолчанию установка будет выполнена в каталоге /opt/ymatrix/matrixdb5:

dnf install --disablerepo=* --enablerepo=ymatrix -y matrixdb5-5.0.0.enterprise-1.el8.x86_64.rpm

Примечание!
В реальном процессе установки замените имя файла на актуальное имя скачанного RPM-пакета.

После успешной установки процессы supervisor и MXUI будут автоматически запущены. Эти фоновые процессы обеспечивают графический интерфейс и управление службами.

Если требуется настроить порты, измените файл /etc/matrixdb5/defaults.conf после установки RPM-пакета. Эта операция выполняется только на мастер-узле.

# vim /etc/matrixdb5/defaults.conf

5 Развертывание базы данных

Здесь по-прежнему используется графическое развертывание от YMatrix. Для удаленного графического развертывания необходимо, чтобы порты 8240 и 4617 на сервере были доступны. После установки эти порты на всех узлах будут открыты по умолчанию. Графический интерфейс UI предоставляется процессом MXUI.

Примечание!
Если вы не можете использовать графический интерфейс для развертывания YMatrix, обратитесь к разделу [Развертывание через командную строку] (/doc/5.0/faq/install_faq#command_line_install).

Откройте в браузере URL-адрес мастера установки, указав IP-адрес сервера mdw:

http://<IP>:8240/

На первой странице мастера установки необходимо ввести пароль суперпользователя. Посмотреть его можно с помощью команды sudo more /etc/matrixdb5/auth.conf.

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


Далее начнется четырехэтапный процесс развертывания на нескольких машинах.

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

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


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


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


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

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

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

6 Настройка после установки

По умолчанию стандартная установка YMatrix поддерживает удаленные подключения. Если во время установки не был выбран параметр «Разрешить удаленное подключение к базе данных», необходимо вручную изменить файл $MASTER_DATA_DIRECTORY/pg_hba.conf, добавив строку следующего вида, разрешающую пользователям с любого IP-адреса подключаться ко всем базам данных с использованием аутентификации по паролю. Диапазон IP-адресов или имена баз данных можно ограничить в соответствии с реальными потребностями, чтобы снизить риски безопасности:

host  all       all   0.0.0.0/0  md5

После внесения этих изменений выполните следующую команду для перезагрузки конфигурационного файла pg_hba.conf:

$ mxstop -u

Запуск, остановка, перезапуск и проверка состояния YMatrix могут быть выполнены с помощью следующих команд:

$ mxstart -a
$ mxstop -af
$ mxstop -arf 
$ mxstate -s
Команда Назначение
mxstop -a Остановить кластер. (В этом режиме, если есть активные сессии, закрытие базы данных может зависнуть)
mxstop -af Быстрая остановка кластера
mxstop -arf Перезапуск кластера. Ожидание завершения текущего SQL-запроса (в этом режиме, если есть активные сессии, закрытие базы данных может зависнуть)
mxstate -s Просмотр состояния кластера