Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
Примечания!
YMatrix использует векторизацию для повышения производительности запросов. Если развертываемый хост (физическая или виртуальная машина) не поддерживает набор инструкций AVX2, развертывание завершится ошибкой.
Если вы развертываете на виртуальной машине, убедитесь, что физический хост поддерживает набор инструкций AVX2 и что он включен в конфигурации.
| Операционная система | Поддерживаемая архитектура CPU |
|---|---|
| CentOS 7 Red Hat Enterprise Linux 7 |
x86_64 |
В этом документе в качестве примера используется три узла: основной узел — mdw, два узла данных — sdw1 и sdw2 соответственно.
Процесс установки сервера включает 6 шагов: просмотр базовой информации о сервере, подготовку к установке, установку RPM-пакета базы данных, установку зависимых пакетов Python, развертывание базы данных и настройку после установки.
Перед выполнением установки сначала проверьте базовую информацию о сервере. Это хорошая практика, которая поможет вам лучше спланировать и развернуть кластер.
| Шаг | Команды | Назначение |
|---|---|---|
| 1 | free -h | Просмотр информации об оперативной памяти |
| 2 | df -h | Просмотр дискового пространства |
| 3 | lscpu | Просмотр количества ядер процессора |
| 4 | cat /etc/system-release | Просмотр версии операционной системы |
| 5 | uname -a | Отображение всей информации о ядре в следующем порядке (если определение типа процессора и аппаратной платформы невозможно, результаты -p и -i опускаются): имя ядра; имя хоста в сетевом узле; номер выпуска ядра; версия ядра; имя архитектуры аппаратного обеспечения; тип процессора (непереносимо); аппаратная платформа (непереносимо); имя операционной системы |
| 6 | tail -11 /proc/cpuinfo | Просмотр информации о процессоре |
Скопируйте RPM-пакет локально на все узлы удаленного сервера.
~ scp <local path> <username>@<Server IP address>: <server path>
Примечания!
На всех *** узлах выполните следующие действия от имени пользователя root или с правами sudo.
YMatrix требует Python 3.6. Используйте следующую команду для установки и настройки Python 3.6 в качестве версии по умолчанию:
# yum install centos-release-scl
# yum install rh-python36
# scl enable rh-python36 bash
Отключение брандмауэра:
# 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
Убедитесь, что на всех *** узлах заданы постоянные имена хостов. Если они отсутствуют, используйте следующую команду для установки имени хоста. В примере имя хоста установлено как mdw:
# hostnamectl set-hostname mdw
Два дочерних узла также должны иметь соответствующие имена хостов, например sdw1 и sdw2:
# hostnamectl set-hostname sdw1
# hostnamectl set-hostname sdw2
Убедитесь, что все узлы кластера могут взаимно обращаться друг к другу по имени хоста и IP-адресу. Добавьте запись в файл /etc/hosts, сопоставляющую имя хоста с адресом сетевой карты.
# vim /etc/hosts
Например, файл /etc/hosts на всех трех узлах должен содержать следующее:
192.168.100.10 mdw
192.168.100.11 sdw1
192.168.100.12 sdw2
Примечания!
Необходимо установить RPM-пакет базы данных на всех узлах сервера от имени пользователя root или с использованием прав sudo. Системные библиотеки зависимостей будут установлены автоматически.
По умолчанию установка будет выполнена в каталоге /opt/ymatrix/matrixdb5:
# yum install matrixdb5_5.2.0+enterprise-1.el7.x86_64.rpm
После успешной установки процессы supervisor и MXUI будут запущены автоматически. Эти фоновые процессы предоставляют графический интерфейс и службы управления процессами.
Если требуется настроить порты, измените файл /etc/matrixdb5/defaults.conf после установки RPM-пакета. Эта операция выполняется только на мастер-узле.
# vim /etc/matrixdb5/defaults.conf
Здесь по-прежнему используется графическое развертывание, предоставляемое YMatrix. Удаленное графическое развертывание доступно через порты 8240 и 4617. После установки эти порты будут открыты по умолчанию на всех узлах. Служба графического интерфейса предоставляется процессом MXUI.
Примечания!
Если вы не можете развернуть YMatrix с помощью графического интерфейса, обратитесь к разделу Развертывание из командной строки.
Откройте в браузере URL мастера установки с графическим интерфейсом. Сервер, на котором вы укажете свой IP-адрес, станет мастером вашего кластера (в данном примере — mdw):
http://<IP>:8240/
На первой странице мастера установки необходимо указать пароль суперпользователя, который можно просмотреть с помощью команды sudo more /etc/matrixdb5/auth.conf.

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

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

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

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

Третий шаг — настройка пути хранения данных и пути etcd. Для каждого сервера необходимо выбрать путь хранения etcd. Кластер etcd будет случайным образом создан на нечетных серверах, чтобы гарантировать уникальность результатов выборов и исключить ничью.

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

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

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

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

По умолчанию установленная YMatrix поддерживает удаленные подключения. Если во время установки не был установлен флажок «Разрешить удаленное подключение к базе данных», вручную измените файл $MASTER_DATA_DIRECTORY/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 | Просмотр состояния кластера |