Работа с Kafka Connect в ADS Control

Обзор страницы Kafka Connects

Страница Clusters → <cluster name> → Kafka Connects в web-интерфейсе ADS Control предназначена для отображения информации о доступных экземплярах сервиса Kafka Connect в кластере ADS. Страница Kafka Connects становится доступна после выбора кластера в секции управления кластерами и перехода на нужную вкладку на странице General.

Страница Kafka Connects
Страница Kafka Connects
Страница Kafka Connects
Страница Kafka Connects

Страница Kafka Connects содержит таблицу c информацией о экземплярах сервиса Kafka Connect. Описание столбцов таблицы приведено ниже.

Поле Описание

Kafka Connects

Наименование экземпляра сервиса Kafka Connect. Кликнув на наименование, можно перейти на страницу обзора экземпляра Kafka Connect

Running

Количество запущенных коннекторов

Paused

Количество приостановленных коннекторов

Stopped

Количество остановленных коннекторов

Degraded

Количество коннекторов в статусе degraded

Failed

Количество коннекторов с ошибкой

Total

Общее количество коннекторов

Обзор экземпляра Kafka Connect

После нажатия на имя открывается страница обзора экземпляра Kafka Connect Clusters → <cluster name> → Kafka connects → <cluster name> connector, предоставляющая информацию о созданных экземплярах коннектора Kafka Connect.

Страница экземпляра Kafka Connect
Страница экземпляра Kafka Connect
Страница экземпляра Kafka Connect
Страница экземпляра Kafka Connect

На странице обзора сервиса Kafka Connects содержатся:

  • Секция поиска и фильтрации:

    • поле для поиска коннектора по наименованию;

    • поле Type для фильтрации коннекторов по типу: Source или Sink;

    • поле Status для фильтрации коннекторов по статусу:

      • Running

      • Stopped

      • Paused

      • Unassigned

      • Failed

      • Degraded

    • кнопка restart dark restart light для обнуления результатов поиска и фильтрации;

    • кнопка Create Connector для создания новых коннекторов.

  • Таблица c информацией о созданных коннекторах Kafka Connect. Описание столбцов таблицы приведено ниже.

Поле Описание

Name

Имя коннектора. Кликнув на имя, можно перейти на страницу обзора экземпляра коннектора

Type

Тип коннектора

Plugin

Наименование плагина коннектора

Topics

Топики, связанные с работой коннектора

Broker

Брокер, на котором запущен коннектор

Tasks

Количество задач коннектора

Actions

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

  • restart dark restart light — перезапуск коннектора.

  • pause dark pause light — приостановка работы коннектора. Когда коннектор на паузе, его задачи продолжают существовать в кластере.

  • stop dark stop light — остановка работы коннектора.

  • resume dark resume light — возобновление работы коннектора.

  • delete dark delete light — удаление коннектора.

Все действия требуют подтверждения

Состояние Stopped

Начиная с версии 2.6.0.b1 в ADS Control для коннекторов добавлено новое состояние — Stopped, которое является начальным состоянием по умолчанию при создании. Начальное состояние коннектора может быть изменено при помощи параметра initialState в конфигурации при создании коннектора.

Когда остановленный коннектор возобновляется (Running) или или приостанавливается (Paused), коннектор запускается на назначенном рабочем узле и создает набор задач в соответствии с конфигурацией.

После перевода существующего коннектора в состояние Stopped:

  • Конфигурация коннектора остается без изменений.

  • Коннектор отображается в ADS Control со состоянием Stopped, даже если коннектор находился в состоянии Failed до запроса на остановку или если он завершил работу с ошибкой в процессе остановки.

  • Все задачи коннектора полностью завершаются. Если используется распределенный режим, в топик конфигурации коннектора публикуется набор пустых задач.

  • При работе в распределенном режиме в результате публикации пустого набора задач в топик конфигурации произойдет перераспределение, и задачи по всему кластеру не будут выделяться для коннектора. В результате этого перераспределения любая информация о коннекторе, предоставленная через REST API, будет отображать его с пустым набором задач.

  • Все выделенные для коннектора ресурсы в Kafka Connect и Kafka будут освобождены.

