Установка ADB to Kafka Connector
Для установки ADB to Kafka Connector выполните следующие шаги:
-
Убедитесь, что сервисы PXF и ADB to Kafka установлены в кластере ADB. Информацию о добавлении сервисов в кластер можно получить в статье Добавление сервисов.
-
Добавьте новый кастомный профиль с именем
kafka
в конфигурационный файл PXF /var/lib/pxf/conf/pxf-profiles.xml на хосте Master. Для редактирования файла можно воспользоваться командойvi
илиvim
:$ sudo vi /var/lib/pxf/conf/pxf-profiles.xml
Содержимое отредактированного файла может выглядеть следующим образом. В представленном примере другие профили в файле отсутствуют:
<profiles> <profile> <name>kafka</name> <description>A profile for export data into Apache Kafka</description> <plugins> <accessor>org.greenplum.pxf.plugins.kafka.KafkaAccessor</accessor> <resolver>org.greenplum.pxf.plugins.kafka.KafkaResolver</resolver> </plugins> <optionMappings> <!-- Kafka properties --> <mapping option="BOOTSTRAP_SERVERS" property="kafka.bootstrap.servers"/> <mapping option="SECURITY_PROTOCOL" property="kafka.property.security.protocol" /> <mapping option="SASL_MECHANISM" property="kafka.property.sasl.mechanism" /> <mapping option="TRUSTSTORE_LOCATION" property="kafka.property.ssl.truststore.location" /> <mapping option="TRUSTSTORE_PASSWORD" property="kafka.property.ssl.truststore.password" /> <mapping option="KEYSTORE_LOCATION" property="kafka.property.ssl.keystore.location" /> <mapping option="KEYSTORE_PASSWORD" property="kafka.property.ssl.keystore.password" /> <mapping option="KERBEROS_SERVICE_NAME" property="kafka.property.sasl.kerberos.service.name" /> <!-- Kafka JAAS properties --> <mapping option="KERBEROS_PRINCIPAL" property="kafka.jaas.property.sasl.kerberos.principal" /> <mapping option="KERBEROS_KEYTAB" property="kafka.jaas.property.sasl.kerberos.keytab" /> <mapping option="KERBEROS_USE_KEYTAB" property="kafka.jaas.property.sasl.kerberos.useKeyTab" /> <mapping option="KERBEROS_STORE_KEY" property="kafka.jaas.property.sasl.kerberos.storeKey" /> <mapping option="KERBEROS_USE_TICKET_CACHE" property="kafka.jaas.property.sasl.kerberos.useTicketCache" /> <mapping option="KERBEROS_DEBUG" property="kafka.jaas.property.sasl.kerberos.debug" /> <mapping option="SASL_USER" property="kafka.jaas.property.sasl.user" /> <mapping option="SASL_USER_PASSWORD" property="kafka.jaas.property.sasl.user.password" /> <mapping option="JAAS_CONFIG_FILE" property="kafka.jaas.property.config.file" /> <!-- General properties --> <mapping option="BATCH_SIZE" property="kafka.batch.size"/> <mapping option="KAFKA_ADMIN_CONNECTION_TIMEOUT" property="kafka.admin.close.connection.timeout"/> <mapping option="TOPIC_AUTO_CREATE_FLAG" property="kafka.topic.auto.create"/> <mapping option="AVRO_DEFAULT_DECIMAL_PRECISION" property="avro.decimal.default.precision" /> <mapping option="AVRO_DEFAULT_DECIMAL_SCALE" property="avro.decimal.default.scale" /> </optionMappings> </profile> </profiles>
ПРИМЕЧАНИЕДиректория, в которой расположены конфигурационные файлы PXF, определяется переменной окружения
$PXF_BASE
. Значение переменной по умолчанию — /var/lib/pxf. В общем случае путь может быть иным. -
Подключитесь к Master-серверу ADB под пользователем
gpadmin
, который создается по умолчанию. Все команды, приведенные на шагах ниже, запускаются исключительно на хосте Master:$ sudo su - gpadmin
-
Для синхронизации конфигурационных файлов PXF на всех хостах кластера ADB выполните команду:
$ pxf cluster sync
Результат:
Syncing PXF configuration files from master host to standby master host and 2 segment hosts... PXF configs synced successfully on 3 out of 3 hosts
-
Перезапустите сервис PXF:
$ pxf cluster restart
Результат:
Restarting PXF on master host, standby master host, and 2 segment hosts... PXF restarted successfully on 4 out of 4 hosts