Важно: Данный раздел актуален для Платформы данных On-Premise.
Если у вас есть необходимость вместо компонента, входящего в плагин RT.DataLake «PostgreSQL» использовать внешнюю СУБД PostgreSQL развернутую самостоятельно без использования RT.ClusterManager, то на шаге выбора компонент кластера для установки необходимо выполнить следующие действия:
1) Компонент «PostgreSQL» исключается из списка устанавливаемых компонент.
2) После того как будут выполнены действия по подключению компонент к внешней СУБД PostgreSQL, которые описаны в разделах ниже, инсталлируйте программное обеспечение компонентов на хосты (см. п. 8.4.4 документа «RT.ClusterManager. Руководство администратора»).
Примечание: Если вы выполняли операции по изменению конфигурации в RT.ClusterManager после того как была выполнена операция по инсталляции компонента, то необходимо выполнить операцию “Переконфигурировать” (как указано в п. 8.4.5 документа «RT.ClusterManager. Руководство администратора»).
После добавления компонента «hive», после того как вы выполнили операцию по настройке компонента «hive» заключающуюся в добавлении хостов для сервисов, входящих в компонент (как указано в п. 8.4.2 документа «RT.ClusterManager. Руководство администратора») необходимо выполнить следующее:
а) На этапе выполнения операции «Настройка параметров компонентов» (см. п. 8.4.3 документа «RT.ClusterManager. Руководство администратора»), на форме Настройка параметров компонента (вкладка «Конфигурация»), в правом окне выберите вкладку «hive-site».
б) На вкладке «hive-site», для параметра «javax.jdo.option.ConnectionURL» введите следующее значение:
jdbc:postgresql://адрес_внешнего_постгреса:5432/hive
в) На вкладке «hive-site», для параметра «javax.jdo.option.ConnectionPassword» введите пароль для подключения к внешней СУБД PostgreSQL.
г) Нажмите кнопку “Сохранить” для сохранения внесенных изменений в конфигурационный файл.
После добавления компонента «ranger», после того как вы выполнили операцию по настройке компонента «ranger» заключающуюся в добавлении хостов для сервисов, входящих в компонент (как указано в п. 8.4.2 документа «RT.ClusterManager. Руководство администратора») необходимо выполнить следующее:
а) На этапе выполнения операции «Настройка параметров компонентов» (см. п. 8.4.3 документа «RT.ClusterManager. Руководство администратора»), на форме Настройка параметров компонента (вкладка «Конфигурация»), в правом окне выберите вкладку «range_admin_site».
б) На вкладке «range_admin_site», для параметра «ranger.jpa.jdbc.url» введите следующее значение:
jdbc:postgresql://адрес_внешнего_постгреса:5432/ranger
в) На вкладке «range_admin_site», для параметра «ranger.jpa.jdbc.user» введите имя пользователя jdbc для подключения к внешней СУБД PostgreSQL.
г) На вкладке «range_admin_site», для параметра «ranger.jpa.jdbc.password» введите пароль пользователя jdbc для подключения к внешней СУБД PostgreSQL.
д) Нажмите кнопку “Сохранить” для сохранения внесенных изменений в конфигурационный файл.
Примечание: Компонент Hue подразумевает возможность подключения к разным СУБД, таким как: PostgreSQL, MySQL, MariaDB, SQLite или Oracle.
Примечание: Пути до конфигурационных файлов (ниже по тексту) указаны по умолчанию для версии 15.4-1 PostgreSQL, в противном случае укажите свои пути.
Пользователь, пароль, имя БД, имя схемы – на Ваше усмотрение. Ниже будет приведён лишь упрощённый пример. Использовать такой пароль крайне нежелательно!
1. В консоли PostgreSQL подготовьте СУБД к работе с Hue:
а) Создайте пользователя с паролем:
CREATE USER hueuser WITH ENCRYPTED PASSWORD 'huehue';
б) Создайте БД:
CREATE DATABASE huedb;
в) Создайте схему:
CREATE SCHEMA hueschm;
г) Выдайте полные права пользователю на БД:
GRANT ALL PRIVILEGES ON DATABASE huedb TO hueuser;
д) Сделайте пользователя владельцем БД:
ALTER DATABASE huedb OWNER TO hueuser;
е) Сделайте пользователя владельцем схемы:
ALTER SCHEMA hueschm OWNER TO hueuser;
2. Настройте конфигурационные файлы PostgreSQL:
а) /var/lib/pgsql/15/data/postgresql.conf
В блоке CONNECTIONS AND AUTHENTICATION раскомментируйте и настройте параметр listen_addresses:
listen_addresses = '*' # what IP address(es) to listen on
б) /var/lib/pgsql/15/data/pg_hba.conf
Добавьте строку в конец файла:
host huedb hueuser 192.168.0.11/32 trust
в представленной строке столбы слева направо обозначают:
3. Перезапустите PostgreSQL.
4. Убедитесь в том, что межсетевой экран не заблокирует подключение к СУБД.
5. Убедитесь в сетевой связности между серверами, а также прямом и обратном резолвинге по DNS имени.
После добавления компонента «Hue», после того как вы выполнили операцию по настройке компонента «Hue» заключающуюся в добавлении хостов для сервисов, входящих в компонент (как указано в п. 8.4.2 документа «RT.ClusterManager. Руководство администратора») необходимо выполнить следующее:
а) На этапе выполнения операции «Настройка параметров компонентов» (см. п. 8.4.3 документа «RT.ClusterManager. Руководство администратора»), на форме Настройка параметров компонента (вкладка «Конфигурация»), в правом окне выберите вкладку «hue_ini».
б) На вкладке «hue_ini», для параметра «[[database]]» добавьте 6 строк аналогичных представленным на Рис.1 используя кнопку “Добавить строку”.
в) Нажмите кнопку “Сохранить” в нижней части формы.
а) Комментарии из оригинального файла hue.ini Apache Hue:
[[database]]
Database engine is typically one of:
postgresql_psycopg2, mysql, sqlite3 or oracle.
Note that for sqlite3, 'name', below is a path to the filename. For other backends, it is the database name
Note for Oracle, options={"threaded":true} must be set in order to avoid crashes.
Note for Oracle, you can use the Oracle Service Name by setting "host=" and "port=" and then "name=<host>:<port>/<service_name>".
Note for MariaDB use the 'mysql' engine.
engine=sqlite3
host=
port=
user=
password=
conn_max_age option to make database connection persistent value in seconds
https://docs.djangoproject.com/en/1.11/ref/databases/#persistent-connections
conn_max_age=0
Execute this script to produce the database password. This will be used when 'password' is not set.
password_script=/path/script
name=desktop/desktop.db
options={}
Database schema, to be used only when public schema is revoked in postgres
schema=public
Configuration options for specifying the Desktop session.
For more info, see https://docs.djangoproject.com/en/1.4/topics/http/sessions/
б) Обязательные параметры:
в) Дополнительные параметры:
Примечание: В случае подключения к Oracle во избежание сбоев необходимо установить значение options={"threaded":true}.
А также есть возможность оставить параметры "host" и "port" без значений ("host=", "port="), а в поле "name" указать имя сервера, порт и имя сервиса ("name=<host>:<port>/<service_name>").