Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Scaling AI/ML Workloads with Rafay and AI on EKS

2025年09月12日に「Dev.to」が公開したITニュース「Scaling AI/ML Workloads with Rafay and AI on EKS」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

AI on EKSはAWSでAI/MLを動かす基盤。Rafayを組み合わせると、複雑な設定をテンプレート化でき、複数チームが簡単にAI環境を構築・運用できる。自動化で大規模な展開や管理が容易になり、開発者は基盤構築の手間なくAI開発に集中可能だ。

ITニュース解説

現代の企業がAI(人工知能)やML(機械学習)の技術をビジネスに活用しようとするとき、ただプログラムを作るだけでなく、それらを安定して、かつ大規模に動かすことが非常に重要な課題となる。AI/MLのワークロードは、一般的なアプリケーションと比べて計算資源を大量に必要とし、頻繁に更新されるため、柔軟で高性能な実行環境が求められる。この課題を解決するために、多くの組織がコンテナ技術と、それを効率的に管理するKubernetesというシステムに注目している。

Kubernetesは、アプリケーションを「コンテナ」と呼ばれる独立した小さな単位で動かし、それらをまとめて管理・自動化するツールだ。これにより、アプリケーションのデプロイ(展開)やスケーリング(規模の拡大・縮小)、障害時の復旧などを効率的に行えるようになる。Amazon EKS(Elastic Kubernetes Service)は、Amazon Web Services(AWS)が提供するマネージドサービスで、Kubernetesクラスターの運用に伴う複雑な管理作業の多くをAWSが代行してくれるため、利用者はアプリケーション開発に集中できるという利点がある。

AWSは、EKS上でAI/MLワークロードを動かすためのベストプラクティスや構成をまとめた「AI on EKS」というソリューションを提供している。これは、具体的に必要なインフラ(コンピュータやネットワークなどの基盤)を自動的に準備し、AI/MLの学習や推論といった「ジョブ」の実行を管理し、限られたリソースを効率的に割り当て、さらにシステムの性能や状態を監視・記録する機能を提供する。AI on EKSは、インフラの構成をコードとして記述できるTerraformというツールを使って提供されており、これにより、何度でも同じ環境を正確かつ一貫性を持って構築できるというメリットがある。

AI on EKSはAI/MLワークロードのための強力な基盤となるが、複数の開発チームやプロジェクトでこれらの環境を利用するようになると、新たな運用上の課題が生じることがある。例えば、異なるチームがそれぞれ独自の環境を構築しようとすると、設定のばらつきやセキュリティポリシーの不徹底などが発生しやすくなる。また、環境構築のたびにインフラ担当者が介入する必要があるなど、運用の手間が増大することもある。そこで、このような課題を解決し、より高度な自動化、標準化、そして複数チームでの協業を可能にするのが「Rafay」プラットフォームである。

Rafayプラットフォームは、Kubernetesアプリケーションや環境の管理を効率化するためのツールで、中央集権的な管理、一貫性のある環境定義、そしてアプリケーションライフサイクル管理の合理化といった特徴を持つ。Rafayは、Kubernetesのリソース(コンテナが動くための設定など)を定義する「Resource Templates」と、完全な環境(EKSクラスターとその周辺設定)を定義する「Environment Templates」という再利用可能なテンプレートを活用することで、デプロイの一貫性を保証する。

具体的に、Rafayのテンプレートを使ってAI on EKSのインフラをどのように構築するのか、その技術的な詳細を見てみよう。まず、基盤となるのは「ネットワーク」の構築だ。これは、EKSクラスターとその中のアプリケーションが通信するための土台となる。VPC(Virtual Private Cloud)という仮想的な専用ネットワーク空間が作られ、その中に「サブネット」と呼ばれる小分けのネットワークが配置される。サブネットは、AWSの異なるデータセンター(アベイラビリティゾーン)に分散して配置され、システムの可用性(停止しないこと)を高める。また、「ルートテーブル」がネットワークの交通整理を行い、「セキュリティグループ」がファイアウォールのように通信を許可・拒否する役割を果たす。

