開始する前に
インフラストラクチャ

アプリケーション層
ストレージレイヤー
インフラ要件
Kubernetes
W&B Server アプリケーションは、複数の Pod をデプロイする Kubernetes Operator としてデプロイされます。このため、W&B には次の要件を満たす Kubernetes クラスターが必要です:- 適切に設定され正常に動作している Ingress コントローラ
- Persistent Volumes をプロビジョニングする能力
MySQL
W&B はメタデータを MySQL データベースに保存します。データベースのパフォーマンスおよびストレージ要件は、モデルパラメータや関連メタデータの形状に依存します。たとえば、より多くの学習 run をトラッキングするとデータベースサイズが増加し、run テーブル、ユーザーのワークスペース、およびレポートに対するクエリに応じてデータベースへの負荷も増加します。 W&B は本番環境ではマネージドデータベースサービスの利用を強く推奨します(AWS RDS Aurora MySQL、Google Cloud SQL for MySQL、Azure Database for MySQL など)。マネージドサービスは自動バックアップ、モニタリング、高可用性、パッチ適用を提供し、運用の複雑さを大幅に軽減します。具体的なサービスの推奨事項については、以下の クラウドプロバイダーのインスタンス推奨 セクションを参照してください。 自前運用の MySQL データベースをデプロイする場合は、次の点を検討してください。- バックアップ: データベースは定期的に別の場所にバックアップする必要があります。W&B は、少なくとも 1 週間分を保持する毎日のバックアップを推奨します。
- パフォーマンス: データベースには SSD や高速 NAS などの高速ストレージハードウェアが必要です。
- モニタリング: データベースには十分な CPU リソースが必要です。データベースサーバーの CPU 負荷を監視してください。CPU 使用率がシステム全体の 90% を超える状態が 5 分以上継続する場合は、CPU キャパシティの追加を検討してください。
- 可用性: 必要な可用性と耐久性を満たすために、W&B は別マシン上にホットスタンバイの Server デプロイメントを構成し、プライマリデプロイメントからのすべての更新をリアルタイムでストリーミングし、プライマリサーバーがクラッシュしたり破損したり、長時間のダウンタイムが発生した場合にフェイルオーバーできるようにすることを推奨します。なお、W&B はマルチマスタートポロジーや読み取り専用レプリカをサポートしていません。
MySQL データベースの作成
MySQL の設定パラメータ
Redis
- AWS Elasticache
- Google Cloud Memory Store
- Azure Cache for Redis
- お使いのクラウド環境またはオンプレミスのインフラストラクチャ上でホストされている Redis デプロイメント
オブジェクトストレージ
- CoreWeave AI Object Storage は、AI ワークロード向けに最適化された高性能な S3 互換オブジェクトストレージサービスです。
- Amazon S3 は、業界をリードするスケーラビリティ、データ可用性、セキュリティ、パフォーマンスを提供するオブジェクトストレージサービスです。
- Google Cloud Storage は、大規模な非構造化データを保存するためのマネージドサービスです。
- Azure Blob Storage は、テキスト、バイナリデータ、画像、動画、ログなどの大量の非構造化データを保存するためのクラウドベースのオブジェクトストレージソリューションです。
- MinIO Enterprise (AIStor)、NetApp StorageGRID などの S3 互換ストレージ、またはクラウドもしくはオンプレミス環境でホストされるその他のエンタープライズグレードのソリューション。
対応バージョン
| ソフトウェア | 最低バージョン |
|---|---|
| Kubernetes | v1.32 以降(サポートされている Kubernetes のバージョン) |
| Helm | v3.x |
| MySQL | v8.0.x が必須で、v8.0.32 以降。ただし v8.0.44 以降を推奨。 Aurora MySQL 3.x リリースは v3.05.2 以上である必要があります |
| Redis | v7.x |
ネットワーク
- https://deploy.wandb.ai
- https://charts.wandb.ai
- https://quay.io (Prometheus イメージ用)
デプロイメントの構成によっては、追加のコンテナレジストリが必要になる場合があります:
- Weave のオンライン評価で Bufstream と etcd をデプロイする場合、
https://gcr.ioが必要です。
DNS
ロードバランサーと Ingress
Ingress controller の要件
IngressClass が必要です。一般的な Ingress controller のオプションには次のものがあります。
- Nginx Ingress Controller
- Istio
- Traefik
- クラウドプロバイダーの Ingress controller(例: AWS ALB、GCP Ingress、Azure Application Gateway)
W&B サービスのルーティング
| Path | Service | Default port | Purpose |
|---|---|---|---|
/ | wandb-app | 8080 | メインの Web アプリケーション UI |
/api | wandb-api | 8081 | API サービス |
/graphql | wandb-api | 8081 | GraphQL API エンドポイント |
/graphql2 | wandb-api | 8081 | GraphQL API v2 エンドポイント |
/console | wandb-console | 8082 | システムコンソール |
/traces | wandb-weave-trace | 8722 | Weave のトレーシングサービス(有効な場合) |
Ingress 設定の例
W&B Operator は、ingress の設定を自動的に作成および管理します。通常、ingress リソースを手動で作成する必要はありません。クラスターに動作する ingress コントローラがあり、適切な
IngressClass が設定されていることを確認してください。SSL/TLS
サポートされている CPU アーキテクチャ
デプロイ方法
推奨: Helm を使用した W&B Kubernetes Operator
- W&B コンポーネントの自動更新と管理
- 設定およびデプロイの簡素化
- すべてのデプロイシナリオ(クラウド、オンプレミス、エアギャップ環境)への対応
- Run W&B Server on Kubernetes (Operator) - 主要なインストールガイド
- Deploy W&B Platform On-premises - データセンター/ベアメタル特有の考慮事項
- Kubernetes operator for air-gapped instances - ネットワーク分離環境向け
インフラストラクチャのプロビジョニング
サイジング
Models のみ
Kubernetes
| Environment | CPU | Memory | Disk |
|---|---|---|---|
| Test/Dev | 2 cores | 16 GB | 100 GB |
| Production | 8 cores | 64 GB | 100 GB |
MySQL
| Environment | CPU | Memory | Disk |
|---|---|---|---|
| Test/Dev | 2 cores | 16 GB | 100 GB |
| Production | 8 cores | 64 GB | 500 GB |
Weave のみ
Kubernetes
| 環境 | CPU | メモリ | ディスク |
|---|---|---|---|
| テスト/開発 | 4 cores | 32 GB | 100 GB |
| 本番 | 12 cores | 96 GB | 100 GB |
MySQL
| 環境 | CPU | メモリ | ディスク |
|---|---|---|---|
| テスト/開発 | 2 コア | 16 GB | 100 GB |
| 本番 | 8 コア | 64 GB | 500 GB |
Models と Weave
Kubernetes
| Environment | CPU | Memory | Disk |
|---|---|---|---|
| Test/Dev | 4 コア | 32 GB | 100 GB |
| Production | 16 コア | 128 GB | 100 GB |
MySQL
| 環境 | CPU | メモリ | ディスク |
|---|---|---|---|
| テスト/開発 | 2 コア | 16 GB | 100 GB |
| 本番 | 8 コア | 64 GB | 500 GB |
クラウドプロバイダー別インスタンス推奨
サービス
| ----------- | ------------ | ------------------------ | -------------------------- | | AWS | EKS | RDS Aurora | S3 | | Google Cloud | GKE | Google Cloud SQL - MySQL | Google Cloud Storage (GCS) | | Azure | AKS | Azure Database for MySQL | Azure Blob Storage |
マシンタイプ
AWS
| ----------- | ------------------ | ------------------ | ------------------- | ------------------ |
| テスト/開発 | r6i.large | r6i.xlarge | r6i.xlarge | db.r6g.large | | 本番 | r6i.2xlarge | r6i.4xlarge | r6i.4xlarge | db.r6g.2xlarge |
Google Cloud
| ----------- | ------------------ | ------------------ | --------------------- | ------------------ |
| Test/Dev | n2-highmem-2 | n2-highmem-4 | n2-highmem-4 | db-n1-highmem-2 | | Production | n2-highmem-8 | n2-highmem-16 | n2-highmem-16 | db-n1-highmem-8 |
Azure
| ----------- | ------------------ | ------------------ | ------------------- | ------------------- |
| テスト/開発環境 | Standard_E2_v5 | Standard_E4_v5 | Standard_E4_v5 | MO_Standard_E2ds_v4 | | 本番環境 | Standard_E8_v5 | Standard_E16_v5 | Standard_E16_v5 | MO_Standard_E8ds_v4 |