0

The Flink official documentation provides a jobmanager high availability solution for Standalone And Yarn Flink clusters. But what should be done for high availability using a Mesos Flink Cluster?

I have learned that Flink relies on Marathon to bring up a failed JobManager, but it comes with a problem: every time jobmanager restart, jobs gets re-deployed. This is not acceptable for mission critical jobs. Is there workaround for this issue ? Or does any plan to support full HA with Flink on Mesos mode ?

Jack He
  • 1
  • 1

1 Answers1

0

I used this configuration in Flink and it did work for two mesos masters and one slave:

high-availability: zookeeper
high-availability.storageDir: hdfs:///flink/ha/
high-availability.zookeeper.quorum: 0.0.0.0:2181,10.32.0.3:2181,10.32.0.4:2181,10.32.0.5:2181
fs.hdfs.hadoopconf: /opt/hadoop/etc/hadoop
fs.hdfs.hdfssite: /opt/hadoop/etc/hadoop/hdfs-site.xml
recovery.zookeeper.path.mesos-workers: /mesos-workers
env.java.home: /opt/java
mesos.master: 10.32.0.2:5050,10.32.0.3:5050

Also,I used this JSON file in Marathon:

{
 "id": "flink",
 "cmd": "/home/flink-1.7.2/bin/mesos-appmaster.sh -Djobmanager.heap.mb=1024 -Djobmanager.rpc.port=6123 -Drest.port=8081 -Dmesos.resourcemanager.tasks.mem=1024 -Dtaskmanager.heap.mb=1024 -Dtaskmanager.numberOfTaskSlots=2 -Dparallelism.default=2 -Dmesos.resourcemanager.tasks.cpus=1",
"cpus": 1.0,
"mem": 1024,
 }

I hope it was useful.

M_Gh
  • 1,046
  • 4
  • 17
  • 43