すべてのプロダクト
Search
ドキュメントセンター

Container Compute Service:バッチタスクオーケストレーションを有効にする

最終更新日:Dec 28, 2024

Argo Workflows は、Kubernetes ネイティブのワークフローエンジンです。YAML または Python を使用して同時タスクをオーケストレートし、コンテナ化されたアプリケーションの自動化と管理を簡素化できます。CI/CD パイプライン、データ処理、機械学習に適しています。Argo Workflows コンポーネントをインストールして、バッチタスクオーケストレーションを有効にすることができます。その後、Argo CLI またはコンソールを使用してワークフローを作成および管理できます。

ステップ 1: Argo Workflows コンポーネントをインストールする

アドオンページから Argo Workflows をインストールできます。

  1. ACS コンソールにログオンします。左側のナビゲーションペインで、クラスタをクリックします。

  2. クラスタページで、管理するクラスタを見つけ、その ID をクリックします。クラスタの詳細ページの左側のナビゲーションペインで、操作 > アドオンを選択します。

  3. アドオンページで、Argo Workflowsを見つけて、コンポーネントをインストールします。

    コンポーネントがインストールされた後、左側のナビゲーションペインでアプリケーション > Helmを選択して、ack-workflow のステータスを表示します。ステータスがデプロイ済みと表示されている場合、コンポーネントはインストールされています。

ステップ 2: Argo CLI またはコンソールを使用する

ACK は、ワークフローを作成および管理するための 2 つの方法を提供します。Alibaba Cloud Argo CLI と Argo コンソールです。

方法 1: Alibaba Cloud Argo CLI をインストールする

Alibaba Cloud Argo CLI は、オープンソースの Argo CLI と完全に互換性があり、メトリクス機能が強化されています。Alibaba Cloud Argo CLI を使用すると、ワークフローで消費される CPU とメモリリソース、およびその運用コストを監視できます。さらに、Alibaba Cloud Argo CLI はログ機能が改善されており、ワークフローから削除されたポッドのログをクエリできます。

  1. Alibaba Cloud Argo CLI インストールパッケージ argo-cli-aliyun-linux をダウンロードします。

    wget https://ack-one.oss-cn-hangzhou.aliyuncs.com/cli/v3.4.12/argo-cli-aliyun-linux

    このステップでは、Linux を例として使用しています。Darwin システムと Linux システムのダウンロードリンクは、それぞれargo-cli-aliyun-darwinargo-cli-aliyun-linuxです。

  2. 次のコマンドを実行して、argo-cli-aliyun-linuxに実行権限を付与します。

    chmod +x argo-cli-aliyun-linux
  3. 実行可能ファイルを、PATH 環境変数に含まれるディレクトリ(例:/usr/local/bin/)に移動します。ディレクトリパスは、環境によって異なる場合があります。

    mv argo-cli-aliyun-linux /usr/local/bin/argo

方法 2: アクセスクレデンシャルを取得して Argo コンソールを使用する

1. アクセスクレデンシャルを取得する

Argo Server にアクセスするために、クラスタのサービスアカウントから 1 時間有効な一時トークンを取得できます。

次のコマンドを実行して、argo名前空間のargo-serverという名前のサービスアカウントから一時トークンを取得します。

kubectl create token argo-server -n argo

予想される出力:

elxxxxxxxxxx

2. Argo コンソールにアクセスする

アクセスクレデンシャルを使用すると、Argo コンソールを使用できます。デフォルトでは、システムによって内部エンドポイントが提供され、ビジネス要件に基づいてインターネットアクセスを有効にすることができます。

  1. (オプション) インターネットアクセスを有効にし、アクセス制御を構成します。

    1. 次のコマンドを実行して Argo Server Service を編集し、typeの値をLoadBalancerに設定します。

      kubectl edit service argo-server -n argo
    2. トラフィック管理のアクセス制御を構成するには、SLB のアクセス制御機能を使用するを参照してください。

  2. 次のコマンドを実行して、Argo Server Service のパブリック IP(EXTERNAL-IPフィールドの値)を取得します。この IP アドレスは、サービスにアクセスするために使用されます。

    kubectl get service argo-server -n argo
  3. 次の形式を使用して、ブラウザのアドレスバーにパブリック IP とポートを入力します。

    https://${IP}:2746

    予想される出力:

    image

  4. 前のステップで取得したアクセスクレデンシャルをテキストボックスに入力して、コンソールにログオンします。入力はBearer $tokenの形式に従う必要があります。

    image

  5. ログオン後、NAMESPACE を argo として入力し、タスクのステータスを確認します。

    image

次のステップ

CLI またはコンソールを使用して、ACS クラスタにワークフローをすばやく作成できます。詳細については、ワークフローを作成するを参照してください。