Создание кластера ADB

После выполнения предварительных действий и загрузки бандла в кластер-менеджере ADCM содержится следующий список объектов (Рис.11):

  • Прототип кластера мониторинга и созданный на его основе экземпляр (программа мониторинга развернута на хосте, ADCM содержит записи о его результатах и настройках);
  • Прототип кластера adb для создания экземпляров;
  • Предварительно сгенерированные четыре хоста на основе бандла Datafort. Подразумевается, что хосты физически существуют в облаке Datafort, а в базе данных ADCM хранятся записи о них и их учетных данных – ssh-ключах или паролях.
../../../../_images/img_46.png

Рис. 11. Список объектов в ADCM

Данным объектам доступен следующий функционал:

Создание экземпляра кластера

При создании кластера в веб-интерфейсе ADCM генерируется новый экземпляр кластера adb, что означает только добавление данных о нем в базу данных ADCM – на этом этапе не производится установка adb на хосты.

Для создания экземпляра кластера, необходимо:

  1. Открыть в ADCM вкладку “CLUSTERS” (Рис.12).
../../../../_images/img_510.png

Рис. 12. Вкладка “CLUSTERS”

  1. Нажать “Add cluster” и в открывшейся форме создать экземпляр кластера из прототипа adb, полученного из бандла (Рис.13).
../../../../_images/img_65.png

Рис. 13. Создание экземпляра кластера

  1. В результате выполненных действий факт создания экземпляра кластера отображается в базе данных ADCM на вкладке “CLUSTERS” (Рис.14).
../../../../_images/img_72.png

Рис. 14. Результат успешного создания экземпляра кластера

Конфигурация кластера

Для перехода к настройкам экземпляра кластера adb необходимо нажать кнопку с пиктограммой шестеренки в соответствующей строке вкладки “CLUSTERS” (Рис.14) и перейти в раздел меню “Configuration”. При этом открывается окно конфигурации выбранного экземпляра (Рис.15).

../../../../_images/img_81.png

Рис. 15. Окно конфигурации кластера

В блоке настроек “repos” указываются требуемые для установки adb yum-репозитории. Для каждого репозитория можно установить или сбросить флажок. На серверах кластера будут зарегистрированы только те репозитории, которые отмечены флажком. При этом в каждом из параметров можно изменить заданный по умолчанию url на необходимый:

  • Arenadata;
  • Monitoring;
  • Centos 7 base;
  • Centos 7 updates;
  • Centos 7 extra;
  • EPEL repo.

Например, при установке в окружении без доступа к сети Интернет (с ограниченным доступом) в эти поля необходимо указать url локальных репозиториев (или репозиториев, к которым открыт доступ для Вашей сети). Для репозиториев Arenadata может быть указан url предварительно развернутого кластера Arenadata Enterprise Tools. Альтернативно, конфигурация кластера Arenadata Enterprise Tools может быть импортирована и применена автоматически. Для этого необходимо на странице со списком кластеров для созданного кластера ADB нажать на пиктограмму в столбце Import и установить флажок в раскрывшемся списке для сервиса http кластера Enterprise Tools (Рис.16).

../../../../_images/img_671.png

Рис. 16. Импорт конфигурации локального репозитория из кластера Enterprise Tools

Important

Arenadata Enterprise Tools предоставляет локальную копию только репозиториев Arenadata Database и Arenadata Monitoring. Доступ к репозиториям CentOS должен быть организован отдельно.

Добавление сервисов

Кластер ADB содержит следующие сервисы:

  • ADB – MPP база данных;
  • Chrony – сервис времени;
  • Monitoring Clients – агенты, отсылающие информацию о хосте и ADB в мониторинг;
  • PXF – сервис взаимодействия ADB с внешними источниками данных;

Не все сервисы являются обязательными для установки. Например, если на хостах уже настроена служба времени, то нет необходимости устанавливать Chrony. Или в случае когда применяется сервис мониторинга (не на базе Graphite), незачем ставить агенты из Monitoring Clients. Однако, наличие сервиса ADB является обязательным.

Important

На текущий момент невозможно удалить из кластера уже добавленный сервис

В настоящем примере в кластер будут добавлены все сервисы.

  1. Открыть вкладку “SERVICES” кластера adb (Рис.17).
../../../../_images/img_101.png

Рис. 17. Вкладка “SERVICES”

  1. Нажать “Add services” и в открывшейся форме добавить необходимые сервисы (Рис.18).
