Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
| Операционная система | Поддерживаемые архитектуры CPU |
|---|---|
| Ubuntu 20.04 LTS | x86_64 aarch64 |
В этом документе в качестве примера используется трехузловой кластер: мастер-узел — mdw, а два сегментных узла — sdw1 и sdw2.
Процесс установки сервера состоит из пяти этапов: проверка базовой информации о сервере, подготовка к установке, установка DEB-пакета базы данных, развертывание базы данных и конфигурация после установки.
Перед началом установки проверьте основную системную информацию. Это хорошая практика, поскольку понимание характеристик сервера помогает эффективнее планировать развертывание кластера.
| Шаг | Команда | Назначение |
|---|---|---|
| 1 | free -h |
Просмотр использования памяти |
| 2 | df -h |
Просмотр свободного места на диске |
| 3 | lscpu |
Просмотр количества процессоров |
| 4 | lsb_release -a |
Просмотр версии ОС |
| 5 | uname -a |
Вывод всей информации о ядре в следующем порядке (если -p или -i не могут быть определены, они пропускаются): имя ядра; имя хоста; релиз ядра; версия ядра; аппаратная архитектура; тип процессора (непереносимый); аппаратная платформа (непереносимая); название операционной системы |
| 6 | tail -11 /proc/cpuinfo |
Просмотр подробных сведений о процессоре |
Примечание!
Команды в разделах 2 (Подготовка к установке) и 3 (Установка DEB-пакета базы данных) должны выполняться на всех узлах.
В этом документе предполагается, что вы уже настроили источники программного обеспечения в файле /etc/apt/sources.list. Далее обновите список пакетов от имени root или с правами root.
# apt update
APT (Advanced Package Tool) управляет программными пакетами, включая загрузку, установку, разрешение зависимостей и обновление индекса пакетов.
Настройте локаль от имени root или с правами sudo.
# apt install -y locales && sudo locale-gen "en_US.UTF-8" && sudo update-locale LC_ALL="en_US.UTF-8"
Убедитесь, что каждый узел имеет постоянное имя хоста. Если оно не задано, используйте следующую команду для его настройки. Например, на мастер-узле:
# hostnamectl set-hostname mdw
Аналогично задайте имена хостов для двух сегментных узлов:
# hostnamectl set-hostname sdw1
# hostnamectl set-hostname sdw2
Убедитесь, что все узлы могут взаимодействовать друг с другом по именам хостов или IP-адресам. Сначала установите инструмент vim.
# apt install vim
Добавьте записи в файл /etc/hosts, чтобы сопоставить имена хостов с адресами сетевых интерфейсов. Например, файл /etc/hosts на каждом из трех узлов должен содержать строки, аналогичные следующим:
# vim /etc/hosts
192.168.100.10 mdw
192.168.100.11 sdw1
192.168.100.12 sdw2
После редактирования нажмите Esc, затем введите :wq, чтобы сохранить изменения и выйти.
Примечание!
Получите ссылку для скачивания DEB-пакета из официального письма.
Скопируйте DEB-пакет, который необходимо установить, с вашего локального компьютера на все узлы.
~ scp <local file path> <username>@<server IP>:<server file path>
Примечание!
На всех узлах сервера установите DEB-пакет базы данных от имени root или с правами sudo с помощью командыaptниже. Зависимости системы будут установлены автоматически.
# apt install -y /path/to/matrixdb6_6.2.0+enterprise-1_amd64.deb
Примечание!
При фактической установке замените имя файла на актуальное имя скачанного DEB-пакета, а/path/to/— на правильный путь. Используйте./, если файл находится в текущей директории.
После успешной установки процессы supervisord и MXUI запускаются автоматически. Эти фоновые службы обеспечивают веб-интерфейс и управление процессами.
Если необходимо настроить порты, измените файл /etc/matrixdb6/defaults.conf после установки DEB-пакета. Этот шаг требуется только на мастер-узле.
# vim /etc/matrixdb6/defaults.conf
На всех узлах выполните следующие команды от имени root или с правами sudo для установки пакетов Python, необходимых для YMatrix. Обратите внимание, что необходимо выполнить source greenplum_path.sh, чтобы гарантировать установку корректных версий зависимостей.
# apt install -y \
gcc \
python3-dev \
python3-pip \
python3-psutil \
python3-pygresql \
python3-testresources
# update-alternatives --install /usr/bin/python python /usr/bin/python3 50
YMatrix предоставляет графическое руководство по развертыванию. Удаленный доступ к GUI осуществляется через порты 8240 и 4617. После установки эти порты по умолчанию открыты на всех узлах. Процесс MXUI предоставляет веб-интерфейс.
Примечание!
Если графический интерфейс недоступен, обратитесь к развертыванию через командную строку.
Откройте мастер установки в браузере по следующему URL. Сервер, чей IP-адрес вы введете, станет мастер-узлом вашего кластера (в данном примере — mdw):
http://<IP>:8240/
На первой странице мастера введите пароль суперпользователя. Его можно просмотреть с помощью команды sudo more /etc/matrixdb6/auth.conf.

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

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

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

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

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

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

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

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

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

На всех узлах отредактируйте файл sysstat и измените ENABLED="false" на ENABLED="true". Нажмите esc, затем введите :wq, чтобы сохранить изменения и выйти.
# sudo vi /etc/default/sysstat
Перезапустите службу.
# sudo service sysstat restart
По умолчанию YMatrix разрешает удаленные подключения. Если во время установки не был выбран параметр «Разрешить удаленный доступ к базе данных», вручную добавьте строку, аналогичную следующей, в файл $MASTER_DATA_DIRECTORY/pg_hba.conf, чтобы разрешить любому пользователю с любого IP подключаться с аутентификацией по паролю:
# host all all 0.0.0.0/0 md5
Вы можете ограничить диапазон IP-адресов или имен баз данных в зависимости от требований безопасности.
После внесения изменений переключитесь на пользователя mxadmin и перезагрузите файл конфигурации pg_hba.conf:
# su - mxadmin
$ mxstop -u
Используйте следующие команды для запуска, остановки, перезапуска или проверки состояния кластера YMatrix:
| Команда | Назначение |
|---|---|
mxstop -a |
Остановка кластера. (Останавливается только после завершения всех сессий; может зависнуть при наличии активных сессий.) |
mxstop -af |
Принудительная немедленная остановка кластера. |
mxstop -arf |
Перезапуск кластера. Ожидает завершения выполняющихся в данный момент SQL-запросов. (Может зависнуть при наличии активных сессий.) |
mxstate -s |
Проверка состояния кластера |