分享方式:


HDInsight on AKS 叢集上的 Apache Flink® 命令行介面 (CLI)

注意

AKS 上的 Azure HDInsight 將於 2025 年 1 月 31 日退場。 請於 2025 年 1 月 31 日之前,將工作負載移轉至 Microsoft Fabric 或對等的 Azure 產品,以免工作負載突然終止。 訂用帳戶中剩餘的叢集將會停止,並會從主機移除。

在淘汰日期之前,只有基本支援可用。

重要

此功能目前為預覽功能。 Microsoft Azure 預覽版增補使用規定包含適用於 Azure 功能 (搶鮮版 (Beta)、預覽版,或尚未正式發行的版本) 的更多法律條款。 若需此特定預覽版的相關資訊,請參閱 Azure HDInsight on AKS 預覽版資訊。 如有問題或功能建議,請在 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)。 指令碼也可以在本機下載並執行。 您可能必須重新啟動殼層,才能讓變更生效。

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 識別碼登入。 成功登入之後,如果沒有任何作業正在執行,您應該會看到如下的輸出。

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

curl Object Moved 錯誤

如果您從 Curl 收到與 -L 參數相關的錯誤,或者是收到包含「物件已移動」的錯誤訊息,請嘗試使用完整的 URL 而非 aka.ms 來重新導向:

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

範例

以下是 Flink 的 CLI 工具所支援一些動作範例:

動作 目的
run 此動作會執行作業。 這至少需要包含作業的 jar。 如有必要,可以傳遞 Flink 或作業相關的引數。
info 此動作可用來列印已傳遞作業的最佳化執行圖形。 同樣地,必須傳遞包含作業的 jar。
清單 此動作會列出所有執行中或排程的工作
儲存點 此動作可用來為指定的作業建立或捨棄儲存點。 除了 JobID 之外,可能需要指定儲存點目錄。
cancel 此動作可用來根據 JobID 取消執行中的作業
停止 此動作會結合取消和儲存點動作,以停止執行中作業,同時也會建立儲存點以從再次啟動。

所有動作及其參數都可以透過下列命令來存取:

bin/flink --help

各個別動作的使用資訊

bin/flink <action> --help

提示

  • 如果您具有封鎖連結的 Proxy:若要取得安裝指令碼,您的 Proxy 必須允許 HTTPS 連線至下列位址:https://aka.ms/https://hdiconfigactions.blob.core.windows.net
  • 若要解決此問題,請將使用者或群組新增至授權設定檔

參考