../../../../_images/img_111.png

Рис. 18. Добавление сервисов

  1. В результате выполненных действий факт добавления сервисов отображается в базе данных ADCM на вкладке “SERVICES” (Рис.19).
../../../../_images/img_121.png

Рис. 19. Результат успешного добавления сервисов

Настройка добавленных сервисов:

Настройка сервиса ADB

Для перехода к настройкам сервиса ADB необходимо нажать кнопку с пиктограммой шестеренки в соответствующей строке вкладки “SERVICES” и перейти в раздел меню “Configuration”. При этом открывается окно конфигурации сервиса ADB (Рис.20).

../../../../_images/img_131.png

Рис. 20. Окно конфигурации сервиса ADB

В блоке настроек “Main” задаются основные параметры:

  • Name of default database – имя по умолчанию, база данных обслуживается скриптами в crontab (сборка мусора, защита от зацикливания счетчика транзакций и т.д.);
  • Use segment mirroring – включение синхронной репликации основных сегментов с данными (в кластер добавляются зеркальные сегменты). В результате зеркальные сегменты обеспечивают отказоустойчивость, но требуют в два раза больше места для хранения данных. Если в кластере достаточно хостов, то используется политика зеркалирования spread, в противном случае – group.
  • ADB MADlib Extension – установка MADlib и добавление функций расширения в базу данных, указанную в параметре Name of default database
  • ADB PostGIS Extension – установка PostGIS и добавление функций расширения в базу данных, указанную в параметре Name of default database. Для установки необходимо, чтобы на серверах кластера был организован доступ к репозиторию EPEL. Для этого необходимо перед установкой отметить флажком соответствующий репозиторий в конфигурации кластера или убедиться, что настройка репозиториев уже проведена на серверах собственными силами.

В блоке настроек “Advanced” задаются следующие расширенные параметры:

  • Number of segments per host – количество основных сегментов на хосте сегмента. В случае если параметр не указан, используется значение, равное (количество ядер ЦПУ)/2. При задании количества основных сегментов вручную следует учитывать, что, чем больше параллельных SQL-запросов планируется выполнять одновременно, тем меньше должно быть основных сегментов на хосте;
  • Data directory template – префикс имени каталога для хранения данных на хостах сегментов и мастера (хосты мастера и резервного мастера). В случае отсутствия, каталог создается автоматически. Имя каталога задается по следующему шаблону: <префикс><цифра>. Если монтирование блочных устройств не производится, в корневой файловой системе создается (или используется существующий) каталог /<префикс>1. Название каталога для монтирования блочного устройства хранения на мастере и резервном мастере - /<префикс>1. Цифра в названии каталогов для монтируемых блочных устройств хранения на хостах сегментов определяется порядком их следования в массиве, указанном в параметре Segment server storage devices. Например, для массива [“sdb”, “sdc”] устанавливается следующее соответствие: sdb - каталог /<префикс>1, sbc - каталог /<префикс>2;
  • Mount segment storage devices for data – монтирование блочных устройств хранения к каталогам хранения данных на хостах сегментов. В случае если блочные устройства отсутствуют, монтирование не осуществляется;
  • Segment server storage devices – массив блочных устройств в формате массива JSON на хостах сегментов, например, [“sdb”, “sdc”], при этом префикс “/dev” не указывается. Должен быть одинаковым на всех хостах сегментов кластера (можно воспользоваться lvm);
  • Use nobarrier (segment hosts) – не рекомендуется использовать барьеры в XFS на хостах сегментов;
  • Mount master storage device for data – монтирование блочных устройств хранения к каталогам хранения данных на хостах мастера (хосты мастера и резервного мастера). В случае если блочные устройства отсутствуют, монтирование не осуществляется;
  • Master server storage device – блочное устройство на хосте мастера, например, “sdb”, при этом префикс “/dev” не указывается. Должен быть одинаковым на всех хостах мастера в кластере (мастере и резервном мастере);
  • Use nobarrier (master hosts) – не рекомендуется использовать барьеры в XFS на хостах мастера;
  • Arenadata configs directory name – название каталога с конфигурационными файлами Arenadata. Располагается в домашнем каталоге системного пользователя;
  • Sysctl parameters – необходимые для ADB параметры ядра linux;
  • System user GID – идентификатор группы, к которой принадлежит пользователь. Системный пользователь должен создаваться с одинаковыми UID и GID на всех серверах с целью сокращения вероятности возникновения проблем доступа к общим сетевым хранилищам с файлами резервных копий ADB;
  • System user name – имя системного пользователя для ADB;
  • System user UID – идентификатор пользователя. Системный пользователь должен создаваться с одинаковыми UID и GID на всех серверах с целью сокращения вероятности возникновения проблем доступа к общим сетевым хранилищам с файлами резервных копий ADB;
  • Disable firewall – отключение firewalld на хостах кластера.

