Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
| Операционная система | Поддерживаемая архитектура CPU |
|---|---|
| CentOS 7 | x86_64 |
| Red Hat 7 | x86_64 |
Пожалуйста, обратитесь к установке и развертыванию MatrixDB
Процесс установки сервера включает 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 <本地路径> <用户名>@<服务器 IP 地址>: <服务器路径>
Внимание!
На всех *** узлах выполните следующие действия от имени пользователя root или с правами sudo.
MatrixDB требует Python 3.6. Используйте следующую команду для установки и настройки Python 3.6 в качестве версии по умолчанию:
# sudo yum install centos-release-scl
# sudo yum install rh-python36
# sudo scl enable rh-python36 bash
Отключение брандмауэра:
# sudo systemctl stop firewalld.service
# sudo systemctl disable firewalld.service
Отключение SELinux: отредактируйте файл /etc/selinux/config и установите значение параметра SELINUX в disabled:
# sudo sed s/^SELINUX=.*$/SELINUX=disabled/ -i /etc/selinux/config
# sudo setenforce 0
Убедитесь, что на всех *** узлах заданы постоянные имена хостов. Если они отсутствуют, используйте следующую команду для их установки. В примере имя хоста устанавливается как mdw:
# sudo hostnamectl set-hostname mdw
Два дочерних узла также должны иметь соответствующие имена хостов, например sdw1 и sdw2:
# sudo hostnamectl set-hostname sdw1
# sudo hostnamectl set-hostname sdw2
Убедитесь, что все узлы кластера могут взаимно обращаться друг к другу по имени хоста и IP-адресу. Добавьте записи в файл /etc/hosts, сопоставляя имена хостов с адресами сетевых интерфейсов.
# sudo vim /etc/hosts
Например, файл /etc/hosts на всех трех узлах должен содержать следующее:
192.168.100.10 mdw
192.168.100.11 sdw1
192.168.100.12 sdw2
На всех *** узлах установите RPM-пакет базы данных от имени пользователя root или с использованием прав sudo. Зависимые системные библиотеки будут установлены автоматически. По умолчанию установка будет выполнена в каталог /usr/local/matrixdb:
# sudo yum install matrixdb-4.8.0.enterprise-1.el7.x86_64.rpm
Внимание!
Во время фактической установки замените имя файла на актуальное имя последнего загруженного RPM-пакета.
После успешной установки процессы supervisor и MXUI будут запущены автоматически. Эти фоновые процессы обеспечивают графический интерфейс и управление службами. Если требуется настроить порты, после установки RPM-пакета вручную создайте файл /etc/matrixdb/defaults.conf для конфигурации. Эта операция выполняется только на мастер-узле. Пример:
# vim /etc/matrixdb/defaults.conf
Добавьте следующее содержимое и при необходимости измените номера портов:
MasterPortBase = 5438
StandbyPortBase = 5439
PrimaryPortBase = 6500
MirrorPortBase = 7500
На всех узлах выполните следующую команду от имени пользователя root для установки пакетов Python, необходимых для MatrixDB. Обратите внимание, что необходимо выполнить команду source greenplum_path.sh, чтобы была установлена корректная версия зависимых пакетов:
# source /usr/local/matrixdb/greenplum_path.sh
# sudo yum install gcc python3-devel
# sudo pip3 install --upgrade setuptools
# sudo pip3 install argparse psutil pygresql pyyaml
Здесь по-прежнему используется графическое развертывание, предоставляемое MatrixDB. Для удаленного графического развертывания должны быть доступны порты 8240 и 4617. После установки эти порты на всех узлах будут открыты по умолчанию. Служба графического интерфейса предоставляется процессом MXUI.
Используйте браузер для доступа к URL-адресу мастера установки, указанному ниже — это IP-адрес сервера mdw:
http://<IP>:8240/
На первой странице мастера установки необходимо ввести пароль суперпользователя, который можно посмотреть с помощью команды sudo more /etc/matrixdb/auth.conf.

На второй странице выберите «Развертывание на нескольких узлах» и нажмите «Далее». 
Далее начнется четырехэтапный процесс развертывания на нескольких машинах.
Первый шаг — добавление узлов. Нажмите кнопку «Добавить узел». 
Введите IP-адреса, имена хостов или полные доменные имена (FQDN) sdw1 и sdw2 в текстовое поле, нажмите «ОК», затем «Далее». 
Второй шаг — настройка параметров кластера. Параметр «Зеркальное отображение данных» определяет, будут ли резервные копии узлов данных в кластере. Рекомендуется включить его в производственной среде для обеспечения высокой доступности. Система автоматически предлагает использовать наибольшее доступное дисковое пространство и количество сегментов, соответствующих ресурсам системы, которые можно скорректировать в зависимости от конкретного сценария использования. Структуру кластера можно просмотреть на схематическом изображении. После подтверждения нажмите «Далее». 
Третий шаг — настройка путей хранения. 
Четвертый шаг — выполнение развертывания. На этом этапе будут перечислены параметры конфигурации предыдущих действий. После проверки правильности нажмите «Выполнить развертывание». 
Система автоматически развернет кластер и покажет подробные шаги и ход выполнения. После успешного завершения всех шагов развертывание будет завершено. 
Развертывание завершено. 
По умолчанию стандартная установка 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 | Просмотр состояния кластера |