Подключение узлов хранения
|
Здесь описан вариант подключения узлов СХД вручную. Рекомендуемый способ — выполнение операции изменения дополнительных параметров кластера в веб-интерфейсе. |
Для корректной работы резервного копирования с узлов хранения и диагностических отчётов выполните дополнительные настройки. Предполагается, что на момент выполнения этих настроек уже была выполнена корректная настройка системы хранения и узлов кластера МБД.П.
-
Получите сведения для настройки узлов хранения.
Получить сведения можно на любом узле кластера из файла
/etc/fstab:cat /etc/fstabВ выводе будут строки для монтирования каталога резервных копий по NFS, например:
192.168.186.211:/mnt/nas/lundata /MBD_BACKUP/mount/data nfs rw,vers=3,proto=tcp,timeo=600,soft,rsize=65536,wsize=65536,namlen=255,nolock,retrans=2,sec=sys,_netdev 0 0 192.168.186.211:/mnt/nas/lunwal /MBD_BACKUP/mount/wal nfs rw,vers=3,proto=tcp,timeo=600,soft,rsize=65536,wsize=65536,namlen=255,nolock,retrans=2,sec=sys,_netdev 0 0-
192.168.186.211— VIP-адрес модуля хранения; -
/mnt/nas/lundata— каталог данных на активном узле хранения; -
/mnt/nas/lunwal— путь к каталогу архива WAL на активном узле хранения; -
/MBD_BACKUP/mount/data— путь к точке монтирования каталога данных на узлах кластера.
В дополнение к этим данным необходим путь к каталогу резервных копий, который можно получить из веб-интерфейса "Спектра".
На странице найдите в списке все сервисы настраиваемого кластера и для каждого из них проверьте пути к каталогу резервных копий:
-
Нажмите на имя сервиса — откроется страница детализации сервиса.
-
Перейдите на вкладку .
-
В параметре
restore_commandскопируйте путь к каталогу резервных копий, например:
/MBD_BACKUP/spr-uv/pgbackupДля настройки сохраните уникальные пути к каталогу резервных копий.
-
-
Проверьте версию
pg_probackup— она должна совпадать с версией на узлах кластера:pg_probackup --version -
Проверьте
uid gidпользователяpgbackupна каждом узле хранения:cat /etc/passwd | grep pgbackupВ выводе будут строки:
pgbackup:x:2000:2000::/home/pgbackup:/bin/bashUid gidпользователяpgbackupдолжны совпадать сuid gidпользователяpostgresна узле кластера — должен быть 2000. -
Проверьте, что на каждом узле хранения, в домашнем каталоге пользователя
pgbackup, в файле.pgpass, для каждого узла кластера и сервиса СУБД присутствуют записи с паролем пользователяbackup, а также указаны IP-адреса узлов и VIP мастера в сети interconnect:192.168.102.229:5432:*:backup:123 192.168.102.228:5432:*:backup:123 192.168.102.227:5432:*:backup:123 192.168.102.34:5432:*:backup:123Пароль "123" указан в качестве примера. Формат файла описан в документации к PostgreSQL: www.postgresql.org/docs/current/libpq-pgpass.html.
Пароль пользователя
backupуказан на узлах кластера, в файле.pgpass, в домашнем каталоге пользователяpostgres(обычно это/var/lib/postgres/.pgpass). Права на чтение и запись этого файла должны быть только у владельца. Проверить можно с помощью команд:su - pgbackup ls -l ~/.pgpassПример вывода:
-rw------- 1 pgbackup pgbackup 18 авг 26 15:27 /home/pgbackup/.pgpassЕсли права отличаются от
rw, измените их:chmod 600 ~/.pgpass -
Добавьте SSH-ключи пользователя
spectrumна узлы хранения.Если на хосте "Спектра" для пользователя
spectrumуже был сгенерирован SSH-ключ, используйте его. По умолчанию ключ хранится в домашней директории пользователя в файлеhome/spectrum/.ssh/id_rsa.pub.Если ключи отсутствуют, для их создания на хосте "Спектра" выполните следующие команды:
su - spectrum -s /bin/bash ssh-keygen -t rsaПо умолчанию ключи будут записаны в файлы
home/spectrum/.ssh/id_rsaиhome/spectrum/.ssh/id_rsa.pub.Если такие файлы уже существуют, введите иное имя (полный путь), чтобы не было замены ключей.
Если файлов таких нет, на запрос пути нажмите клавишу Enter, и созданные ключи будут сохранены в файлы по умолчанию. А также на запрос парольной фразы поле оставьте пустым и нажмите клавишу Enter.
Скопируйте содержимое файла публичного ключа (введенный_путь/введенное_имя.pub), открыв его в текстовом редакторе или запросив командой
cat, например:ssh-rsa AAA..w== spectrum@ИМЯ_ВМСкопированный ключ добавьте в файл авторизованных ключей на узле хранения, находящийся в домашней директории
pgbackupпо путиhome/pgbackup/.ssh/authorized_keys. Чтобы перейти в домашнюю директорию пользователяpgbackup, используйте команду:su - pgbackupЧтобы снова выполнять команды из-под пользователя
root, выйдите из-под пользователяspectrum, например, при помощи командыexitили комбинации клавиш ctrl+d. -
Добавьте в файл
pg_hba.confдля каждого сервиса СУБД на узлах кластера следующие записи для пользователяbackup:host replication backup samenet scram-sha-256 host postgres backup samenet scram-sha-256Проверить наличие записей и добавить их при необходимости можно в веб-интерфейсе (Аутентификация PostgreSQL).
-
Поместите публичный ключ пользователя
pgbackupиз узла хранения (/home/pgbackup/.ssh/id_rsa.pub) на все узлы кластера пользователюpostgres(/var/lib/postgres/.ssh/authorized_keys). -
Заполните файл
nodes_setup.yml(в папкеinventory_samplesдистрибутива "Спектра") — впишите путь (или пути) к каталогу резервных копий (см. п. 1)Путь к файлу
nodes_setup.ymlможет быть иным. -
Запустить плейбуки из папки дистрибутива "Спектра":
source /opt/skala-r/spectrum/python-modules/bin/activate ansible-playbook setup_storage_nodes.yml -i inventory_samples/nodes_setup.yml -k ansible-playbook setup_cluster_nodes.yml -i inventory_samples/nodes_setup.yml -kПри запуске плейбуков необходимо ввести пароль пользователя
rootдля доступа с использованием SSH на узлы хранения и узлы кластера. Пароль пользователяrootможет отличаться для узлов хранения и узлов кластера. -
Перейдите в веб-интерфейс "Спектра" и выполните операцию изменения дополнительных параметров кластера, добавив узлы СХД, которые были настроены вручную.