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

Container Service for Kubernetes:クラウドネイティブAIスイートの概要

最終更新日:Nov 14, 2024

クラウドネイティブAIスイートは、クラウドネイティブAIテクノロジーと製品を活用したContainer Service for Kubernetes (ACK) ソリューションです。 クラウドネイティブAIスイートは、クラウドネイティブのアーキテクチャとテクノロジーを最大限に活用して、ACKでAI支援の本番システムを迅速に開発するのに役立ちます。 クラウドネイティブAIスイートは、AIまたは機械学習アプリケーションおよびシステムのフルスタック最適化も提供します。 このトピックでは、クラウドネイティブAIスイートのアーキテクチャ、主要な機能、および使用シナリオについて説明します。 このトピックでは、クラウドネイティブAIスイートを使用する方法についても説明します。

アーキテクチャ

クラウドネイティブAIスイートは、Container Service for Kubernetes (ACK) をベースとして使用します。 異種リソースを一元管理し、主要コンポーネントの実行、リソースの管理と維持、AIジョブのスケジュールとスケーリング、データアクセスの高速化、ワークフローの調整、ビッグデータサービスの統合、AIジョブのライフサイクルの管理、AIアーティファクトの管理、O&Mタスクの実行を行うための標準KubernetesクラスターとAPIを提供します。 クラウドネイティブAIスイートは、AI DevOpsも最適化します。 AIデータセット管理をサポートし、AIモデルを開発、トレーニング、評価し、推論サービスとしてモデルをデプロイできます。

CLI、さまざまなプログラミング言語のSDK、およびコンソールから主要コンポーネントを使用できます。 これらのコンポーネントとツールを使用して、AIプロダクションシステムをオンデマンドで構築、拡張、またはカスタマイズできます。 クラウドネイティブAIスイートでは、同じコンポーネントとツールを使用して、Alibaba cloud AIサービス、オープンソースAIフレームワーク、およびサードパーティAI機能を統合することもできます。

さらに、クラウドネイティブAIスイートは、Platform for AIとのシームレスな統合をサポートし、高性能で弾力性のあるワンストップAIプラットフォームの開発を支援します。 PAIが提供するData Science Workshop (DSW) 、Deep Learning Containers (DLC) 、Elastic Algorithm Service (EAS) などのサービスを使用できます。 ACKは、前述のサービスのAIモデル開発、トレーニング、および推論の弾力性と効率を大幅に向上させることができます。 クラウドネイティブのAIスイートでは、数回クリックするだけで軽量のPlatform for AIをACKクラスターにデプロイし、AI開発をより簡単にすることもできます。 長年の経験に基づいてPAIによって深く最適化されたアルゴリズムとエンジンをコンテナ化されたアプリケーションに統合して、モデルのトレーニングと推論を大幅に高速化できます。 Platform for AIの詳細については、「PAIとは」をご参照ください。

次の図は、クラウドネイティブAIスイートのアーキテクチャを示しています。

image

主な機能

クラウドネイティブAIスイートは、Kubernetesをベースとして使用し、AIおよび機械学習アプリケーションとシステムのフルスタックサポートと最適化を提供します。 次の表に、クラウドネイティブAIスイートが提供する主な機能を示します。 次の表に、クラウドネイティブAIスイートが提供する主な機能を示します。

機能

説明

関連ドキュメント

異種リソースの集中管理

  • 異種リソースのサポート: ACKでサポートされるリソースに加えて、クラウドネイティブAIスイートはNVIDIA GPU、NPU、FPGA、VPU、RDMAなどの異種リソースもサポートします。 クラウドネイティブAIスイートを使用して、これらのリソースを一元的にスケジュール、管理、および保守できます。

  • 監視とメンテナンス: クラウドネイティブAIスイートは、GPUを複数の次元で監視し、GPUの割り当て、使用、およびヘルスステータスに関する情報を視覚化して表示します。

  • リソース使用率の改善: クラウドネイティブAIスイートは、リソース使用率の改善に役立つGPU共有、GPUメモリの分離、およびトポロジ認識GPUスケジューリングをサポートしています。

