开发者社区 问答 正文

flink 1.9 1.10 on yarn在cdh上怎么搭建一个客户端呀?

flink 1.9 1.10 在cdh上怎么搭建一个客户端。 我需要一个客户端启动flink on yan. 1.7版本 是正常的。 但是1.9 和1.10 启动了on yarn 任务。我的环境是cdh hadoop。 谢谢回答

来自志愿者整理的flink邮件归档来自志愿者整理的FLINK邮件归档

展开
收起
小阿怪 2021-12-04 19:06:08 285 分享 版权
阿里云 AI 助理回答

针对您在CDH Hadoop环境下,尝试使用Flink 1.9或1.10版本在YARN上搭建客户端并启动任务遇到的问题,以下是一些建议步骤和注意事项:

环境准备与兼容性检查

  1. 确认Hadoop版本兼容性:确保您的CDH Hadoop版本与Flink 1.9或1.10版本兼容。Flink官方文档通常会列出推荐的Hadoop版本范围,尽管这里没有直接提供具体版本信息,请访问Flink官方网站查阅相应版本的发行说明。

  2. Flink二进制包准备:下载对应版本的Flink(1.9或1.10)二进制分发包,并解压到适当的目录下。请从Apache Flink官方网站或者通过Maven仓库获取正确的版本。

  3. 配置Flink以支持YARN

    • 在Flink的conf/目录下,复制flink-conf.yaml.templateflink-conf.yaml
    • 配置YARN相关参数,例如设置yarn.application-idyarn.queue等,确保它们与您的YARN集群配置相匹配。
  4. 环境变量设置:确保FLINK_HOME环境变量已设置,并将Flink的bin/目录添加到PATH中,以便可以从命令行轻松访问Flink的脚本。

客户端构建与任务提交

  1. 构建Flink YARN客户端:实际上,Flink自带了用于提交任务到YARN的客户端脚本,无需单独“构建”客户端。只需正确配置好Flink后,即可使用。

  2. 提交任务到YARN

    • 使用Flink的flink run -m yarn-cluster <job.jar>命令来提交作业到YARN集群。其中,<job.jar>是包含您Flink作业的jar文件。
    • 根据需要,可以通过-yn指定YARN容器的数量,以及-ys指定每个容器的内存大小等参数。

注意事项

  • Classpath问题:在CDH环境中,可能存在Hadoop类库冲突问题。如果遇到ClassNotFoundException或其他类加载异常,可能需要调整Flink的类路径(classpath),确保它能正确找到CDH相关的Hadoop类库。

  • 资源限制:确保YARN集群有足够的资源分配给Flink任务,包括内存和CPU核心数。根据任务需求合理设置资源请求量。

  • 日志查看:当任务在YARN上运行出现问题时,利用YARN Web UI查看应用程序日志,这有助于诊断问题所在。

  • 版本差异:由于您提到Flink 1.7可以正常工作,而1.9或1.10遇到问题,注意检查是否有API变更或配置选项变动,参考Flink的版本更新说明文档进行调整。

结论

遵循上述步骤,您应该能够在CDH Hadoop环境下成功搭建Flink 1.9或1.10的客户端,并提交任务至YARN。如果遇到特定错误,建议详细记录错误信息,并对照Flink官方文档或社区论坛寻求解决方案。

请注意,以上建议基于通用情况,具体实施时需结合您实际的集群配置和版本细节进行适当调整。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答