環境セットアップ
OpenLM Platform 用の Azure インフラをプロビジョニングするには、Azure Kubernetes Service (AKS) と Azure マネージドサービスを使用します。
詳細なサイジングとサービス仕様は 要件 を参照してください。
インフラコンポーネント
Azure デプロイでは、次のマネージドサービスを使用します。
| コンポーネント | Azure サービス | 用途 |
|---|---|---|
| Kubernetes | Azure Kubernetes Service (AKS) | コンテナオーケストレーション |
| SQL database | Azure SQL Managed Instance | Identity、operational、reporting データ |
| Cache | Azure Cache for Redis | キャッシュおよびセッションストレージ |
| Persistent storage | Azure Managed Disks | Kafka、MongoDB、その他 stateful services(約 400 GB) |
Kafka と MongoDB は Azure のマネージドサービスとしてではなく、Helm チャートと Azure Managed Disks を使って Kubernetes クラスタ内で動作します。
ネットワーク構築
AKS では Azure Container Networking Interface (CNI) ネットワークモードを使用します。ネットワーク要件を次の表に示します。
| 項目 | 要件 |
|---|---|
| Virtual network (VNet) | 最低 /22 の CIDR block(例: 10.0.0.0/22) |
| IP capacity | 1,024 addresses(Pod、ノード、拡張分として約 400 必要) |
| Planned pods | 約 143 |
| Planned nodes | 6 から 7 |
AKS クラスタ
このセクションでは、AKS クラスタの node pools とノードラベルについて説明します。
Node pools
次の 3 つの node pools を作成します。
| Node pool | 用途 | VM size | Count | Max pods per node |
|---|---|---|---|---|
| System | Kubernetes システム Pod | 4 vCPU, 16 GB RAM(例: Standard_D4ds_v4) | 2 | 30 |
| Main | コアアプリケーションワークロード | 4 vCPU, 16 GB RAM | 2 | 70 |
| Reporting | レポートワークロード | 4 vCPU, 16 GB RAM | 3 | 30 |
Kubernetes バージョンは 1.32.9、または運用ポリシーに合致する AKS サポート対象バージョンを使用してください。
Node labels
ワークロードスケジューリング用にノードへラベルを付与します。OpenLM Platform チャートは、メインノードに openlm.com/role=main、レポート用ノードに openlm.com/role=spark を想定しています。
kubectl label node <system-node> openlm.com/role=system
kubectl label node <main-node-1> openlm.com/role=main
kubectl label node <main-node-2> openlm.com/role=main
kubectl label node <report-node-1> openlm.com/role=spark
kubectl label node <report-node-2> openlm.com/role=spark
kubectl label node <report-node-3> openlm.com/role=spark
マネージドサービス
このセクションでは、マネージド Azure サービスごとの要件を示します。
Azure SQL Managed Instance
SQL Managed Instance の要件を次の表に示します。
| 設定 | 要件 |
|---|---|
| Tier | General Purpose |
| Compute | 最低 4 vCores |
| Storage | 最低 256 GB |
| Scaling | ユーザー数、レポート負荷、データ保持期間に応じて拡張 |
Azure Cache for Redis
Azure Cache for Redis の要件を次の表に示します。
| 設定 | 要件 |
|---|---|
| Tier | C2 |
| Cache size | 2.5 GB |
Azure Managed Disks
Storage classes が設定されていれば、Managed Disks は AKS によって自動プロビジョニングされます。Kafka、MongoDB、その他 stateful services 用に合計約 400 GB が必要です。
クラスタ内のインフラサービス
このパスでは、Kafka と MongoDB を Azure のマネージドサービスとしてプロビジョニングしません。Azure Managed Disks を永続ストレージとして、AKS クラスタ内で実行します。最初に、次のコマンドを実行して namespace を作成します。
kubectl create namespace openlm-infrastructure
Kafka
次のコマンドを実行して、デプロイパッケージに含まれる Helm チャートから Kafka をデプロイします。
helm install kafka <kafka-chart>.tgz -f values.yaml -n openlm-infrastructure
インストール前に、values.yaml でストレージクラスとブローカーごとのボリュームサイズを設定してください。ブローカーあたり 250 GB 程度を目安にします。
代替として、Azure Marketplace 経由の Confluent Cloud を利用し、クラスタ内にインストールする代わりにその bootstrap servers を OpenLM Platform に指定することもできます。Kafka プロトコル層を使う Azure Event Hubs は サポートされません。
MongoDB
デプロイパッケージに含まれる Helm チャートを使い、Kubernetes クラスタ内に MongoDB をデプロイします。永続ストレージには Azure Managed Disks を使用します。
helm install mongodb <mongodb-chart>.tgz -f values.yaml -n openlm-infrastructure
Azure Marketplace 経由の MongoDB Atlas も、マネージドの代替としてサポートされます。
Pod の確認
次のコマンドを実行します。
kubectl get pods -n openlm-infrastructure
次に進む前に、すべての Pod が Running になっていることを確認してください。
次の手順
インフラをプロビジョニングした後、次の手順を実行します。
kubectlを AKS クラスタへ接続するよう設定az aks get-credentials --resource-group <resource-group> --name <cluster-name>- 前提条件 チェックリストを完了
- プラットフォームのインストール に進む
ドキュメントチームは、大規模言語モデルを使ってこのページを下書きすることがあります。公開前に、テクニカルライターがすべてのページをレビューし、製品と照らし合わせて検証します。最終的な判断は人間が行います。