После изменения статуса на Stopped для коннектора доступно редактирование или сброс смещений на вкладке Offset management.

Создание коннектора

Для создания коннектора выполните:

  1. Нажмите кнопку Create Connector на странице обзора экземпляра Kafka Connect. После нажатия кнопки Create Connector открывается окно выбора плагина коннектора Clusters → <cluster name> → Kafka Connects → <cluster name> connector → Kafka connector plugins.

    Окно выбора плагина коннектора
    Окно выбора плагина коннектора
    Окно выбора плагина коннектора
    Окно выбора плагина коннектора
  2. Выберите необходимый плагин коннектора.

    Доступны к использованию следующие плагины:

    • MirrorCheckpointConnector, MirrorHeartbeatConnector, MirrorSourceConnector — коннекторы, предназаченные для репликации топиков с использованием механизма Mirror Maker 2. Подробнее см. в статье Mirror Maker 2 в ADS Control.

    • SqlServerConnector — коннектор, предназначенный для сбора измененных данных в базах данных SQL Server и передачи их в Kafka. Подробнее см. в статье Коннектор Debezium для MS SQL Server.

    • PostgresConnector — коннектор, предназначенный для сбора измененных данных в базах данных PostgreSQL Server и передачи их в Kafka. Подробнее см. в статье Коннектор Debezium для PostgreSQL Server.

    • IcebergSinkConnector — коннектор для записи данных из Kafka в таблицы Iceberg. Подробнее см. в статье Коннектор Iceberg.

  3. Далее заполните конфигурацию коннектора в открывшемся окне. Вы можете использовать заполнение конфигурации в виде файла JSON. Для этого активируйте соответствующий переключатель.

    Конфигурация коннектора
    Конфигурация коннектора
    Конфигурация коннектора
    Конфигурация коннектора
    JSON-файл конфигурации коннектора
    JSON-файл конфигурации коннектора
    JSON-файл конфигурации коннектора
    JSON-файл конфигурации коннектора
  4. После заполнения кликните Save и получите сообщение об успешном создании коннектора.

    Сообщение об успешном создании коннектора
    Сообщение об успешном создании коннектора
    Сообщение об успешном создании коннектора
    Сообщение об успешном создании коннектора
  5. Убедитесь, что открылась страница созданного коннектора с отображением задач.

    Созданный коннектор
    Созданный коннектор
    Созданный коннектор
    Созданный коннектор
  6. Проверьте, что на странице Clusters → <cluster name> → Kafka connects → <cluster name> connector отображаются созданные коннекторы в рабочем статусе. Статус определяется в зависимости от индикатора перед названием коннектора. Описание индикаторов приведено ниже.

    Индикатор Статус Описание

    green

    Running

    Коннектор/задача запущены

    yellow

    Paused

    Коннектор/задача административно приостановлены

    Stopped

    Коннектор/задача остановлены

    red

    Failed

    Ошибка в работе коннектора/задачи

    Degraded

    Коннектор/задача работают с пониженной производительностью

    unassigned

    Unassigned

    Коннектор/задача еще не назначены процессу

Обзор коннектора

После нажатия на имя коннектора в таблице c информацией о созданных коннекторах открывается страница обзора экземпляра коннектора.

В верхней части страницы находится секция, отображающая основные параметры коннектора, а также иконки управления коннектором в соответствии с таблицей, приведенной выше.

Основные параметры коннектора
Основные параметры коннектора
Основные параметры коннектора
Основные параметры коннектора

В нижней части отображаются вкладки:

Вкладка Overview

Вкладка Clusters → <cluster name> → Kafka connects → <cluster name> connector → <connector name> → Overview открывается по умолчанию при переходе на страницу обзора коннектора. Вкладка предоставляет информацию о задачах коннектора и их статусе.

