我在没有作业管理器HA的独立Kubernetes (sesion)模式下运行Apache。但是我需要部署作业管理器HA,因为只有在HA模式下,Flink才能持久(可以在作业管理器重新启动后保存作业)。Flink在专用的kubernetes命名空间中运行,而我只有名称空间的权限。
使用本文启用HA:https://ci.apache.org/projects/flink/flink-docs-master/docs/deployment/ha/kubernetes_ha/
例如,我有一个名为flink-名称空间的k28s名称空间。在我创建的命名空间中:
中创建/编辑配置映射的权限
因此,这个serviceAccount具有创建/editr的权限,但仅在这个名称空间中。
部署后,jobManager无法启动并引发错误:
由: io.fabric8.kubernetes.client.KubernetesClientException: configmap引起的“flink-restserver-领导人”是禁止的:用户"system:serviceaccount:flink-namespace:flink-sa“不能在API组"”名称空间中的“默认”中查看资源“configmap”。
这意味着serviceAccount With Flink用于管理Configmap,尝试在名称空间“默认”中创建Configmap,而不是在名称空间“flink-命名空间”中创建Configmap。
有人知道如何配置flink来管理指定命名空间中的configmap吗?
发布于 2021-09-24 12:14:37
问题解决了-使用kubernetes命名空间告诉Flink的可能性正在运行,我在Flink源代码中找到了。因此,要解决这个问题,您应该在config中设置它:
kubernetes.namespace: YOUR_NAMESPACE_NAME
https://stackoverflow.com/questions/69271856
复制相似问题