Настройка сервиса Chrony

Для перехода к настройкам сервиса Chrony необходимо нажать кнопку с пиктограммой шестеренки в соответствующей строке вкладки “SERVICES” и перейти в раздел меню “Configuration”. При этом открывается окно конфигурации сервиса Chrony (Рис.21).

../../../../_images/img_141.png

Рис. 21. Окно конфигурации сервиса Chrony

Параметр NTP server – это адрес действующего NTP-сервера. Когда параметр задан, мастер берет время с NTP-сервера, резервный мастер – с мастера или NTP-сервера, а сегменты – с мастера или резервного мастера. В случае если параметр не задан или NTP-сервер недоступен, то мастер использует свои локальные часы, резервный мастер – часы мастера или свои локальные, а сегменты берут время с мастера или резервного мастера.

Настройка сервиса Monitoring Clients

Для перехода к настройкам сервиса Monitoring Clients необходимо нажать кнопку с пиктограммой шестеренки в соответствующей строке вкладки “SERVICES” и перейти в раздел меню “Configuration”. При этом открывается окно конфигурации сервиса Monitoring Clients (Рис.22).

../../../../_images/img_471.png

Рис. 22. Окно конфигурации сервиса Monitoring Clients

Параметр Protocol – транспортный протокол для отправки метрик на кластер мониторинга. Протокол UDP поддерживается кластером мониторинга начиная с версии 2.8.

Настройка сервиса PXF

Доступно с версии 5.19.0_arenadata4_b2

Для перехода к настройкам сервиса PXF необходимо нажать кнопку с пиктограммой шестеренки в соответствующей строке вкладки “SERVICES” и перейти в раздел меню “Configuration”. При этом открывается окно конфигурации сервиса PXF (Рис.23).

../../../../_images/img_691.png

Рис. 23. Окно конфигурации сервиса PXF

Блок настроек Kerberos:

  • Use Kerberos auth – использовать kerberos-аутентификацию для всех кластеров Hadoop;
  • Kerberos principal – принципал kerberos, который будет использоваться для аутентификации. Подстрока _HOST будет автоматически заменена на полное имя хоста;
  • Path to keytab – путь до keytab-файла на хостах, на которые установлен компонент pxf;

Параметр Use user impersonation – опеределяет, от чьего имени выполняются запросы на внешнем кластере. Если настройка выключена - от имени того пользователя, от которого производится подключение к внешнему кластеру. Если настройка включена - от имени того пользователя, который подключился к кластеру adb (например, gpadmin). Для использования имперсонации также необходима соответствующая настройка внешнего кластера - пользователю, который подключается к кластеру, должно быть разрешено представлять других пользователей (любых или перечень имен).

Добавление хостов

По результатам предварительных действий в ADCM создано четыре хоста в облаке Datafort (их адреса и учетные данные сохранены в их конфигурациях). На данном этапе их следует добавить в кластер adb:

  1. В меню кластера adb открыть вкладку “Hosts” (Рис.24).
../../../../_images/img_151.png

Рис. 24. Вкладка “Hosts” кластера adb

  1. Нажать “Add hosts” и в открывшейся форме выбрать необходимые хосты (Рис.25).
../../../../_images/img_161.png

Рис. 25. Выбор хостов

  1. В результате выполненных действий факт добавления хостов отображается в кластере adb в списке вкладки “Hosts” (Рис.26).
../../../../_images/img_171.png

Рис. 26. Результат успешного добавления хостов

Размещение компонентов сервисов на хостах

Каждый сервис состоит из компонентов, которые должны быть размещены на хостах в кластере. Для этого необходимо на вкладке кластера “Hosts - Components” выбрать компонент посредством нажатия на него мышкой в колонке “Components” и определить для него необходимый хост в колонке “Hosts” (Рис.27).

../../../../_images/img_181.png

Рис. 27. Размещение компонентов сервисов на хостах

