当前位置: 首页 > 知识库问答 >
问题:

Kubernetes上的Flink

关玄裳
2023-03-14

我们正在使用Flink v1.12.2构建流处理作业,并计划在库伯内特斯集群上运行它。在参考官方Flink留档时,我们主要遇到了两种将Flink作业提交到库伯内特斯集群的方法,一种是独立模式,另一种是Native模式。我们注意到使用后一种选项,没有yaml配置文件,看起来很简单。只是想知道推荐的模式/方法是什么以及它们的优缺点。谢谢。

共有1个答案

濮阳研
2023-03-14

很高兴听到你在K8s上试用Flink!

如您所述,本地模式是当前推荐的Kubernetes入门模式,因为它是最简单的选择。在Flink 1.13(将于未来几周发布)中,增加了对指定Pod模板的支持。这种方法的缺点之一是与CI/CD集成的能力有限。

其他一些更为“Kubernetes”风格的运行作业的流行方法(即YAML清单)包括Lyft的运营商、Ververica平台(免责声明:我在此工作)和Google云平台的运营商。这些都是需要完成的工作,但提供了更好的CI/CD故事,从长远来看,这有助于减少在生产中使用Flink的工作量。

如果您想更深入地讨论其中的任何一个,那么用户邮件列表中充满了有用的人,他们可以权衡适用于您的用例的一些优缺点。

 类似资料:
  • 我在kubernetes上部署了一个flink集群,它由1个作业管理器和6个任务管理器组成。我试图运行一个在该集群上消耗大量数据的flink作业。但是它似乎没有弹性,因为当任务管理器pod重新启动时,整个作业都失败了。所以我想知道部署在kubernetes之上的flink集群是否对失败有弹性?因为任务管理器pod重新启动的情况经常发生

  • 问题内容: 因此,我的目标是以分布式方式建立一个由多个kafka经纪人组成的集群。但是我看不出让经纪人彼此了解的方法。 据我了解,每个代理在其配置中都需要一个单独的ID,如果我从Kubernetes启动容器,我不能保证或配置该ID吗? 他们还需要具有相同的advertised_host吗? 是否有我需要更改的参数才能使节点相互发现? 在Dockerfile的末尾使用脚本进行这样的配置是否可行?和/

  • 我在EKS上运行服务已经有一段时间了,今天无意中删除了nginx入口。现在,当我尝试使用以下url中的入口控制器模板设置入口时,只需稍加修改: https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.34.1/deploy/static/provider/aws/deploy-tls-termination.

  • 我正在尝试将Traefik部署为GKE集群上的入口控制器。它是一个具有3个节点的基本集群。 我习惯于使用库伯内特斯集群上的清单部署Traefik,但我们正在将一些基础设施迁移到GCP。 因此,我尝试使用社区掌舵图部署Traefik,配置如下: 然后使用以下命令启动它: 在我的 K8S 集群上部署得很好,除了仪表板入口并出现以下错误: 知道我的错误在哪里吗? 非常谢谢!

  • 我正试图在我的kubernetes集群中安装Jenkins。当我探索的时候,我发现有两个方面。我理解的第一种方法是,安装詹金斯主从。在这里,我找到了在kubernetes集群上安装Jenkins主从代理的文档。第二种方法是我发现Kubernetes插件的用法。如果我们用这种方法,只需要安装master和配置插件。当创建一个部署时,从吊舱将自动工作。 在第一种方法中,我们需要定义安装主从机的工作机器

  • 对于使用Keycloak作为Traefik1.7背后的IDP的Webapplication,我们目前面临以下问题: Chrome控制台告诉我们: 在keycloak中,我们在myrealm域中为client myclient设置Web Origins=*。