Flink Job Cluster JM HA нужен в ECS? - PullRequest
       6

Flink Job Cluster JM HA нужен в ECS?

0 голосов
/ 26 апреля 2020

У меня есть несколько Flink 1.9 заданий, каждое из которых выполняется в режиме Job Cluster внутри AWS ECS кластера, где JobManager и TaskManager выполняются внутри одной ECS задачи в разных containers.

Недавно я включил checkpoints/savepoints - S3 в каждом из заданий Flink, чтобы сделать его состоящим и устойчивым в случае сбоя. Я новичок в Flink, пожалуйста, помогите мне получить ответы или рекомендации по следующим вопросам:

Всегда ли JobManager нужен HA, даже если он работает внутри ECS, поскольку ECS может рестарт JM если он умрет?

JobManager теряет checkpoints/savepoints, когда его перезапуск инициируется ECS?

Когда ECS перезапускает задание JM, TM и Flink в случае сбоя, оно создает новый идентификатор каждый раз, и поэтому автоматическое c возобновление с контрольных точек будет невозможно? Как установить идентификатор задания на исправление?

1 Ответ

0 голосов
/ 27 апреля 2020

Как написано в документации Flink :

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

Так что, да, если вы хотите установку, готовую к работе с as как можно меньше времени простоя, вам нужно настроить JobManager в HA.

ECS перезапустит ваш JobManager, но может случиться так, что некоторые TaskManager уже начали отказывать, потому что они не могут связаться с JobManager. Это также зависит от того, доступен ли ваш JobManager с тем же сетевым адресом (так что он может быть обнаружен повторно, не знакомым с ECS в этом отношении). Затем соответствующие задания будут перезапущены с течением времени, пока они окончательно не завершатся.

Если ECS действительно быстро перезапустит JobManager, вы, конечно, можете попытаться увеличить время ожидания пульса TaskManager, чтобы избежать этого случая. Но тогда действительно нужно попробовать и убедиться, что это надежно.

Кстати, если вы начинаете fre sh, я бы настоятельно рекомендовал пропустить ECS и go до K8s ( Амазон ЭКС). Гораздо проще в настройке и большей облачности c. Даже сейчас есть коммерческая платформа, свободно доступная как Community Edition без поддержки, которая делает установку невероятно быстрой.

...