AIジョブスケジューリング

  • 複数のスケジューリングポリシー: ACKスケジューラは、AI分散トレーニングジョブなどのバッチジョブのKubernetesネイティブスケジューリングフレームワークを拡張します。 ギャングスケジューリング (コスケジューリング) 、先入れ先出し (FIFO) スケジューリング、容量スケジューリング、フェアシェアリング、ビンパッキングおよびスプレッドなど、さまざまなバッチスケジューリングポリシーがサポートされています。

  • ジョブキュー: クラウドネイティブAIスイートには、優先度ベースのジョブキューが用意されており、ジョブの優先度をカスタマイズしたり、テナントのエラスティッククォータを設定したりできます。

  • ワークフローオーケストレーション: Kubeflow PipelinesまたはArgoワークフローを統合して、複雑なAIジョブのワークフローをオーケストレーションできます。

Elasticスケジューリング

分散深層学習ジョブのElasticスケジューリング: クラウドネイティブAIスイートは、モデルトレーニングとモデル精度に影響を与えることなく、ワーカー数とノード数を動的にスケーリングします。 クラウドネイティブAIスイートは、クラスターにアイドルリソースがある場合はワーカーを追加してトレーニングを高速化し、クラスターが十分なリソースを提供できない場合はワーカーをリリースします。 これにより、モデルトレーニングがリソース不足の影響を受けないようになります。 このモードにより、クラスター全体のリソース使用率が大幅に向上し、ノード障害の回避に役立ちます。 このモードは、ジョブを起動するための待ち時間も短縮します。

Kubernetesベースのエラスティックトレーニング

AIデータのオーケストレーションと高速化

流体: データセットの概念を紹介します。 データ抽象化によるトレーニングジョブを提供し、データセットの管理、アクセス制御の実施、データアクセスの高速化に役立つデータオーケストレーションおよび高速化プラットフォームを提供します。 ack-fluidは、異なるストレージサービスからデータを取り込み、データを同じデータセットに集約できます。 また、ハイブリッドクラウド環境でack-fluidをオンクラウドまたはオンプレミスストレージサービスに接続して、データを管理し、データアクセスを高速化することもできます。 さらに、ack-fluidは、さまざまな分散キャッシュサービスをサポートするように拡張できます。 各データセットにキャッシュサービスを設定し、データセットのウォームアップ、キャッシュ容量の監視、エラスティックスケーリングなどの機能を使用して、トレーニングジョブ用のデータのリモート取り込みのオーバーヘッドを大幅に削減し、GPUコンピューティングの効率を向上させることができます。

AIジョブのライフサイクル管理

  • Arena: AI制作プロセスを簡素化し、データ管理、モデル開発、トレーニング、推論サービスの展開などの重要な側面をカバーしながら、リソースのスケジューリング、環境構成、監視の複雑な詳細を抽象化します。 Arenaは、TensorFlowやPyTorchなどの主流のAIテクノロジースタックと互換性があります。 また、さらなる開発のために多言語SDKもサポートしています。 ack-arenaは、ジョブ管理ツールArenaでの操作を簡素化するように最適化されています。 数回クリックするだけで、Container Service for Kubernetes (ack) コンソールにACK-arenaをインストールし、ACKクラスターにArenaを効率的にデプロイできます。

  • 視覚化されたO&M: 使いやすいダッシュボードと開発者コンソールを提供し、クラスターのステータスを表示して、トレーニングジョブをすばやく送信できます。

適用シナリオ

クラウドネイティブAIスイートは、異種リソースの利用を継続的に改善し、AIジョブなどの異種ワークロードを効率的に処理するのに適しています。使用场景..png

シナリオ1: 異種リソースの利用を継続的に改善

クラウドネイティブAIスイートは、コンピューティングリソース (CPU、GPU、NPU、VPU、FPGAなど) 、ストレージリソース (OSS、NAS、CPFS、HDFS) 、ネットワークリソース (TCPおよびRDMA) など、クラウド内の異種リソースの抽象化を提供します。 クラウドネイティブAIスイートを使用して、これらのリソースを一元的に管理、維持、割り当てし、リソーススケーリングとソフトウェア /ハードウェア最適化に基づいてリソース使用率を継続的に改善できます。

シナリオ2: AIジョブなどの異種ワークロードを効率的に処理