次に、「EKSクラスター」そのものがプロビジョニング(準備・設定)される。ここでは、Kubernetesのバージョンが指定され、クラスターの管理を行う「コントロールプレーン」の設定(ログや監査など)が定義される。そして、実際にAI/MLプログラムが動くコンピュータの集まりである「ノードグループ」が構成される。ノードグループには、EKSクラスターの基本的なシステム機能(アドオン)を動かすための「コアノードグループ」と、一般的なAI/MLワークロードやサードパーティ製のツールを動かすための「汎用ノードグループ」がある。それぞれに適切なコンピュータの種類や台数が設定される。また、IAMロール(AWSのリソースにアクセスするための権限)が設定され、EKSクラスターがAWSの他のサービス(例えば監視サービスのCloudWatchやストレージサービスのEBS)と連携できるようにする。

その上に、EKSクラスターの機能を拡張する「アドオン」が導入される。これは、AI/MLワークロードをより効率的かつ便利に動かすための追加機能だ。例えば、「AWS Load Balancer Controller」は、外部からのアクセスをEKS内のサービスに分散する負荷分散器を管理する。「AWS EFS CSI Driver」は、複数のコンテナ間でデータを共有できるファイルストレージEFSへのアクセスを可能にする。「Ingress NGINX」は、外部からのHTTP/HTTPSリクエストをEKS内のサービスにルーティングする。「Kube-Prometheus-Stack」は、システムの状態を監視するためのPrometheusと、そのデータを視覚化するGrafana、そして異常を通知するAlertmanagerを含む総合的な監視ソリューションだ。「Karpenter Controller」は、ワークロードの必要に応じて、自動的にコンピュータ(ノード)を追加したり削除したりする役割を担う。AI/MLに特化したアドオンとしては、「KubeRay Operator」があり、これは分散処理フレームワークであるRayクラスターの管理をKubernetes上で行うためのツールだ。さらに、「Kubecost」は、Kubernetes環境のコストを監視し、管理するのに役立つ。Karpenterはさらに、「NodePool」と「EC2NodeClass」というリソースを通じて、用途に応じたさまざまな種類のコンピュータ(例えば、CPU重視のものやGPU搭載のもの)を動的に供給できるように設定される。

最後に、「ストレージ」として、高性能で汎用的なgp3がデフォルトのストレージクラスとして設定される。これは、AI/MLワークロードが頻繁にデータを読み書きする際に、高速なアクセスを保証するためのものだ。

このように、複雑なAI on EKSのインフラ構成が、Rafayのテンプレートによってモジュール化され、一貫性を持って再利用可能になる。AI on EKSのTerraformコードをRafayのResourceおよびEnvironment Templatesに変換することで、組織は以下のような大きなメリットを得られる。まず、開発者は自分でインフラの細かな設定を行うことなく、用意されたテンプレートから必要なAI/ML環境をセルフサービスで簡単にデプロイできるようになるため、作業が大幅に簡素化される。次に、Rafayの中央管理機能により、AI/MLワークロードを複数のクラスターや地域にわたって効率的にスケール(拡張)できる。また、テンプレートを通じてセキュリティポリシーや運用ルールを強制することで、より強固なガバナンス(統制)を実現し、コンプライアンス(法令順守)も容易になる。そして、AWSが提供する公式のベストプラクティスやオープンソースの優れたアーキテクチャを、各チームがゼロから再構築することなく、すぐに活用できる。

結果として、開発チームはインフラの構築や管理といった運用上の負担から解放され、本来の目的であるAI/MLモデルの開発と改善に集中できるようになる。新しいチームのオンボーディング(環境設定)も迅速に行え、組織全体のAIイニシアティブをより効果的に推進できるようになるのだ。RafayとAI on EKSの組み合わせは、AI/MLワークロードのデプロイと管理を効率化し、組織がAIの可能性を最大限に引き出すための強力な手段となるだろう。

関連コンテンツ

関連IT用語