BLOG NO.12 Artificial Intelligence(AI)

4.1.1. AIの基盤 (Kubernetes)
Kubernetes(クーバネティス、通称: K8s)は、AIシステムを構築するための重要なプラットフォームとして位置づけられています。コンテナ化したアプリケーションのデプロイやスケールアウトを管理し自動化するオーケストレーション プラットフォームです。
AIのシステム基盤では、NVIDIAに代表されるような大量のGPU (Graphics Processing Unit)が性能を左右しています。GPUは本来画像処理のための装置ですが、AIシステムではGPUが持つ並列で高速な処理性能を活用し、機械学習や推論に利用しています。AIサーバは数千ものGPUコアを実装しており、各コアはコンテナと呼ばれる最小単位のアプリケーションが動作します。Kubernetesは、このコンテナ(POD)を実行管理するためのプラットフォームであり、オーケストレーターとしてGPUコアの最適な活用とダイナミックなスケーリングを可能にしています。
4.1.2. AIの入口 (Ingress Controller)
AIシステムにアクセスするためのデバイスにIngress Controllerがあります。Ingress ControllerはKubernetesが構築したシステムのアクセスポイントを提供します。AIシステムへのリクエストはHTTP/HTTPSで行われ、Ingress ControllerはKubernetesが管理するPOD(コンテナ)へリクエストを配信するためにHTTPヘッダーとURLの内容をチェックします。この振る舞いはADCのL7スイッチと同等の機能であり、LoadMasterの持つL7スイッチで実現可能です。
LoadMasterはIngress Controller機能を実現するためにアドオンを用意しています。アドオンのインストールでKubernetesが管理するPODの状態を確認し、最適なPODにリクエストの配信を可能にします。
4.1.3. LoadMasterとAIシステム
KubernetesによるAIシステムは、多くのCPUと大量のGPUコアを持ったAIサーバ上で動作します。システムはNutanixやVMware等の仮想化プラットフォームがベースとなり、AIシステム以外のOSもデプロイできます。LoadMasterもこの環境へのデプロイが可能ですが、AIが稼働するプラットフォームにデプロイする必要性はありません。
一般にKubernetes環境とIngress Controllerは三位一体の関係があり、同一システムと考えられますが、基本的には異なる機能をもつ装置です。それぞれが別の役割を果たすことでAIシステムが機能しますので、動作するプラットフォームは個別に用意することが性能を最大化する鍵となります。
ADCとしてのLoadMasterは、SSLオフロード、アプリケーションファイアウォール(WAF)、ユーザ認証といった機能を備えています。AIサービスではこの機能を必要としますが、オーバーヘッドが大きいので仮想アプライアンスとしてAIサーバ上にデプロイするメリットは少ないと考えられます。AIシステムの構成は、AIシステムとIngress Controllerを分離して配置することで最適なパフォーマンスと運用性能を得ることができます。

![]()
By ADC Engineers