第3章 Leader Worker Set Operator
3.1. Leader Worker Set Operator の概要 リンクのコピーリンクがクリップボードにコピーされました!
Leader Worker Set Operator を使用して、マルチノードの AI/ML 推論デプロイメントを効率的に管理します。Leader Worker Set Operator は Pod のグループを 1 つの単位として扱い、大規模なワークロードのスケーリング、リカバリー、および更新を単純化します。
AI/ML 推論に大規模言語モデル (LLM) を使用するには、多くの場合、大量のコンピュートリソースが必要です。通常はワークロードを複数のノードに分散する必要があります。そのため、デプロイメントが複雑になり、スケーリング、障害からの回復、効率的な Pod の配置に関する課題が生じる可能性があります。
Leader Worker Set Operator は、Pod のグループを 1 つの連携したユニットとして扱うことで、このようなマルチノードのデプロイメントを簡素化します。また、グループ内の各 Pod のライフサイクルを管理し、グループ全体をまとめてスケーリングし、グループレベルで更新と障害回復を実行して、一貫性を確保します。
3.1.1. Leader Worker Set Operator について リンクのコピーリンクがクリップボードにコピーされました!
Leader Worker Set Operator を使用して、Pod のグループを単一の管理可能な単位としてデプロイします。これは、大規模な言語モデル(LLM)などの大規模な AI/ML 推論ワークロードをデプロイするのに役立ちます。
Leader Worker Set Operator は、LeaderWorkerSet オープンソースプロジェクトをベースにしています。LeaderWorkerSet は、Pod のグループをユニットとしてデプロイするために使用できるカスタム Kubernetes API です。これは、大規模言語モデル (LLM) が複数のノードに分散される人工知能 (AI) および機械学習 (ML) 推論ワークロードに役立ちます。
LeaderWorkerSet API を使用すると、Pod が 1 つのリーダーと複数のワーカーで構成されるユニットにグループ化され、すべての Pod が単一のエンティティーとしてまとめて管理されます。グループ内の各 Pod には、一意の Pod アイデンティティーがあります。グループ内の Pod は並行して作成され、同一のライフサイクルステージを共有します。ロールアウト、ローリング更新、および Pod 障害時の再起動は、グループとして実行されます。
LeaderWorkerSet の設定では、グループのサイズとグループのレプリカの数を定義します。必要に応じて、リーダー Pod とワーカー Pod に個別のテンプレートを定義して、ロール別のカスタマイズを行うことができます。また、同じグループ内の Pod が同じトポロジー内に配置されるように、トポロジーを考慮した配置を設定することもできます。
Leader Worker Set Operator をインストールする前に、cert-manager Operator for Red Hat OpenShift をインストールする必要があります。これはサービスを設定し、メトリクス収集を管理するために必要です。
OpenShift Container Platform では、Leader Worker Set Operator のモニタリングが Prometheus を通じてデフォルトで提供されます。
3.1.1.1. LeaderWorkerSet のアーキテクチャー リンクのコピーリンクがクリップボードにコピーされました!
LeaderWorkerSet アーキテクチャー を確認し、LeaderWorkerSet API が Pod のグループをリーダーおよび残りの Pod をリーダーおよび残りの Pod を 1 つのユニットに編成し、分散ワークロードを調整する方法を確認します。
以下の図は、LeaderWorkerSet アーキテクチャーについて説明しています。
図3.1 リーダーワーカーセットのアーキテクチャー
LeaderWorkerSet API は、リーダーステートフルセットを使用して、Pod グループのデプロイメントとライフサイクルを管理します。定義されたレプリカごとに、リーダーワーカーグループが作成されます。
各リーダーワーカーグループには、リーダー Pod とワーカーステートフルセットが含まれます。ワーカーステートフルセットは、リーダー Pod によって所有され、そのリーダー Pod に関連付けられたワーカー Pod のセットを管理します。size を指定すると、各リーダーワーカーグループ内の Pod の合計数が定義されます。その数にはリーダー Pod も含まれます。