クラウドネイティブAIスイートは、TensorFlow、PyTorch、DeepSpeed、Horovod、Spark、Flink、Kubeflow、Kserve、vLLM、Triton Inference Serverなどの主流のオープンソースエンジンと互換性があり、セルフマネージドエンジンとランタイムもサポートします。 また、クラウドネイティブAIスイートは、パフォーマンス、効率、コストの面でトレーニングジョブを継続的に最適化し、開発とメンテナンスのユーザーエクスペリエンスを最適化し、エンジニアリング効率を向上させます。 また、クラウドネイティブAIスイートは、パフォーマンス、効率、コストの面でトレーニングジョブを継続的に最適化し、開発とメンテナンスのユーザーエクスペリエンスを最適化し、エンジニアリング効率を向上させます。

ユーザーロール

クラウドネイティブAIスイートは、次のユーザーロールを定義します。

ロール

説明

O&M 管理者

AIインフラストラクチャの構築と日常管理を担当します。 詳細については、「クラウドネイティブAIスイートのデプロイ」、「ユーザーの管理」、「エラスティッククォータグループの管理」、「データセットの管理」をご参照ください。

アルゴリズムエンジニアとデータサイエンティスト

クラウドネイティブAIスイートを使用してジョブを管理します。 詳細については、次をご参照ください: KubernetesクラスターでのモデルトレーニングMLflowモデルレジストリでのモデルの管理モデルの分析と最適化

クラウドネイティブAIスイートの操作

次の図の手順に従って、想定しているユーザーロールに基づいてクラウドネイティブAIスイートを使用します。

使用流程..png

ステップ

説明

コンソール

1. 準備

(O&M管理者)

Alibaba Cloudアカウントの作成

Alibaba Cloudアカウントを作成し、実名認証を完了します。 詳細については、「Alibaba Cloud アカウントの作成」をご参照ください。

Alibaba Cloudサインアップページ

ACKクラスターの作成

ACKを有効にしてACKクラスターを作成します。 次のクラスター設定を使用することを推奨します。 詳細については、「ACK管理クラスターの作成」をご参照ください。

  • クラスタータイプ: ACK Proクラスター、ACK Serverless Proクラスター、またはACK Edge Proクラスター

  • Kubernetesバージョン: 1.18以降。

  • リージョン: ACKを有効にしたリージョン。

ACKコンソール

(オプション) クラスター依存関係の設定と依存クラウドリソースの作成

  • AIダッシュボードとAI開発者コンソールのインストールと設定:

    • PrometheusエージェントとLogtailをACKクラスターにインストールします。

    • Resource Access Management (RAM) コンソールでクラスターのポリシーを作成します。 詳細については、次をご参照ください: 権限付与を行います。

    • 内部ドメイン名またはパブリックドメイン名を使用してAIダッシュボードおよびAI開発者コンソールにアクセスする場合は、NGINX Ingressコントローラーをインストールし、コントローラーの内部アクセスまたはインターネットアクセスを有効にします。

    • 事前にインストールされたMySQLデータベースをストレージとして使用するには、クラスター内のノードがEnterprise SSD (ESSD) に接続されていることを確認します。

    • ApsaraDB RDSデータベースをストレージとして使用するには、ApsaraDB RDSインスタンスを購入し、kube-ai名前空間にkubeai-rdsという名前のシークレットを作成する必要があります。

    詳細については、「AIダッシュボードとAI開発者コンソールのインストールと設定」をご参照ください。

  • Kubeflow Pipelinesのインストールと設定:

    • プリインストールされたMinIOをストレージとして使用するには、クラスター内のノードがESSDに接続されていることを確認します。 詳細については、「Kubeflow Pipelinesのインストールと設定」をご参照ください。

    • Object Storage Service (OSS) をストレージとして使用するには、OSSを有効化し、OSSバケットを購入してから、kube-ai名前空間にkubeai-ossという名前のシークレットを作成する必要があります。 詳細については、「OSSの有効化」および「Kubeflow Pipelinesのインストールと設定」をご参照ください。

2. システムと環境

(O&M管理者)

クラウドネイティブAIスイートの有効化とインストール

  1. ECI インスタンスの割引額を照会するには、 クラウドネイティブAIスイートを有効化するための有効化ページ

  2. クラウドネイティブAIスイートと関連コンポーネントをインストールします。 詳細については、「クラウドネイティブAIスイートのデプロイ」をご参照ください。 クラウドネイティブAIスイートのインストールに使用されるコンポーネントの詳細については、「コンポーネントの紹介とリリースノート」をご参照ください。

ACKコンソール

