Azureで W&B プラットフォーム を展開する
3 minute read
自己管理の W&B サーバーを選択した場合、W&B は W&B Server Azure Terraform Module を使用して Azure 上でプラットフォームをデプロイすることをお勧めします。
このモジュールのドキュメントは詳細で、使用可能なオプションがすべて含まれています。本書では、一部のデプロイメント オプションについて説明します。
開始する前に、Terraform の State File を保存するために利用可能な リモート バックエンド のいずれかを選択することをお勧めします。
State File は、アップグレードを展開したり、すべてのコンポーネントを再作成することなくデプロイメントの変更を行ったりするために必要なリソースです。
Terraform モジュールは、次の「必須」コンポーネントをデプロイします。
- Azure リソース グループ
- Azure 仮想ネットワーク (VPC)
- Azure MySQL Flexible サーバー
- Azure ストレージ アカウント & Blob ストレージ
- Azure Kubernetes サービス
- Azure アプリケーション ゲートウェイ
その他のデプロイメント オプションには、次のオプション コンポーネントが含まれる場合があります。
- Azure Cache for Redis
- Azure Event Grid
前提条件の権限
AzureRM プロバイダーを設定する最も簡単な方法は Azure CLI 経由ですが、Azure サービス プリンシパル を使用した自動化の場合も便利です。 使用される認証メソッドに関わらず、Terraform を実行するアカウントはイントロダクションで説明されているすべてのコンポーネントを作成できる必要があります。
一般的な手順
このトピックの手順は、このドキュメントでカバーされているいずれのデプロイメント オプションにも共通しています。
- 開発環境を準備します。
- Terraform をインストールします。
- 使用するコードで Git リポジトリを作成することをお勧めしますが、ファイルをローカルに保持することもできます。
-
terraform.tfvars
ファイルを作成しますtvfars
ファイルの内容はインストール タイプに応じてカスタマイズできますが、最低限の推奨事項は以下の例のようになります。ここで定義されている変数は、デプロイメントの前に決定する必要があります。
namespace
変数は、Terraform によって作成されるすべてのリソースの接頭辞となる文字列です。subdomain
とdomain
の組み合わせは、W&B が設定される FQDN を形成します。上記の例では、W&B の FQDN はwandb-aws.wandb.ml
となり、FQDN レコードが作成される DNSzone_id
が指定されます。 -
versions.tf
ファイルを作成します このファイルには、AWS に W&B をデプロイするのに必要な Terraform および Terraform プロバイダーのバージョンが含まれています。
AWS プロバイダーを設定するには、Terraform Official Documentation を参照してください。
また、強く推奨される のは、ドキュメントの冒頭で言及された リモート バックエンド設定 を追加することです。
- ファイル
variables.tf
を作成します。terraform.tfvars
で構成されたすべてのオプションについて、Terraform は対応する変数宣言を必要とします。
推奨デプロイメント
これは、すべての「必須」コンポーネントを作成し、最新バージョンの W&B
を Kubernetes クラスター
にインストールする最も簡単なデプロイメント オプション設定です。
main.tf
を作成しますGeneral Steps
で作成したファイルと同じディレクトリに、次の内容でmain.tf
ファイルを作成します:
-
W&B にデプロイ W&B にデプロイするには、次のコマンドを実行します:
terraform init terraform apply -var-file=terraform.tfvars
REDIS キャッシュを使用したデプロイメント
別のデプロイメント オプションとして、Redis
を使用して SQL クエリをキャッシュし、実験のメトリクスを読み込む際のアプリケーション応答を高速化します。
キャッシュを有効にするには、recommended deployment
(#recommended-deployment) で使用したのと同じ main.tf
ファイルに create_redis = true
オプションを追加する必要があります。
外部キューを使用したデプロイメント
デプロイメント オプション 3 は、外部の message broker
を有効にすることです。 これはオプションであり、W&B にはブローカーが組み込まれているため、パフォーマンスの向上はもたらされません。
message broker を提供する Azure リソースは Azure Event Grid
であり、有効にするには、recommended deployment
(#recommended-deployment) で使用したのと同じ main.tf
に use_internal_queue = false
オプションを追加する必要があります。
その他のデプロイメント オプション
3 つのデプロイメント オプションすべてを組み合わせて、すべての構成を同じファイルに追加できます。 Teraform モジュール は、標準オプションや recommended deployment に見られる最小構成と組み合わせることができるいくつかのオプションを提供します。
フィードバック
このページは役に立ちましたか?
Glad to hear it! If you have further feedback, please let us know.
Sorry to hear that. Please tell us how we can improve.