Вкладка Overview
Вкладка Overview
Вкладка Overview
Вкладка Overview

На вкладке Overview находятся:

  • Секция поиска и фильтрации:

    • поле для поиска задачи по ID;

    • поле Status для фильтрации задач по статусу:

      • Running

      • Failed

      • Paused

      • Stopped

      • Unassigned

      • Degraded

    • кнопка restart dark restart light для обнуления результатов поиска.

  • Таблица c информацией о каждой задаче. Описание столбцов таблицы приведено ниже.

Поле Описание

Task ID

ID задачи

Status

Статус задачи. При статусе Failed нажатие на иконку concern default открывает описание возникшей ошибки

Actions

В столбце размещена иконка restart dark restart light для перезапуска задачи

Вкладка Configuration

Вкладка Clusters → <cluster name> → Kafka connects → <cluster name> connector → <connector name> → Configuration открывается со страницы обзора коннектора. Вкладка позволяет просматривать и редактировать параметры коннектора.

Вкладка Configuration
Вкладка Configuration
Вкладка Configuration
Страница Configuration

На вкладке Configuration находятся:

  • Поле для поиска параметра по наименованию.

  • Переключатель toggle off dark toggle off light Expand content, открывающий скрытое содержимое.

  • Переключатель toggle off dark toggle off light JSON view, открывающий содержимое в JSON-формате.

  • Кнопка Edit для запуска режима редактирования параметров коннектора. После редактирования параметров нажмите Save для сохранения изменений или Cancel для отмены изменений.

  • Параметры коннектора, разделенные на выпадающие списки. Набор конфигурационных параметров коннектора зависит от плагина коннектора и включает в себя, как правило, основные параметры source-коннектора или sink-коннектора, а также параметры, определенные производителем плагина. Некоторые параметры описаны в статьях, посвященных использованию коннекторов в ADS Control.

Вкладка Offset management

Вкладка Clusters → <cluster name> → Kafka connects → <cluster name> connector → <connector name> → Offset management открывается со страницы обзора экземпляра коннектора. Вкладка позволяет получать и изменять смещения для коннектора.

Вкладка Offset management
Вкладка Offset management
Вкладка Offset management
Страница Offset management

На вкладке Offset management находятся:

  • Кнопка Edit для запуска режима редактирования смещений коннектора. После редактирования смещений нажмите Save для сохранения изменений или Cancel для отмены изменений. Кнопка доступна только если коннектор находится в статусе Stopped.

  • Актуальные смещения коннектора в виде JSON-файла, который является ответом на запрос смещений GET /connectors/<connector_name>/offsets.

Ниже предоставлен пример JSON-файла для разных экземпляров коннектора.

Смещения для IcebergSinkConnector
{
  "offsets": [
    {
      "partition": {
        "kafka_partition": 0,
        "kafka_topic": "topic-test"
      },
      "offset": {
        "kafka_offset": 4
      }
    }
  ]
}
Смещения для PostgresConnector
{
  "offsets": [
    {
      "partition": {
        "server": "postgres"
      },
      "offset": {
        "last_snapshot_record": true,
        "lsn": 34790624,
        "txId": 1361,
        "ts_usec": 1764935557859729,
        "snapshot": "INITIAL",
        "snapshot_completed": true
      }
    }
  ]
}
Миграция коннекторов

Начиная с версии 2.6.0.b1 в ADS Control при помощи функции управления смещениями доступна миграция коннекторов на другой кластер ADS:

  1. Получите смещения для коннектора на вкладке Offset management.

  2. Создайте коннектор в остановленном состоянии, используя ту же конфигурацию, в новом кластере ADS при помощи ADS Control.

  3. Измените смещения для коннектора на вкладке Offset management, используя смещения, полученные с исходного кластера.

  4. Возобновите работу коннектора в новом кластере и удалите его в исходном кластере.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней