我正在尝试在kubernetes上部署ApacheFlink1.6。在作业管理器的高可用性页面上遵循教程。我已经有一个工作zookeeper 3.10集群从它的日志我可以看到,它是健康的,没有配置为kerberos或sasl。所有的acl规则是让我们的每个客户端写入和读取znode。当我启动集群时,一切都按预期工作,每个jobmanager和taskmanager pod都成功地进入运行状态,我可以从主jobmanager的web ui中看到连接的taskmanager示例。但是当我删除主jobmanager的pod时,另一个jobmanager pod无法在集群中的任何jobmanager ui上选择具有以下错误消息的领导者。
{
"errors": [
"Service temporarily unavailable due to an ongoing leader election. Please refresh."
]
}
即使我重新启动这个页面也没有任何改变。它遇到了这个错误消息。我的怀疑是,问题与 high-availability.storageDir
选项。我已经在k8s集群中部署了一个正在工作的minios3(使用cloudexplorer进行了测试)。但是flink不能向s3服务器写入任何内容。在这里您可以找到github gist中的每个配置。
1条答案
按热度按时间smdnsysy1#
从日志来看
TaskManager
无法连接到新引线。我假设这对于webui也是一样的。日志显示它试图连接到flink-job-manager-0.flink-job-svc.flink.svc.cluster.local/10.244.3.166:44013
. 我不能从日志上说flink-job-manager-1
绑定到此ip。但我怀疑headless服务可能会返回多个ip,而flink会选择错误/旧的ip。你能登录到flink-job-manager-1
pod并检查它的ip地址是什么?我认为你应该能够通过定义每个
JobManager
一个专用服务,或者如果您使用pod主机名。