概要
このページでは、プラットフォーム管理者向けに、W&B Kubernetes Operator を使用して Kubernetes (クラウドまたはオンプレミス) 上に W&B Server をデプロイおよび管理する方法を説明します。この手順を完了すると、オペレーターが自動で管理・アップグレードする W&B Server 環境が稼働した状態になります。W&B デプロイメントをセルフマネージドで運用しており、クラウド、オンプレミス、エアギャップ環境のいずれにも対応したインストール方法が必要な場合は、このガイドを参照してください。 W&B Kubernetes Operator は、Kubernetes (クラウドまたはオンプレミス) 上に W&B Server をデプロイする際の推奨方法です。オペレーターの概要、W&B がオペレーターを採用している理由、設定の階層構造の仕組みについては、セルフマネージドを参照してください。始める前に
Kubernetes Operator を使用して W&B をデプロイする前に、インフラストラクチャーがすべての要件を満たしていることを確認してください。- インフラストラクチャー要件を確認する: 次の項目の詳細については、セルフマネージドのインフラストラクチャー要件ページを参照してください。
- ソフトウェアのバージョン要件 (Kubernetes、MySQL、Redis、Helm、ClickHouse)
- ハードウェア要件 (CPU アーキテクチャー、推奨サイジング)
- Kubernetes クラスターの設定
- ネットワーク、SSL/TLS、DNS の要件
- W&B Server のライセンスを取得する: 要件ページの License セクションを参照してください。
- 外部サービスをプロビジョニングする: デプロイの前に、MySQL、Redis、オブジェクトストレージを設定してください。
MySQL データベース
W&B には外部の MySQL データベースが必要です。 本番環境では、マネージドデータベースサービスの使用を推奨します。 マネージドデータベースサービスは、自動バックアップ、モニタリング、高可用性、パッチ適用などの機能を備えており、運用上の負担を軽減できます。 サイジングの推奨事項や設定パラメーターなど、MySQL の要件についてはリファレンスアーキテクチャを参照してください。データベースを作成するための SQL については、ベアメタルガイドを参照してください。デプロイメントのデータベース設定に関するご質問は、サポートまたは担当の AISE にお問い合わせください。 設定パラメーターやデータベースの作成方法など、MySQL のセットアップ手順の詳細については、要件ページの MySQL セクションを参照してください。 MySQL 8.0.x からアップグレードする場合は、MySQL を 8.4.x にアップグレードするを参照してください。Redis
W&B は単一ノード構成の Redis 7.x デプロイメントを必要とし、W&B の各コンポーネントはこれをジョブのキュー管理やデータのキャッシュに使用します。テストや概念実証 (PoC) 向けに、W&B Self-Managed にはローカルの Redis デプロイメントが含まれています。このバンドルされたデプロイメントは、本番環境での使用には適していません。 本番環境のデプロイメントでは、W&B は次の環境にある Redis インスタンスに接続できます。- Amazon ElastiCache
- Google Cloud Memorystore
- Azure Cache for Redis
- クラウドまたはオンプレミスのインフラストラクチャー上でセルフホストしている Redis
オブジェクトストレージ
W&B には、事前署名付き URL と CORS をサポートするオブジェクトストレージが必要です。 W&B では、次のストレージプロバイダーを推奨しています。- Amazon S3: スケーラビリティ、データの可用性、セキュリティ、パフォーマンスを備えたオブジェクトストレージサービスです。
- Google Cloud Storage: 非構造化データを大規模に保存するためのマネージドサービスです。
- Azure Blob Storage: 非構造化データを大規模に保存するためのクラウドベースのオブジェクトストレージです。
- CoreWeave AI Object Storage: AI ワークロード向けに最適化された S3互換のオブジェクトストレージです。
- MinIO Enterprise (AIStor)、NetApp StorageGRID などのエンタープライズ向け S3互換ストレージ、またはその他のエンタープライズソリューション。
MinIO のオープンソース版はメンテナンスモードに移行しており、現在は開発が行われておらず、コンパイル済みバイナリも提供されていません。本番デプロイメントでは、マネージドオブジェクトストレージサービス、または MinIO Enterprise (AIStor) などのエンタープライズ向け S3互換ソリューションの使用を推奨します。
ストレージバケットをプロビジョニングする
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、その他のエンタープライズ向けソリューション)
OpenShift Kubernetes クラスター
W&B は、クラウド、オンプレミス、エアギャップ環境の OpenShift Kubernetes クラスター へのデプロイをサポートしています。公式の W&B Helm チャートを使用してインストールすることを推奨します。
非特権ユーザーとしてコンテナーを実行する
OpenShift などのオーケストレーターでは、root として実行されるコンテナーが拒否されることがよくあります。そのため、W&B のコンテナーは、root グループに属したまま非 root ユーザーとして実行されるように設定する必要があります。デフォルトでは、コンテナーは$UID として 999 を使用します。オーケストレーターがコンテナーを非 root ユーザーで実行するよう要求する場合は、$UID に 100000 以上の値を、$GID に 0 を指定してください。
ファイルシステムの権限を正しく機能させるには、W&B を root グループ (
$GID=0) で起動する必要があります。app や console など他のコンポーネントにもカスタムセキュリティコンテキストを設定します。詳細については、カスタムセキュリティコンテキストを参照してください。
W&B Server アプリケーションをデプロイする
クラウド、オンプレミス、エアギャップ環境を含むすべての W&B セルフマネージドのデプロイでは、Helm を使用した W&B Kubernetes Operator によるインストールを推奨します。
- Helm CLI
- Terraform
W&B は、W&B Kubernetes Operator を Kubernetes クラスターにデプロイするための Helm チャートを提供しています。この方法を使用すると、Helm CLI または ArgoCD などの継続的デリバリーツールで W&B Server をデプロイできます。デプロイメント固有の考慮事項については、環境固有の考慮事項 および パブリッククラウドで Terraform を使用してデプロイする を参照してください。インターネットに接続されていない環境については、Deploy on Air-Gapped Kubernetes を参照してください。Helm CLI を使用して W&B Kubernetes Operator をインストールするには、次の手順に従います。
-
W&B Helm リポジトリを追加します。W&B Helm チャートは W&B Helm リポジトリで提供されています。
-
Kubernetes クラスターにオペレーターをインストールします。
-
W&B オペレーターのカスタムリソースを設定して、W&B Server のインストールをトリガーします。W&B デプロイメントの設定を記述した
operator.yamlという名前のファイルを作成します。使用可能なすべてのオプションについては、設定リファレンス を参照してください。 最小構成の例を次に示します。 -
カスタム設定でオペレーターを起動します。これにより、オペレーターが W&B Server アプリケーションのインストール、設定、管理を行えるようになります。
デプロイメントが完了するまで待ちます。完了までには数分かかります。
- Web UI でインストールを確認するには、最初の管理者ユーザーアカウントを作成してから、インストールを確認する に記載されている検証手順に従います。
wandb-cr namespace で W&B Kubernetes Operator が実行され、そのオペレーターが operator.yaml カスタムリソースに基づいて W&B Server アプリケーションを管理する状態になります。インストールを確認する
インストールを確認するため、W&B は W&B CLI の使用を推奨します。wandb verify コマンドは、コンポーネントと設定が期待どおりに動作することを確認するテストを実行します。
この手順では、ブラウザーで最初の管理者ユーザーアカウントを作成することを前提としています。
-
W&B CLI をインストールします:
-
W&B にログインします:
例:
-
インストールを確認します:
MCP サーバーを有効にする
W&B MCP Server は、operator-wandb のオプションのサブチャートとして提供されています。有効にすると、オペレーターがクラスター内に MCP サーバーをデプロイし、既存のイングレス経由で <global.host>/mcp に公開します。これにより、MCP 対応クライアントであれば W&B APIキーを使用して接続できます。このサーバーは、W&B が https://mcp.withwandb.com/mcp でホスト型サービスとして運用しているものと同じですが、お使いのデプロイメントのデータを参照するように構成されています。
エンドユーザー向けのクライアント設定とツールカタログについては、Use the W&B MCP server を参照してください。このセクションでは、オペレーター側での有効化の手順のみを説明します。
前提条件
MCP サーバーを有効にする前に、デプロイメントが次の要件を満たしていることを確認してください。- チャートのバージョン:
operator-wandb0.42.3以降。mcp-serverサブチャートは0.42.1で導入されましたが、次の例で使用する Datadog とプライバシー関連のフィールドはそれ以降に追加されたものです。 - Weave トレースの有効化: MCP サーバーは、トレースツールと
WF_TRACE_SERVER_URLのデフォルト値を Weave トレースに依存しています。weave-trace.install: trueを設定してください。Weave トレースが有効になっていない場合、Helm のレンダリングはmcp-server requires weave-trace.install=trueというエラーで失敗します。 - 到達可能なイングレス:
global.hostの名前解決ができ、W&B のイングレスにルーティングされている状態になっている必要があります。MCP Pod はglobal.hostからWANDB_BASE_URLを読み取り、<global.host>/mcpでアクセスできるようになります。 - ノードのキャパシティ: MCP Pod は、デフォルトで CPU
500mとメモリ1Giをリクエストします (制限は CPU2、メモリ4Gi)。サブチャートを有効にする前に、Node Pool に十分な空きリソースがあることを確認してください。
サブチャートを有効にする
mcp-server サブチャートを有効にして、オペレーターがクラスター内に MCP サーバーをデプロイし、既存の W&B イングレスに /mcp ルートを追加するようにします。既存の WeightsAndBiases カスタムリソース (CR) の spec.values ブロックに、既存の global、ingress、その他のオーバーライドとあわせて以下を追加してください。Datadog ブロックは任意ですが、クラスター内の Datadog Agent DaemonSet がすでに Pod のログとトレースを収集している場合は追加することをお勧めします。
weave-trace.install: true:mcp-server.env.WF_TRACE_SERVER_URLを自分で設定する場合を除き、必須です。datadog.mode: "agent": Datadog Agent DaemonSet がログとトレースの収集を担う Kubernetes デプロイメントで使用します。agent モードでは、MCP Pod に Datadog APIキーは不要です。datadog.service、env、deploymentType、customer、extraTags: デプロイメントの可観測性に関する命名規則に合わせて設定します。customer タグが不要な場合は、customerを空文字列に設定します。privacy.logLevel: ほとんどのセルフマネージド Kubernetes 環境では"standard"を使用します。この設定では、オペレーターがデバッグによく使用するデプロイメント識別子は残したまま、ログ内の自由記述のパラメーター値をマスクします。entity、project、run、またはユーザーの識別子を平文のログに残したくない場合は"strict"を使用します。"off"は、これらの値を平文でログすることを明示的に求める場合にのみ使用してください。
wandb-mcp-server のデプロイメントとサービスを作成し、W&B のイングレスに /mcp パスを追加します。
MCP サーバーを確認する
Pod がRunning 状態になるまで待ってから、クラスター内から、およびイングレス経由でヘルスエンドポイントを確認します。
200 OK を返すはずです。クラスター内チェックでは Pod が正常であることを、イングレスチェックではルーティングが機能していることを確認します。クラスター内チェックでは 200 OK が返されるのに、イングレスチェックで 404 Not Found が返される場合は、トラブルシューティングを参照してください。Datadog を有効にした場合は、MCP サーバーのログが、設定した mcp-server.datadog.service と mcp-server.datadog.env の値とともに Datadog にも表示されるはずです。
クライアントを接続する
MCP サーバーが正常な状態になったら、https://<HOST_URI>/mcp を使用するように MCP クライアントを設定し、W&B APIキーを Bearer token として指定します。IDE やエージェントの設定については、Use the W&B MCP server を参照してください。
トラブルシューティング
環境固有の考慮事項
Kubernetes は、オンプレミスとクラウドのどちらで実行しても同じように動作します。主な違いは、名称とマネージドサービスにあります (たとえば、MySQL と RDS、S3 とオンプレミスのオブジェクトストレージなど) 。このセクションでは、環境によって異なる考慮事項について説明します。オンプレミスとベアメタル
オンプレミスまたはベアメタルの Kubernetes にデプロイする場合は、次の点に注意してください。ロードバランサーの設定
オンプレミスの Kubernetes クラスターでは、通常、ロードバランサーを手動で設定する必要があります。主な選択肢は次のとおりです。- 外部ロードバランサー: F5 や HAProxy など、既存のハードウェアまたはソフトウェアのロードバランサーを設定します。
- Nginx Ingress Controller: NodePort またはホストネットワークを使用して nginx-ingress-controller をデプロイします。
- MetalLB: ベアメタルの Kubernetes クラスターでは、MetalLB を使用してロードバランサーサービスを提供できます。
永続ストレージ
Kubernetes クラスターに、Persistent Volume 用の StorageClass が設定されていることを確認してください。W&B のコンポーネントでは、キャッシュや一時データの保存に永続ストレージが必要になる場合があります。 オンプレミス環境で一般的に使用されるストレージには、次のようなものがあります。- NFS ベースのストレージクラス
- Ceph/Rook ストレージ
- ローカル Persistent Volume
- NetApp や Pure Storage などのエンタープライズストレージソリューション
DNS と証明書の管理
オンプレミスのデプロイメントでは、次のタスクを実施します。- W&B のホスト名を指すように内部 DNS レコードを設定します。
- 社内の認証局 (CA) から SSL/TLS 証明書を発行します。
- 自己署名証明書を使用する場合は、CA 証明書を信頼するようにオペレーターを設定します。
OpenShift デプロイメント
W&B は、OpenShift Kubernetes クラスターへのデプロイを完全にサポートしています。OpenShift はセキュリティポリシーがより厳格なため、OpenShift デプロイメントではセキュリティコンテキストの追加設定が必要です。 OpenShift 固有の設定の詳細については、OpenShift Kubernetes クラスター を参照してください。エアギャップ環境での OpenShift の設定例については、Deploy on Air-Gapped Kubernetes を参照してください。オンプレミスおよび S3互換のオブジェクトストレージ
オブジェクトストレージバケットをプロビジョニングしたら (オブジェクトストレージのプロビジョニングを参照) 、W&B カスタムリソース でそのバケットを設定します。 AWS S3 (オンプレミス) オンプレミスの AWS S3 (Outposts または互換ストレージを使用) の場合は、次のように設定します。?tls=true を追加します。
- ストレージのキャパシティとパフォーマンス: ディスク容量を注意深く監視してください。W&B の平均的な使用量は数十〜数百 GB です。使用量が多い場合、ストレージ消費量がペタバイト規模に達することがあります。
- フォールトトレランス: 物理ディスクには、少なくとも RAID アレイを使用してください。S3互換ストレージの場合は、分散構成または高可用性構成を使用してください。
- 可用性: ストレージの可用性を維持できるよう、モニタリングを設定してください。
- Amazon S3 on Outposts
- NetApp StorageGRID
- MinIO Enterprise (AIStor)
- Dell ObjectScale
Terraform を使用したパブリッククラウド
AWS、Google Cloud、または Azure で、インフラストラクチャーからアプリケーションまでを含むフルデプロイメントを行う場合は、パブリッククラウドで Terraform を使用してデプロイするを参照してください。パブリッククラウドで Terraform を使用してデプロイする
W&B では、W&B Multi-tenant Cloud や W&B 専用クラウド などの完全マネージドなデプロイメントタイプを推奨しています。完全マネージドサービスでは、設定はほとんど、またはまったく必要ありません。
- AWS
- Google Cloud
- Azure
AWS にプラットフォームをデプロイするには、W&B Server AWS Terraform モジュール を使用することを推奨します。Terraform モジュールは、次の必須コンポーネントをデプロイします。
- ロードバランサー
- AWS Identity & Access Management (IAM)
- AWS Key Management System (KMS)
- Amazon Aurora MySQL
- Amazon VPC
- Amazon S3
- Amazon Route53
- Amazon Certificate Manager (ACM)
- Amazon Elastic Load Balancing (ALB)
- Amazon Secrets Manager
- Elastic Cache for Redis
- SQS
前提として必要な権限
Terraform を実行するアカウントには、前のセクションに記載されたすべてのコンポーネントを作成できることに加えて、IAM ポリシーと IAM ロールを作成し、リソースにロールを割り当てる権限が必要です。一般的な手順
このセクションの手順は、どのデプロイメントオプションでも共通です。-
開発環境を準備します。
- Terraform をインストールします。
- W&B では、バージョン管理用に Git リポジトリを作成することを推奨しています。
-
terraform.tfvarsファイルを作成します。 インストールのタイプに応じて、tvfarsファイルの内容をカスタマイズします。推奨される最小限の内容は次の例のとおりです。namespace変数は、Terraform が作成するすべてのリソースに付与される接頭辞の文字列です。そのため、デプロイする前にtvfarsファイルで変数を定義してください。subdomainとdomainを組み合わせたものが、W&B インスタンスの FQDN になります。上記の例では、W&B の FQDN はwandb-aws.wandb.mlとなり、Terraform は DNS のzone_idで指定されたゾーンに FQDN レコードを作成します。allowed_inbound_cidrとallowed_inbound_ipv6_cidrの両方も設定する必要があります。これらはモジュールの必須入力です。次の例では、すべてのソースから W&B インストールへのアクセスを許可します。 -
versions.tfファイルを作成します。 このファイルには、AWS に W&B をデプロイするために必要な Terraform および Terraform プロバイダーのバージョンが記載されています:AWS プロバイダーの設定方法については、Terraform 公式ドキュメントを参照してください。 W&B では、このドキュメントの冒頭で説明した リモートバックエンドの設定 もあわせて追加することを推奨しています。 -
variables.tfファイルを作成します Terraform では、terraform.tfvarsで設定するすべてのオプションに対して、対応する変数宣言が必要です。
推奨デプロイメント
これは最もシンプルなデプロイメントオプションの設定です。必須のコンポーネントをすべて作成し、最新バージョンの W&B を Kubernetes クラスターにインストールします。-
main.tfを作成します General Steps で作成したファイルと同じディレクトリに、次の内容でmain.tfファイルを作成します。 -
W&B をデプロイします
W&B をデプロイするには、次のコマンドを実行します。
Redis を有効にする
Redis を使用して SQL クエリをキャッシュし、メトリクスの読み込み時にアプリケーションの応答を高速化するには、main.tf ファイルに create_elasticache_subnet = true オプションを追加します。メッセージブローカー (キュー) を有効にする
SQS を使用する外部メッセージブローカーを有効にするには、main.tf ファイルに use_internal_queue = false オプションを追加します:W&B にはブローカーが組み込まれているため、この設定は任意です。このオプションを使用してもパフォーマンスは向上しません。
その他のリソース
その他のデプロイメントオプション
すべての設定を同じファイルに追加することで、複数のデプロイメントオプションを組み合わせることができます。各 Terraform モジュールにはさまざまなオプションが用意されており、標準オプションや、推奨デプロイメントのセクションで紹介している最小設定と組み合わせて使用できます。 利用可能なすべてのオプションについては、お使いのクラウドプロバイダー向けのモジュールドキュメントを参照してください。W&B 管理コンソールにアクセスする
W&B Kubernetes Operator には管理コンソールが付属しており、デプロイメントのステータスの確認、コンポーネントのメトリクスの表示、オペレーターレベルの設定の調整を行えます。管理コンソールには${HOST_URI}/console (例: https://wandb.company-name.com/console) からアクセスできます。
管理コンソールには、次の 2 つの方法でログインできます。
- オプション 1(推奨)
- オプション 2
-
ブラウザーで W&B アプリケーションを開いてログインします。
${HOST_URI}/(例:https://wandb.company-name.com/) から W&B アプリケーションにログインします。 -
コンソールにアクセスします。右上隅のアイコンをクリックし、System console をクリックします。System console エントリは、管理者権限を持つユーザーにのみ表示されます。

W&B Kubernetes Operator を更新する
このセクションでは、W&B Kubernetes Operator 自体を更新する方法について説明します。バグ修正や新しいリコンサイル機能を適用するため、オペレーターを定期的に更新してください。- W&B Kubernetes Operator を更新しても、W&B Server アプリケーションは更新されません。
- W&B Kubernetes Operator を使用しない Helm チャートを使用している場合は、このセクションの手順で W&B Operator を更新する前に、移行手順を参照してください。
-
helm repo updateでリポジトリを更新します。 -
helm upgradeで Helm チャートを更新します。
W&B Server アプリケーションを更新する
W&B Kubernetes Operator を使用している場合、W&B Server アプリケーションを手動で更新する必要はなくなりました。 W&B ソフトウェアの新しいバージョンがリリースされると、オペレーターが W&B Server アプリケーションを自動的に更新します。MySQL を 8.4.x にアップグレードする
MySQL 8.0.x はサポート終了となりました。セルフマネージドのデプロイでは、セキュリティパッチと重要なバグ修正が提供される、サポート対象の MySQL バージョンを実行する必要があります。コミュニティ版の MySQL を実行している場合は、MySQL 8.4.x をインストールするか、8.4.x にアップグレードしてください。マネージドサービスを使用している場合は、プロバイダーがサポート対象かつパッチ適用済みとして明記しているエンジンバージョンを実行してください (例: Amazon RDS for MySQL、Google Cloud SQL for MySQL、Azure Database for MySQL) 。W&B は、MySQL 8.4.0 および現行の 8.4.x リリースでプラットフォームの動作を検証済みです。 以下の手順は、W&B 側から見た作業の流れを示したものです。バックアップやバージョンの移行パスなど、MySQL 自体のアップグレード方法については、ご使用の MySQL ディストリビューションまたはクラウドプロバイダーのドキュメントに従ってください。この手順は、標準とエアギャップのどちらの Operator デプロイメントにも共通です。エアギャップ環境では、データベースをアップグレードする前に、社内の配布プロセスを通じて MySQL 8.4.x ソフトウェアを入手してください。作業を開始する前に、メンテナンス期間を計画し、ユーザーに通知してください。互換性やデプロイメントのトポロジについてご質問がある場合は、Customer Support または W&B の担当チームにお問い合わせください。
- 移行先のバージョンと、その間にあるすべてのバージョンについて MySQL のリリースノートとドキュメントを確認し、要件などの詳細を把握します。
- メンテナンスの準備をします。 アップグレードを開始する前に、データベースに対して MySQL Shell upgrade checker を実行すると、移行先バージョンとの互換性の問題を洗い出して修正できます。次に進む前に、チェッカーの出力に含まれるエラーや警告をすべて解決してください。詳しくは、ご使用の MySQL ディストリビューションのドキュメントを参照してください。
- ご使用の MySQL ディストリビューションのドキュメントに従って MySQL をシャットダウンし、MySQL データベースのフルバックアップを取得します。 アップグレード中は MySQL を利用できません。その間、W&B クライアントアプリケーションは接続できず、一時的なエラーが発生します。
- ご使用の MySQL ディストリビューションのドキュメントに従って、MySQL を 8.4.x にアップグレードします。
- MySQL を再起動し、正常に動作していることを確認します。
-
MySQL が起動したら、
wandb verifyを実行して W&B デプロイメントを検証します。このコマンドは一連のチェックを実行し、結果をSTDOUTに出力します。問題が報告された場合は、必要な修正を行ってから再度実行してください。セットアップとログインの手順については、インストールを確認するを参照してください。 - 検証が完了すると、ユーザーは通常どおり作業を再開できます。
アップグレード時の ClickHouse 互換性
外部の ClickHouse クラスターを使用するセルフマネージドのデプロイでは、W&B Server をアップグレードする前に ClickHouse との互換性を確認する必要があります。サポートされる ClickHouse バージョン
W&B Weave を使用するには、ClickHouse Server と ClickHouse Keeper の両方がサポート対象のバージョンである必要があります。- Weave は ClickHouse 25.8 から 25.12 まで、および 26.3 以降をサポートします。
- Weave は ClickHouse 26.1 および 26.2 では動作しません。
セルフマネージドのインスタンスを W&B Operator に移行する
このセクションでは、W&B Server のインストールを自身で管理する運用から、W&B Operator に管理を任せる運用へ移行する方法について説明します。移行すると、オペレーターがリコンサイルと W&B Server のアップグレードを自動的に行うため、アプリケーションのマニフェスト変更や Helm のアップグレードを自分で調整する必要がなくなります。移行手順は、W&B Server のインストール方法によって異なります。W&B Operator は、W&B Server のデフォルトかつ推奨のインストール方法です。ご不明な点がある場合は、Customer Support または W&B の担当チームにお問い合わせください。
- 公式の W&B Cloud Terraform モジュールを使用した場合は、該当するドキュメントにアクセスし、その手順に従ってください。
- W&B Non-Operator Helm チャートを使用した場合は、オペレーターベースの Helm チャートに移行するを参照してください。
- W&B Non-Operator Helm チャートを Terraform で使用した場合は、オペレーターベースの Terraform Helm チャートに移行するを参照してください。
- マニフェストを使用して Kubernetes リソースを作成した場合は、オペレーターベースの Helm チャートに移行するを参照してください。
オペレーターベースの AWS Terraform モジュールへの移行
移行プロセスの詳細については、operator-wandb チャートのドキュメントを参照してください。オペレーターベースの Google Cloud Terraform モジュールへの移行
ご不明な点がある場合やサポートが必要な場合は、Customer Support または W&B の担当チームにお問い合わせください。オペレーターベースの Azure Terraform モジュールへの移行
ご不明な点がある場合やサポートが必要な場合は、Customer Support または担当の W&B チームまでお問い合わせください。オペレーターベースの Helm チャートへの移行
オペレーターベースの Helm チャートに移行するには、次の手順に従います。-
現在の W&B の設定を取得します。オペレーターベースではないバージョンの Helm チャートで W&B をデプロイした場合は、次のように値をエクスポートします。
Kubernetes マニフェストで W&B をデプロイした場合は、次のように値をエクスポートします。これで、次のステップに必要な設定値がすべて揃いました。
-
operator.yamlという名前のファイルを作成します。設定リファレンスに記載されている形式に従い、ステップ 1 で取得した値を使用します。 -
現在のデプロイメントの Pod 数を 0 にスケールします。これにより、現在のデプロイメントが停止します。
-
Helm チャートのリポジトリを更新します。
-
新しい Helm チャートをインストールします。
-
新しい Helm チャートを設定し、W&B アプリケーションのデプロイメントをトリガーします。次のコマンドで新しい設定を適用します。
デプロイメントが完了するまで数分かかります。
- インストールを確認します。インストールを確認するの手順に従って、すべてが正常に動作していることを確認してください。
- 古いインストールを削除します。古い Helm チャートをアンインストールするか、マニフェストで作成したリソースを削除します。
オペレーターベースの Terraform Helm チャートに移行する
オペレーターベースの Helm チャートに移行するには、次の手順に従います。- Terraform の設定を準備します。Terraform の設定に含まれる旧デプロイメントの Terraform コードを、Helm Terraform モジュールで W&B をデプロイする で説明しているコードに置き換えます。変数は以前と同じ値を設定してください。
.tfvarsファイルがある場合は、変更しないでください。 - Terraform を実行します。
terraform init、terraform plan、terraform applyを実行します。 - インストールを確認します。インストールを確認する の手順に従って、すべてが正常に動作することを確認します。
- 旧インストールを削除します。旧 Helm チャートをアンインストールするか、マニフェストで作成したリソースを削除します。
W&B Server の設定リファレンス
このセクションでは、WeightsAndBiases カスタムリソースで指定する設定オプションについて説明します。operator.yaml ファイルを作成または更新する際に、特定のサブシステム (MySQL、Redis、イングレス、OIDC など) の YAML スキーマを確認するためのリファレンスとしてご利用ください。
このセクションでは、W&B Server アプリケーションの設定オプションについて説明します。アプリケーションの設定は、WeightsAndBiases という名前のカスタムリソース定義を通じて渡されます。一部の設定オプションは、以下の設定で指定できます。それ以外のオプションは、環境変数として設定する必要があります。
環境変数の一覧は、基本と高度の 2 つのドキュメントに分かれています。環境変数は、必要な設定オプションを Helm チャートで指定できない場合にのみ使用してください。
基本的な例
この例では、W&B に必要な最小限の値を定義します。より実践的な本番環境向けの例については、完全な設定例を参照してください。 この YAML ファイルでは、バージョン、環境変数、データベースなどの外部リソース、その他の必要な設定を含め、W&B デプロイメントのあるべき状態を定義します。完全な設定例
この設定例では、Google Cloud Storage を使用して W&B を Google Cloud Anthos にデプロイします。ホスト
オブジェクトストレージ (バケット)
AWSkmsKey は null にする必要があります。
accessKey と secretKey をシークレットから参照するには、次のように設定します。
MySQL
password を参照するには、次のようにします。
License
license を参照するには、次のようにします。
Ingress
Kubernetes の Ingress クラスを特定する方法を参照してください。 TLS なしカスタム Kubernetes サービスアカウント
W&B の Pod の実行に使用するカスタム Kubernetes サービスアカウントを指定します。 次のスニペットでは、デプロイメントの一部として、指定した名前のサービスアカウントを作成します。create: false を設定します。
外部 Redis
password を参照するには、次のようにします。
LDAP
LDAP を設定するには、global.extraEnv に環境変数を指定します。
OIDC SSO
authMethod は省略可能です。
SMTP
環境変数
レート制限を設定する
オペレーターを使用する専用クラウドおよびセルフマネージドのデプロイでは、必要に応じてspec.values.global.extraEnv に環境変数を設定し、レート制限を構成できます。参考までに、この例では各レート制限を明示的にデフォルト値に設定しています。実際の運用では、デフォルト値を上書きする場合にのみレート制限を定義してください。
カスタム認証局
customCACerts はリスト形式で、複数の証明書を指定できます。customCACerts で指定した認証局は、W&B Server アプリケーションにのみ適用されます。
ConfigMap を使用する場合、ConfigMap 内の各キーの末尾は
.crt にする必要があります (例: my-cert.crt、ca-cert1.crt) 。update-ca-certificates が各証明書を解析してシステムの CA ストアに追加するには、この命名規則に従う必要があります。カスタムセキュリティコンテキスト
各 W&B コンポーネントでは、次の形式のカスタムセキュリティコンテキスト設定がサポートされています。runAsGroup: に指定できる値は 0 のみです。それ以外の値を指定するとエラーになります。app セクションを追加します。
console、weave、weave-trace、parquet にも同じ考え方が当てはまります。
W&B Operator の設定リファレンス
このセクションでは、W&B Kubernetes Operator (wandb-controller-manager) の設定オプションについて説明します。オペレーターは、YAML ファイル形式で設定を受け取ります。
W&B Kubernetes Operator は、デフォルトでは設定ファイルを必要としません。必要に応じて設定ファイルを作成してください。たとえば、カスタム認証局を指定する場合や、エアギャップ環境にデプロイする場合などには、設定ファイルが必要になることがあります。
spec でカスタマイズできる項目の一覧は、Helm リポジトリで確認できます。
カスタム CA
カスタム認証局 (customCACerts) はリスト形式で、複数の証明書を指定できます。追加した認証局は、W&B Kubernetes Operator (wandb-controller-manager) にのみ適用されます。
ConfigMap 内の各キーは、末尾を
.crt にする必要があります (例: my-cert.crt、ca-cert1.crt) 。update-ca-certificates が各証明書を解析してシステムの CA ストアに追加するには、この命名規則に従うことが必須です。よくある質問
各 Pod の目的と役割
W&B Server のデプロイメントには、次の Pod が含まれます。wandb-app: GraphQL API とフロントエンドアプリケーションを含む、W&B の中核となる Pod です。W&B プラットフォームの機能の大部分を担います。wandb-console: 管理コンソールです。/consoleからアクセスします。wandb-otel: OpenTelemetry エージェントです。Kubernetes レイヤーのリソースからメトリクスとログを収集し、管理コンソールに表示します。wandb-prometheus: Prometheus サーバーです。さまざまなコンポーネントからメトリクスを取得し、管理コンソールに表示します。wandb-parquet:wandb-appPod とは別のバックエンドマイクロサービスで、データベースのデータを Parquet 形式でオブジェクトストレージにエクスポートします。wandb-weave: もう 1 つのバックエンドマイクロサービスで、UI でのクエリ表の読み込みを行うほか、アプリのさまざまな中核機能をサポートします。wandb-weave-trace: LLM ベースのアプリケーションのトラッキング、実験、評価、デプロイ、改善を行うためのフレームワークです。このフレームワークにはwandb-appPod 経由でアクセスします。
W&B Operator Console のパスワードを取得する方法
W&B 管理コンソールにアクセスするを参照してください。Ingress が機能しない場合に W&B Operator Console にアクセスする方法
Kubernetes クラスターにアクセスできるホストで、次のコマンドを実行します。https://localhost:8082/ にアクセスして、コンソールを開きます。
パスワードの取得方法 (オプション 2) については、W&B 管理コンソールにアクセスするを参照してください。
