メインコンテンツへスキップ
このページでは、W&B Self-Managed をデプロイするためのインフラストラクチャおよびソフトウェア要件を網羅的にまとめています。デプロイを開始する前に、これらの要件を確認してください。
W&B は、W&B Multi-tenant CloudW&B Dedicated Cloud などのフルマネージドなデプロイオプションを推奨します。W&B のフルマネージドサービスは、必要な設定がほとんど、あるいはまったく不要で、簡単かつ安全に利用できます。
アーキテクチャ全体に関するガイドラインについては、リファレンスアーキテクチャ を参照してください。

ソフトウェアのバージョン要件

ソフトウェア最低バージョン
Kubernetesv1.32 以降(サポートされている Kubernetes のバージョン
Helmv3.x
MySQLv8.0.x が必須で、v8.0.32 以降。ただし v8.0.44 以降を推奨。
Aurora MySQL 3.x リリースは v3.05.2 以上である必要があります
Redisv7.x

ハードウェア要件

CPU アーキテクチャ: W&B は Intel(x86)CPU アーキテクチャのみをサポートしています。ARM はサポートされていません。 サイジング: Kubernetes ノードおよび MySQL の CPU、メモリ、ディスクのサイジングに関する推奨事項については、リファレンスアーキテクチャの サイジングセクション を参照してください。要件は、Models、Weave、またはその両方を実行しているかどうかによって異なります。 ユースケース(Models のみ、Weave のみ、または両方)に基づく詳細なサイジングの推奨事項については、リファレンスアーキテクチャのサイジングセクションを参照してください。

Kubernetes

W&B Server は複数の pod を管理する Kubernetes Operator としてデプロイされます。Kubernetes クラスターは次の要件を満たしている必要があります。
  • バージョン: 上記の「ソフトウェアバージョンの要件」を参照
  • Ingress コントローラ: 適切に設定され、正常に動作している Ingress コントローラ (Nginx、Istio、Traefik、またはクラウドプロバイダーの Ingress)
  • 永続ボリューム: 永続ボリュームをプロビジョニングできること
  • CPU アーキテクチャ: Intel または AMD の 64 ビット (ARM はサポート対象外)
W&B は、クラウド、オンプレミス、およびエアギャップ環境での OpenShift Kubernetes クラスター へのデプロイをサポートしています。具体的な設定手順については、Operator ガイドの OpenShift セクション を参照してください。 ロードバランサーおよび Ingress の設定を含む Kubernetes の完全な要件については、reference architecture の Kubernetes セクション を参照してください。

MySQL データベース

W&B では外部の MySQL データベースが必要です。 本番環境では、W&B はマネージド データベース サービスの使用を強く推奨します。 マネージド データベース サービスは、自動バックアップ、監視、高可用性、パッチ適用などを提供し、運用負荷を軽減します。 MySQL の要件(サイジングの推奨事項や設定パラメータを含む)の詳細については、リファレンス アーキテクチャを参照してください。データベース作成用の SQL については、ベアメタル ガイドを参照してください。デプロイのデータベース設定に関する質問がある場合は、サポート または AISE までお問い合わせください。 **W&B では、本番環境へのデプロイには AWS RDS Aurora MySQL、Google Cloud SQL for MySQL、Azure Database for MySQL などのマネージドデータベースサービスの利用を強く推奨します。**マネージドサービスは、自動バックアップ、監視、高可用性、パッチ適用などを提供し、運用の複雑さを大幅に軽減します。

MySQL の設定パラメータ

独自の MySQL インスタンスを使用している場合は、次のパラメータで MySQL を設定してください。
binlog_format = 'ROW'
binlog_row_image = 'MINIMAL'
innodb_flush_log_at_trx_commit = 1
innodb_online_alter_log_max_size = 268435456
max_prepared_stmt_count = 1048576
sort_buffer_size = '67108864'
sync_binlog = 1
これらの設定は、最適なパフォーマンスと信頼性を得るために W&B が検証済みです。

データベースの作成

MySQL データベースおよびユーザーを手動で作成する手順については、以下を参照してください。 次の SQL コマンドを実行して、データベースとユーザーを作成します。SOME_PASSWORD を任意の安全なパスワードに置き換えてください:
CREATE USER 'wandb_local'@'%' IDENTIFIED BY 'SOME_PASSWORD';
CREATE DATABASE wandb_local CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON wandb_local.* TO 'wandb_local'@'%' WITH GRANT OPTION;
バックアップ、パフォーマンス、監視、可用性などの追加の考慮事項については、リファレンスアーキテクチャの MySQL セクションを参照してください。

Redis

W&B は、ジョブキューおよびデータキャッシュのために W&B のコンポーネントが使用する、単一ノード構成の Redis 7.x デプロイメントに依存しています。概念実証のテストや開発を容易にするため、W&B Self-Managed にはローカルの Redis デプロイメントが含まれていますが、これは本番環境での利用には適していません。 本番環境でのデプロイメントでは、W&B は次の環境にある Redis インスタンスに接続できます。 W&B は、次の環境で Redis インスタンスに接続できます。

オブジェクトストレージ

W&B には、事前署名付き URL および CORS をサポートするオブジェクトストレージが必要です。 推奨ストレージプロバイダ:
  • Amazon S3: 業界トップクラスのスケーラビリティ、データ可用性、セキュリティ、およびパフォーマンスを提供するオブジェクトストレージサービス。
  • Google Cloud Storage: 非構造化データを大規模に保存するためのマネージドサービス。
  • Azure Blob Storage: 大量の非構造化データを保存するためのクラウドベースのオブジェクトストレージソリューション。
  • CoreWeave AI Object Storage: AI ワークロード向けに最適化された、高性能で S3 互換のオブジェクトストレージサービス。
  • エンタープライズ向け S3 互換ストレージ: MinIO Enterprise (AIStor)NetApp StorageGRID、その他のエンタープライズグレードのソリューション
MinIO Open Source はメンテナンスモードにあり、積極的な開発や事前コンパイル済みバイナリは提供されていません。本番環境へのデプロイには、W&B はマネージド型オブジェクトストレージサービス、または MinIO Enterprise (AIStor) のようなエンタープライズ向け S3 互換ソリューションの利用を推奨します。
IAM ポリシー、CORS 設定、アクセス設定を含む詳細なバケットのプロビジョニング手順については、Bring Your Own Bucket (BYOB) ガイドを参照してください。 完全な要件については、リファレンスアーキテクチャのオブジェクトストレージセクションを参照してください。

ストレージバケットをプロビジョニングする

W&B を設定する前に、適切な IAM ポリシー、CORS 設定、およびアクセス認証情報を構成したオブジェクトストレージバケットをあらかじめ用意してください。 次のストレージ向けの詳細なステップバイステップのプロビジョニング手順については、Bring Your Own Bucket (BYOB) ガイドを参照してください。
  • Amazon S3(IAM ポリシーおよびバケットポリシーを含む)
  • Google Cloud Storage(PubSub 通知を含む)
  • Azure Blob Storage(マネージド ID を含む)
  • CoreWeave AI Object Storage
  • S3 互換ストレージ(MinIO Enterprise、NetApp StorageGRID、およびその他のエンタープライズ向けソリューション)

バケットを使用するように W&B を設定する

バケットのプロビジョニング後、Operator の Helm values を使って、W&B がそのバケットを使用するように設定します。詳細については、Operator のオブジェクトストレージバケット設定セクションを参照してください。

ネットワーク

ネットワーク接続されたデプロイメントでは、インストール時と実行時の_両方_で、次のエンドポイントへの送信(egress)が必要です:
デプロイメントの構成によっては、追加のコンテナレジストリが必要になる場合があります:
  • Weave のオンライン評価で Bufstream と etcd をデプロイする場合、https://gcr.io が必要です。
エアギャップ環境でのデプロイについては、エアギャップインスタンス向け Kubernetes オペレーター を参照してください。 学習用インフラストラクチャおよび各実験の要件をトラッキングする各システムには、W&B とオブジェクトストレージへのアクセスが必要です。

DNS

W&B デプロイメントの完全修飾ドメイン名 (FQDN) は、A レコードを使用して Ingress / ロードバランサーの IP アドレスに名前解決される必要があります。

ロードバランサーと Ingress

W&B Kubernetes Operator は Kubernetes の Ingress コントローラーを利用してサービスを公開します。Ingress コントローラーは URL パスに基づいてサービスエンドポイントにルーティングします。Ingress コントローラーには、機械学習のペイロードを実行するすべてのマシン、または Web ブラウザ経由でサービスにアクセスするすべてのマシンからアクセス可能である必要があります。 ロードバランサーの詳細なオプション、Ingress コントローラーの要件、および設定例については、リファレンスアーキテクチャのロードバランサーのセクションを参照してください。

SSL/TLS

W&B では、クライアントとサーバー間の安全な通信のために、有効な署名付き SSL/TLS 証明書が必要です。SSL/TLS の終端は必ず ingress/ロードバランサー上で行う必要があります。W&B Server アプリケーションは SSL または TLS 接続を終端しません。 重要: W&B は自己署名証明書およびカスタム CA をサポートしません。自己署名証明書を使用するとユーザーにとって問題となり、サポート対象外となります。 可能であれば、Let’s Encrypt のようなサービスを利用することで、ロードバランサーに対して信頼された証明書を提供できます。Caddy や Cloudflare のようなサービスは、SSL を代行管理してくれます。 セキュリティポリシーによって、信頼済みネットワーク内でも SSL 通信が必要な場合は、Istio や サイドカーコンテナ のようなツールの利用を検討してください。

ライセンス

すべての Self-Managed 環境でのデプロイには、有効な W&B Server ライセンスが必要です。 W&B Self-Managed をデプロイするには、W&B ライセンスが必要です。
  1. まだ W&B アカウントをお持ちでない場合は、作成してください。
  2. 重要なセキュリティ機能やその他のエンタープライズ向け機能をサポートするエンタープライズトライアルライセンスが必要な場合は、リクエストを送信するか、担当の W&B チームに連絡してください。
  3. それ以外の場合は、Deploy Manager を開いて無償トライアルライセンスを生成します。URL は Get a License for W&B Local フォームにリダイレクトされます。次の情報を入力してください:
    • ライセンスの所有者
    • デプロイ方法
    • インスタンスの名前と任意の説明
  4. Generate License Key をクリックします。
インスタンスに関連付けられたライセンスとともに、デプロイの概要を示すページが表示されます。

次のステップ

インフラストラクチャがこれらの要件を満たしていることを確認したら、次に進みます。
  • クラウドおよびオンプレミス環境へのデプロイ: Helm と Terraform によるデプロイ方法については、Deploy W&B with Kubernetes Operator を参照してください。
  • エアギャップ環境へのデプロイ: 分離された環境でのデプロイ方法については、Deploy on Air-Gapped Kubernetes を参照してください。
  • すべてのデプロイ方法: オペレーターによる基本的なデプロイ手順については、Deploy with Kubernetes Operator を参照してください。