0

以前、terraform で tfstate ファイルを S3 に配置できる terraform を使用したことがあります。Terraform はバックエンドとして Azure BLOB ストレージもサポートしていますか? バックエンドを Azure BLOB ストレージに設定するコマンドは何ですか?

4

2 に答える 2

1

Terraform 0.7 (現在はリリースされていませんが、ソースからコンパイルできます)の時点で、Azure BLOB ストレージのサポートが追加されました。

于 2016-07-21T07:15:54.973 に答える
0

質問はいくつかのコマンドを要求するので、誰かがそれを必要とする場合に備えて、もう少し詳細を追加します. Terraform v0.12.24 と azurerm プロバイダー v2.6.0 を使用しています。次の 2 つが必要です。

  1. 状態を格納するためのストレージ アカウント (汎用 v2) とコンテナーを作成します。
  2. 環境と main.tf を構成します

2 番目のポイントについては、main.tf の terraform ブロックに "azurerm" バックエンドが含まれている必要があります。

terraform {
  required_version = "=0.12.24"
  backend "azurerm" {
    storage_account_name = "abcd1234"
    container_name       = "tfstatecontainer"
    key                  = "example.prod.terraform.tfstate"
}

provider "azurerm" {
  version = "=2.6.0"
  features {}
  subscription_id = var.subscription_id
}

計画または適用を呼び出す前に、ARM_ACCESS_KEY 変数を bash エクスポートで初期化します。

export ARM_ACCESS_KEY=<storage access key>

最後に、init コマンドを実行します。

terraform init

ここで、terraform plan を実行すると、コンテナーに作成された tfstate が表示されます。Azure には、誰かが同時に状態ファイルを更新しようとした場合に備えて、ファイル ロック機能が組み込まれています。

于 2020-05-05T10:12:45.520 に答える