ユーザーとクォータの管理

  1. クォータノードを追加し、リソースクォータを設定します。

  2. ユーザーとユーザーグループを作成し、リソースを割り当て、クォータグループを関連付けます。

    詳細については、「ユーザーの管理」、「ユーザーグループの管理」、および「エラスティッククォータグループの管理」をご参照ください。

  3. 新しく作成したユーザーのkubeconfigファイルとログオントークンを生成します。 詳細については、「新しく作成したユーザーのkubeconfigファイルとログオントークンの生成」をご参照ください。

AIダッシュボードとkubectl

データの準備

  1. データセットを作成します。

  2. (オプション) データセットを高速化します。 詳細については、「Fluidの概要」をご参照ください。

(アルゴリズムエンジニアおよびデータサイエンティスト)

クラウドネイティブのAIスイートを使用すると、アルゴリズムエンジニアとデータサイエンティストは、Arena、webコンソール、AI開発者コンソールを使用して、モデルの開発、モデルのトレーニング、推論サービスの展開、ジョブの管理を行うことができます。

ACKコンソール

3。 モデルトレーニングと展開

(アルゴリズムエンジニアおよびデータサイエンティスト)

ArenaまたはAI開発者コンソールを使用する場合、次の手順を実行してモデルをトレーニングおよびデプロイできます。

開発モデル

  1. Jupyterノートブックを作成して使用します。 詳細については、「Jupyterノートブックの作成と使用」をご参照ください。

  2. Jupyterノートブックを使用して、モデルを開発およびテストします。

  3. Gitリポジトリにコードを送信するには、Jupyterノートブックを使用します。

鉄道モデル

  1. AI開発者コンソールまたはアリーナを使用してトレーニングジョブを送信します。

  2. ジョブのログまたはTensorBoardデータを表示します。

    詳細については、次をご参照ください: モデルトレーニング

モデルの管理

  1. モデルを作成し、トレーニングジョブに関連付けます。

  2. AI開発者コンソールまたはArena CLIを使用してモデルを管理します。 詳細については、「MLflowモデルレジストリでのモデルの管理」をご参照ください。

モデルのデプロイ

モデルを推論サービスとしてデプロイします。 詳細については、次をご参照ください: AIサービスのデプロイ

AI開発者コンソールとアリーナ

Lightweight Platform for AIを使用して、モデルを開発、トレーニング、デプロイします。

軽量PAI

4。 監視とメンテナンス

(O&M管理者)

リソースの監視と保守

クラスター、ノード、トレーニングジョブ、リソースクォータなど、さまざまなリソースのダッシュボードを表示します。 詳細については、「クラウドネイティブAIダッシュボードの操作」をご参照ください。

AIダッシュボード

クォータの管理

  • クォータグループとクォータグループ内のリソースを作成、照会、更新、削除します。

  • リソースタイプを変更します。

    詳細については、「エラスティッククォータグループの管理」をご参照ください。

ユーザーの管理

ユーザーまたはユーザーグループを作成、照会、更新、および削除します。 詳細については、「ユーザーの管理」および「ユーザーグループの管理」をご参照ください。

データセットの管理

  • データセットとデータを作成、照会、更新、削除します。 詳細については、「データセットの管理」をご参照ください。

  • データセットを高速化します。 詳細については、「Fluidの概要」をご参照ください。

エラスティックジョブの管理

弾性ジョブとジョブの詳細を表示します。 詳細については、「エラスティックジョブの表示」をご参照ください。

5。 請求と支払い

(O&M管理者)

20246月6日の00:00:00 (UTC + 8) 以降、クラウドネイティブAIスイートは無料です。 詳細については、「クラウドネイティブAIスイートの課金」をご参照ください。

費用とコスト

請求書を毎日生成する

  • 請求書を照会します。

  • 課金の詳細を照会します。

  • リソース使用状況の詳細を照会します。

  • サービスの使用状況と価格を照会します。

    詳細については、「クラウドネイティブAIスイートの課金」をご参照ください。

課金ルール

詳細については、「クラウドネイティブAIスイートの課金」をご参照ください。

関連ドキュメント

参照

説明

クイックスタート (初心者向け)

いくつかのプラクティスを通じて、クラウドネイティブAIスイートを開発およびO&M作業にすばやく適用するのに役立ちます。 詳細については、「クラウドネイティブAIスイートユーザーガイド」および「クラウドネイティブAIスイートの運用およびメンテナンスガイド」をご参照ください。

リリースノート

クラウドネイティブAIスイートのリリースノートについて説明します。