Поделиться через


Управление конфигурацией Apache Flink® в HDInsight на AKS

Важно!

Azure HDInsight на AKS был выведен из эксплуатации 31 января 2025 г. Узнайте больше о с этим объявлением.

Необходимо перенести рабочие нагрузки в Microsoft Fabric или эквивалентный продукт Azure, чтобы избежать резкого завершения рабочих нагрузок.

Важный

Эта функция сейчас доступна в предварительной версии. Дополнительные условия использования для предварительных версий Microsoft Azure включают дополнительные юридические термины, применимые к функциям Azure, которые находятся в бета-версии, в предварительной версии или в противном случае еще не выпущены в общую доступность. Для получения информации об этой конкретной предварительной версии см. сведения о Azure HDInsight в AKS. Если у вас есть вопросы или предложения функций, отправьте запрос на AskHDInsight с подробными сведениями и подписывайтесь, чтобы получать обновления в Azure HDInsight Community.

HDInsight в AKS предоставляет набор конфигураций Apache Flink по умолчанию для большинства свойств и некоторых из них на основе общих профилей приложений. Однако если вам потребуется настроить свойства конфигурации Flink для повышения производительности для определенных приложений с использованием состояния, параллелизмом или параметрами памяти, можно изменить конфигурацию задания Flink с помощью раздела "Задания Flink" в HDInsight в кластере AKS.

  1. Перейдите к настройкам > Flink Jobs > и нажмите "Обновить".

    снимок экрана со страницей обновления.

  2. Щелкните + Добавить строку — чтобы изменить конфигурацию.

    Задание обновления снимка экрана .

    Здесь интервал контрольной точки изменяется на уровне кластера .

  3. Обновите изменения, нажав кнопку ОК, а затем сохранить.

  4. После сохранения новые конфигурации обновляются через несколько минут (около 5 минут).

  5. Конфигурации, которые можно обновить с помощью параметров управления конфигурацией.

    processMemory size:

  6. Параметры по умолчанию для размера памяти процесса или диспетчера заданий и диспетчера задач будут памятью, настроенной пользователем во время создания кластера.

  7. Этот размер можно настроить с помощью следующего свойства конфигурации. Чтобы изменить память процесса диспетчера задач, используйте эту конфигурацию.

    taskmanager.memory.process.size : <value>

    Пример: taskmanager.memory.process.size : 2000mb

  8. Для диспетчера заданий

    jobmanager.memory.process.size : <value>

    Заметка

    Максимальная настраиваемая память процесса равна памяти, настроенной для jobmanager/taskmanager.

Интервал контрольной точки

Интервал контрольной точки определяет, как часто Flink активирует контрольную точку. Определяется в миллисекундах и может быть задано с помощью следующего свойства конфигурации.

execution.checkpoint.interval: <value>

Значение по умолчанию равно 60 000 миллисекундам (1 мин), это значение можно изменить по мере необходимости.

Серверная часть состояния

Бэкэнд состояния определяет, как Flink управляет и сохраняет состояние вашего приложения. Это влияет на то, как хранятся контрольные точки. Серверная часть состояния можно настроить с помощью следующего свойства:

state.backend: <value>

По умолчанию кластеры Apache Flink в HDInsight в AKS используют Rocks DB.

Путь к хранилищу контрольных точек

По умолчанию мы разрешаем постоянные контрольные точки, сохраняя контрольные точки в abfs хранилище, настроенном пользователем. Даже если задание завершается ошибкой, поскольку контрольные точки сохраняются, его можно легко перезапустить с последней контрольной точки.

state.checkpoints.dir: <path> заменить <path> нужным путем, в котором хранятся контрольные точки.

По умолчанию хранится в учетной записи хранения (ABFS), настроенной пользователем. Это значение можно изменить на любой желательный путь, пока pod-ы Flink могут к нему получить доступ.

Максимальное число одновременных контрольных точек

Максимальное количество одновременных контрольных точек можно ограничить, задав следующее свойство: checkpoint.max-concurrent-checkpoints: <value>

Замените <value> требуемым максимальным количеством одновременных контрольных точек. Например, установка 1 ограничивает количество контрольных точек, разрешая только одну за раз.

Максимальное количество сохраненных контрольных точек

Максимальное количество контрольных точек можно ограничить, задав следующее свойство: state.checkpoints.num-retained: <value> заменить <value> требуемым максимальным числом. По умолчанию мы сохраняем не более пяти контрольных точек.

Путь к хранилищу Savepoint

Мы разрешаем постоянные точки сохранения по умолчанию, сохраняя точки сохранения в хранилище abfs (как настроено пользователем). Если пользователь хочет остановить и позже запустить задание с определенной точкой сохранения, он может настроить это расположение. state.checkpoints.dir: <path> замените <path> нужным путем, в котором хранятся точки сохранения. По умолчанию хранится в учетной записи хранения, настроенной пользователем. (Мы поддерживаем ABFS). Это значение можно изменить на любой путь, который вы хотите, до тех пор, пока к этому пути могут получить доступ pods Flink.

Высокий уровень доступности диспетчера заданий

В HDInsight на AKS Flink использует Kubernetes в качестве серверной составляющей. Даже если Job Manager завершает работу с ошибкой из-за какой-либо известной или неизвестной проблемы, модуль перезапускается в течение нескольких секунд. Следовательно, даже если задание перезапускается из-за этой проблемы, задание восстанавливается обратно из последней контрольной точки.

Вопросы и ответы

Почему происходит сбой задания между ними? Даже если задания завершаются неожиданно, если контрольные пункты совершаются непрерывно, задание по умолчанию перезапускается с последнего контрольного пункта.

Измените стратегию задания на промежуточном этапе? Существуют случаи применения, когда задание необходимо изменить на производстве из-за ошибки на уровне задания. В течение этого времени пользователь может остановить задание, которое автоматически создаст точку сохранения и сохранит её в местоположении точки сохранения.

  1. Щелкните savepoint и дождитесь завершения savepoint.

    снимок экрана с параметрами точки сохранения.

  2. После завершения сохранения нажмите на "Пуск", и появится вкладка "Запуск задания". Выберите имя точки сохранения в раскрывающемся списке. При необходимости измените все конфигурации. Нажмите кнопку ОК.

    снимок экрана: запуск задания.

Так как точка сохранения предоставляется в задании, Flink знает, откуда начать обработку данных.

Ссылка