Поскольку сервисы ADB, Chrony, Monitoring Clients и PXF добавлены в кластер ADB, но еще не размещены на хостах, то изначально ни на одном из хостов нет компонентов:

  1. Компоненты сервиса ADB (Рис.28):
  • ADB Master – необходимо добавить строго на один хост мастера (dfmdw);
  • ADB Segment – необходимо добавить на один или более хостов сегментов (dfsdw1, dfsdw2);
  • ADB Standby – опционально может быть добавлен на один хост резервного мастера (dfsmdw).
../../../../_images/img_191.png

Рис. 28. Компоненты сервиса ADB

  1. Компоненты сервиса Chrony (Рис.29):
  • NTP Master – необходимо добавить строго на один хост мастера (dfmdw);
  • NTP Slave – опционально может быть добавлен на любое количество хостов сегментов (dfsdw1, dfsdw2);
  • NTP Secondary – опционально может быть добавлен на любое количество хостов резервного мастера (dfsmdw).
../../../../_images/img_201.png

Рис. 29. Компоненты сервиса Chrony

  1. Компоненты сервиса Monitoring Clients:
  • Monitoring Agents – опционально может быть добавлен на любое количество хостов (dfmdw, dfsmdw, dfsdw1, dfsdw2). Собирает метрики с хостов (рекомендуется разместить агента мониторинга на всех хостах кластера).
../../../../_images/img_211.png

Рис. 30. Компоненты сервиса Monitoring Clients

  1. Компоненты сервиса PXF:
  • PXF – необходимо добавить на один или более хостов сегментов (dfsdw1, dfsdw2). Опционально может быть добавлен на хост мастера (dfmdw).
../../../../_images/img_481.png

Рис. 31. Компоненты сервиса PXF

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

Существует два варианта установки сервисов в кластере adb:

Предварительная проверка

В результате выполнения всех предшествующих установочных шагов становится доступна кнопка “Precheck” (предварительная проверка). В ходе этого действия выполняются проверки доступности необходимых yum-репозиториев и отсутствия дублирования адресов хостов в кластере.

Для выполнения предварительной проверки необходимо:

  1. Перейти на любую вкладку кластера adb (в примере “Hosts - Components”) и нажать кнопку “Precheck” на верхней панели (Рис.32).
../../../../_images/img_481.png

Рис. 32. Запуск предварительной проверки

  1. Подтвердить действие в открывшемся диалоговом окне (Рис.33).
../../../../_images/img_531.png

Рис. 33. Запрос на подтверждение действия

  1. Открыть вкладку “JOBS” (Рис.34).
../../../../_images/img_541.png

Рис. 34. Вкладка “JOBS”

  1. Выбрать последнее действие над кластером adb и в открывшемся окне проверить результаты (Рис.35).
../../../../_images/img_551.png

Рис. 35. Результаты предварительной проверки

Установка всех сервисов через кластер adb

  • Импортировать конфигурации мониторинга в кластер adb, открыв в ADCM вкладку “CLUSTERS”, выбрав опцию Import и отметив импортируемые настройки сервисов с помощью простановки флажков в открывшейся форме (Рис.36).
../../../../_images/img_351.png

Рис. 36. Импорт конфигурации мониторинга

  • Перейти на любую вкладку кластера adb (в примере “Hosts - Components”). На верхней панели доступна кнопка “Install”, устанавливающая все добавленные сервисы в кластере.
../../../../_images/img_481.png

Рис. 37. Кнопка “Install” на вкладке “Hosts - Components” кластера adb

  • Нажать кнопку “Install” на открывшейся форме. В зависимости от желаемого поведения установить флаг перезагрузки хостов кластера после завершения установки (если флаг не установлен, перезагрузку необходимо произвести вручную, чтобы применились системные параметры).
../../../../_images/img_451.png

Рис. 38. Подтверждение установки всех сервисов в кластере

  • По результатам инсталляции все сервисы изменили свой статус с created на новый:
    • ADB - initialized
    • Chrony - synced
    • Monitoring Clients - monitored
    • PXF - installed
../../../../_images/img_511.png

Рис. 39. Статус сервисов

Reinstall

В случае если при установке одного из сервисов произошел сбой (например, предварительно в кластер adb не были импортироватированы конфигурации мониторинга, и действие “Install” было прервано на этапе установки сервиса Monitoring Clients), существует возможность успешного завершения всех невыполненных установочных шагов. Для этого необходимо нажать кнопку “Reinstall” на верхней панели.

Выборочная установка сервисов

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

Для выборочной установки сервиса ADB необходимо выполнить ряд действий на вкладке кластера “Services”:

  1. Install ADB – производится настройка хостов, установка необходимых пакетов и перезагрузка хостов для применения конфигурации sysctl:
  • В поле “Actions” нажать на пиктограмму в строке сервиса ADB и выбрать действие Install ADB (Рис.40).
../../../../_images/img_231.png

Рис. 40. Install ADB

  • Установить булевый флаг для перезагрузки хостов после окончания установки (Рис.41). В ином случае перезагрузку необходимо произвести вручную.
../../../../_images/img_241.png

Рис. 41. Action parameters

  • По результатам инсталляции сервис ADB меняет состояние с created – создан, на installed – установлен (Рис.42).
../../../../_images/img_251.png

Рис. 42. Статус сервиса

  1. Init cluster – создание кластера ADB на подготовленных хостах:
  • В поле “Actions” нажать на пиктограмму в строке сервиса ADB и выбрать действие Init cluster (Рис.43).
../../../../_images/img_261.png

Рис. 43. Init cluster

  • Подтвердить действие в открывшемся диалоговом окне (Рис.44).
../../../../_images/img_271.png

Рис. 44. Запрос на подтверждение действия

  • По результатам создания кластера сервис ADB меняет состояние с installed – установлен, на initialized – инициализирован. На данном этапе становятся доступны кнопки “Check” (проверка работоспособности) и “Stop” (остановка кластера) (Рис.45).
../../../../_images/img_281.png

Рис. 45. Кластер инициализирован, доступны кнопки “Check”, “Reinstall”, “Stop”

  1. Create database – создание базы данных с именем, указанным в параметре Name of defult database в настройках сервиса ADB, и установка скриптов в crontab:
  • В поле “Actions” нажать на пиктограмму в строке сервиса ADB и выбрать действие Create database (Рис.46).
../../../../_images/img_291.png

Рис. 46. Create database

  • Подтвердить действие в открывшемся диалоговом окне (Рис.47).
../../../../_images/img_301.png

Рис. 47. Запрос на подтверждение действия

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

Сервис Chrony является опциональным и может запускаться многократно с целью изменения его настроек. Для этого необходимо выполнить ряд действий на вкладке кластера “Services”:

  • В строке сервиса Chrony в поле “Actions” нажать на пиктограмму и выбрать действие Install (Рис.48).
../../../../_images/img_311.png

Рис. 48. Install Chrony

  • Подтвердить действие в открывшемся диалоговом окне (Рис.49).
../../../../_images/img_321.png

Рис. 49. Запрос на подтверждение действия

  • По результатам инсталляции сервис Chrony меняет состояние с created – создан, на synced – синхронизирован (Рис.50).
../../../../_images/img_331.png

Рис. 50. Статус сервиса

Установка сервиса Monitoring Clients

Сервис Monitoring Clients является опциональным и требует импорта конфигурационных параметров кластера мониторинга (адреса, логин/пароль) в кластер adb:

  1. Для импорта конфигурации мониторинга в кластер adb необходимо открыть в ADCM вкладку “CLUSTERS”, выбрать опцию Import и отметить импортируемые настройки сервисов с помощью простановки флажков в открывшейся форме (Рис.36).
  2. Установка клиентов мониторинга в кластер adb:
  • В кластере adb на вкладке “Services” в поле “Actions” нажать на пиктограмму и выбрать действие Install для службы Monitoring Clients (Рис.51).
../../../../_images/img_361.png

Рис. 51. Установка клиентов мониторинга

  • Подтвердить действие в открывшемся диалоговом окне (Рис.52).
../../../../_images/img_371.png

Рис. 52. Запрос на подтверждение действия

  • По результатам инсталляции служба Monitoring Clients меняет состояние с created – создана, на monitored – мониторится (Рис.53).
../../../../_images/img_381.png

Рис. 53. Статус сервиса

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

  • В строке сервиса PXF в поле “Actions” нажать на пиктограмму и выбрать действие Install (Рис.54).
../../../../_images/img_491.png

Рис. 54. Install PXF

  • Подтвердить действие в открывшемся диалоговом окне (Рис.55).
../../../../_images/img_501.png

Рис. 55. Запрос на подтверждение действия

  • По результатам инсталляции сервис PXF меняет состояние с created – создан, на installed – установлен (Рис.56).
../../../../_images/img_511.png

Рис. 56. Статус сервиса