AKS 群集上的 HDInsight 上的 Apache Flink® Command-Line 接口 (CLI)

重要

AKS 上的 Azure HDInsight 已于 2025 年 1 月 31 日停用。 了解此公告的详细信息

需要将工作负荷迁移到 Microsoft Fabric 或等效的 Azure 产品,以避免工作负荷突然终止。

重要

此功能目前以预览版提供。 Microsoft Azure预览版补充使用条款 包括适用于beta版、预览版或尚未正式发布到一般版本的Azure功能的更多法律条款。 有关此特定的预览信息,请参阅 在 AKS 上的 Azure HDInsight 预览信息。 有关问题或功能建议,请在 AskHDInsight 上提交请求,并提供详细信息,关注我们以获取 Azure HDInsight 社区 的更多更新。

Apache Flink 提供 CLI(命令行接口)bin/flink 来运行打包为 JAR 文件并控制其执行的作业(程序)。 CLI 是 Flink 设置的一部分,可以在单节点 VM 上设置。 它连接到 conf/flink-conf.yaml中指定的正在运行的 JobManager。

安装步骤

若要在 Linux 上安装 Flink CLI,需要 Linux VM 来执行安装脚本。 如果你在 Windows,则需要运行 bash 环境。

注意

这不适用于 Windows GIT BASH,需要安装 WSL 才能在 Windows 上执行此作。

要求

  • 安装 JRE 11。 如果未安装,请按照 /java/openjdk/download中所述的步骤进行操作。
  • 将 java 添加到 PATH 或定义指向 JRE 安装目录的JAVA_HOME环境变量,以便存在 $JAVA_HOME/bin/java

安装或更新

安装和更新 CLI 都需要重新运行安装脚本。 通过运行 curl 安装 CLI。

curl -L https://aka.ms/hdionaksflinkcliinstalllinux | bash

如果使用 Flink 1.17,则可以使用以下 CLI

curl -L https://aka.ms/hdionaksflink117clilinux | bash

此命令在用户的主目录中安装 Flink CLI($HOME/flink-cli)。 还可以在本地下载并运行该脚本。 可能需要重启 shell 才能使更改生效。

cd $HOME/flink-cli 

bin/flink list -D azure.tenant.id=<update-tenant-id> -D rest.address=<flink-cluster-fqdn>

注意

如果通过 SSH Pod 执行,请使用命令 bin/flink list 以获取完整的输出。

如果不想每次添加这些参数,请将它们添加到 conf/flink-conf.yaml

rest.address: <flink-cluster-fqdn>
azure.tenant.id: <tenant-id>

现在命令变为

bin/flink list

应会看到如下所示的输出:

To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code E4LW35GFD to authenticate.

在浏览器中打开 https://microsoft.com/devicelogin,然后输入代码,然后使用 microsoft.com ID 登录。 成功登录后,如果未运行任何作业,应会看到如下所示的输出。

Waiting for response...
No running jobs.
No scheduled jobs.

curl Object Moved 错误

如果收到与 -L 参数相关的 curl 错误,或包含文本“Object Moved”的错误消息,请尝试使用完整的 URL 而不是 aka.ms 重定向:

curl https://hdiconfigactions.blob.core.windows.net/hiloflinkblob/install.sh | bash

例子

下面是 Flink 的 CLI 工具支持的一些示例:

行动 目的
该操作执行任务。 它至少需要包含作业的 jar。 如有必要,可以传递 Flink 或与作业相关的参数。
信息 此操作可用于以优化的方式打印所传递作业的执行图。 同样,需要传递包含作业的 jar。
列表 此操作 列出所有正在运行或已计划的作业
保存点 此操作可用于 为给定作业创建或撤销保存点。 除了 JobID 之外,可能需要指定“savepoint”目录。
取消 此作可用于 根据作业 ID 取消正在运行的作业
此操作将 取消和保存点结合在一起,以停止 正在运行的作业,同时创建一个保存点以便重新开始。

通过以下命令可以访问所有操作及其参数:

bin/flink --help

每个动作的使用信息

bin/flink <action> --help

提示

  • 如果代理阻止了连接:若要获取安装脚本,代理需要允许与以下地址建立 HTTPS 连接:https://aka.ms/https://hdiconfigactions.blob.core.windows.net
  • 若要解决此问题,请将用户或组添加到 授权配置文件

参考