С помощью этого руководства вы настроите подключение PXF (Platform Extension Framework) к инстансу Managed ArenadataDB.
Вы будете использовать следующие сервисы:
Object Storage — объектное S3-хранилище с бесплатным хранением файлов объемом до 15 ГБ.
Managed ArenadataDB — сервис, который позволяет разворачивать кластеры ArenadataDB и управлять ими без необходимости настраивать и обслуживать инфраструктуру.
Шаги:
Создайте публичный SNAT-шлюз в той зоне доступности, в которой собираетесь создавать инстанс.
В этой подсети создайте DNS-серверы с адресами:
8.8.8.8
8.8.4.4
77.88.8.8
Создайте группу безопасности для инстанса Managed ArenadataDB.
В группе безопасности инстанса Managed ArenadataDB создайте правила входящего трафика. Укажите следующие значения параметров:
Правило | Протокол | Порт | Тип источника | Источник |
|---|---|---|---|---|
Для подсети инстанса Managed ArenadataDB. | Любой | — | IP-адрес | Подсеть инстанса Managed ArenadataDB |
Для интерфейса ArenadataDB. | TCP | 5432 | IP-адрес | Подсеть инстанса Managed ArenadataDB |
Для интерфейсов ArenadataDB Control и Arenadata Cluster Manager. | TCP | 443 | IP-адрес | Подсеть инстанса Managed ArenadataDB |
В группе безопасности инстанса Managed ArenadataDB создайте правила исходящего трафика. Укажите следующие значения параметров:
Правило | Протокол | Тип адресата | Адресат |
|---|---|---|---|
Для трафика на любые адреса в интернете. В целях безопасности это правило можно отключить после завершения создания инстанса. | Любой | — | 0.0.0.0/0 |
Для трафика в пределах инстанса. | Любой | IP-адрес | Подсеть инстанса Managed ArenadataDB |
(Опционально) Создайте бакет Object Storage для хранения файлов резервного копирования. Бакет должен иметь глобальное название.
Установите клиент для подключения к базам данных по протоколу JDBC, например DBeaver.
На этом шаге вы загрузите файл с данными в Object Storage.
Создайте бакет Object Storage с названием adb-lab-files.
Подготовьте файл с данными adb-data.txt:
id, email1, xxx@example.com2, yyy@example.com3, zzz@example.com
Загрузите файл в бакет adb-lab-files.
На этом шаге вы создадите инстанс Managed ArenadataDB.
Перейдите в раздел Evolution и выберите сервис Managed ArenadataDB.
В блоке Общие параметры заполните поля:
Название — adb-lab.
Тип лицензии — Test.
Версия ArenadataDB — 6.27.1.59.
Объем исходных данных, ТБ — 1 ТБ.
Нажмите Продолжить.
В блоке Сетевые настройки выберите:
VPC — виртуальную сеть.
Зона доступности — зону доступности.
sNAT-шлюз — созданный шлюз.
Подсеть — подсеть c созданными DNS-серверами.
Группа безопасности — созданную группу безопасности с разрешающими правилами.
Нажмите Продолжить.
В блоке Логирование выберите:
Лог-группа — группу логов с созданными ранее DNS-серверами.
Сервисный аккаунт — сервисный аккаунт с ролью logaas.writer.
Нажмите Создать.
Инстанс Managed ArenadataDB отобразится на странице сервиса. Создание может занять от 40 минут.
На этом шаге вы подготовите ключи доступа для дальнейшей настройки подключения.
Перейдите в раздел Пользователи на вкладку Сервисные аккаунты.
Нажмите на название аккаунта, у которого есть роль с доступом к сервису Object Storage. Если такого аккаунта нет, создайте его.
В блоке Учетные данные доступа откройте вкладку Ключи доступа.
Нажмите Создать ключ.
Введите краткое описание ключа.
Задайте время жизни ключа или выберите вариант Бессрочно. Бессрочные ключи менее безопасны. Рекомендуем выбирать ограничение по периоду действия или обновлять ключи самостоятельно не менее одного раза в год.
Нажмите Создать. Сервис сгенерирует Key ID (логин) и Key Secret (пароль). Скопируйте и сохраните эти значения. После того как вы закроете это окно, посмотреть их будет нельзя.
На этом шаге вы подготовите данные для аутентификации.
Для продолжения работы убедитесь, что статус инстанса Managed ArenadataDB изменился на «Готов».
Откройте карточку инстанса Managed ArenadataDB.
На вкладке Доступы в блоке Доступ к ADB нажмите Получить логин и пароль.
Cохраните логин и пароль.
Логин и пароль отображаются один раз.
В целях безопасности рекомендуется изменить пароль.
Нажмите Принято.
На этом шаге вы настроите подключение PXF к инстансу Managed ArenadataDB.
Откройте карточку инстанса Managed ArenadataDB.
На панели слева выберите Подключения PXF.
Нажмите Добавить подключение.
Введите название подключения, например adb-lab-connection.
В поле Выбор коннектора выберите S3.
В поле Регион введите ru-central-1.
В поле Key ID введите идентификатор ключа доступа к бакету S3 в формате <tenant_id>:<key_id>, где:
<tenant_id> — идентификатор тенанта, указанный в разделе Хранение данных → Object Storage → Параметры работы с API.
<key_id> — Key ID (логин), сгенерированный при создании ключа доступа для сервисного аккаунта.
В поле Key Secret введите Key Secret (пароль), сгенерированный при создании ключа доступа для сервисного аккаунта.
В поле Эндпоинт введите s3.cloud.ru.
Включите опцию Быстрая выгрузка.
Нажмите Добавить.
На этом шаге вы установите внешнее подключение с помощью JDBC-клиента.
Откройте карточку инстанса Managed ArenadataDB.
На панели слева выберите Доступы.
Запустите DBeaver.
В панели сверху нажмите База данных → Новое соединение.
В списке соединений выберите Greenplum.
На вкладке Главное введите:
Хост — публичный хост из карточки инстанса Managed ArenadataDB;
База данных — adb-lab;
Пользователь — сохраненный ранее логин;
Пароль — сохраненный ранее пароль.
Нажмите Готово.
Выполните запрос:
CREATE EXTERNAL TABLE pxf_ext_tbl(name text, orders int)LOCATION ('pxf://adb-lab-files/adb-data.txt>?PROFILE=s3:text&SERVER=adb-lab-connection')FORMAT 'TEXT' (delimiter=',');
При успешной установке подключения в интерфейсе DBeaver появится таблица с данными, ранее загруженными в бакет Object Storage.
Вы научились устанавливать подключение PXF к инстансам Managed ArenadataDB.