flink官方文档为独立和纱线弗林克群提供了乔布曼的高可用性解决方案。但是,使用Mesos Flink群集应该为高可用性做些什么?
我了解到,Flink依靠马拉松来提出失败的Jobmanager,但这是一个问题:每次Jobmanager重新启动时,工作都会重新部署。这对于任务关键工作是不可接受的。这个问题有解决方法吗?还是有任何计划在Mesos模式下使用Flink支持Full HA?
我在Flink中使用了此配置,它确实适用于两个Mesos Masters和一个从属:
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
另外,我在马拉松比赛中使用了此JSON文件:
{
"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,
}
我希望它有用。