AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

Terraform を使用してテンプレートから Atlas クラスターを作成

このページでは、Visual Studio Code 用のMongoDB拡張機能に含まれる Terraform ファイルの Atlas テンプレートを使用して Flex クラスターを作成する方法について説明します。

テンプレートを読み込んだ後、クラスターを構成し、Atlas アカウントの詳細を指定します。次に、Terraform コマンドを使用して Atlas クラスターを計画、適用、破棄します。

Visual Studio Code 用の MongoDB 拡張機能に含まれる Terraform ファイルの Atlas テンプレートを使用する前に、次の操作を行う必要があります。

VS Code 拡張機能に含まれる Terraform ファイルの Atlas テンプレートを使用して、Atlas クラスターを構成します。

1
オペレーティング システム
方式
アクション

Any

Visual Studio Code メニュー

File > New File

MacOS

キーボード ショートカット

Command + N を押します

Windows および Linux

キーボード ショートカット

Control + N を押します

2

注意

main.tf は、Terraform モジュールへのエントリ ポイントに推奨されるファイル名です。

3

VSCode 用のMongoDB拡張機能は、Flex クラスターを作成するためにMongoDB Atlas Terraform プロバイダーを使用して例構成をファイルに入力します。

4

カーソルが移動して、mongodbatlas_project リソースの name 引数の値を選択します。

クラスターを構成するには、次の引数に値を指定します。

Tip

Tab キーを押して、テンプレート内で更新する次の引数を選択します。

属性
値

mongodbatlas_project
.name

この構成によって作成される Atlas プロジェクトの名前。

mongodbatlas_advanced_cluster
.name

この構成によって作成される Atlas Flex クラスターの名前。

mongodbatlas_advanced_cluster
.replication_specs.
region_configs.
backing_provider_name

この構成で作成される Atlas Flex クラスターがホストされるプロバイダー。許容される次の値のいずれかを選択します。

  • AWS

  • AZURE

  • GCP

mongodbatlas_advanced_cluster
.replication_specs.
region_configs.
region_name

この構成で作成される Atlas Flex クラスターが配置されるリージョン。選択したリージョンが Flex クラスターをサポートしていることを確認します。

各プロバイダーがサポートするリージョンの詳細については、Atlas ドキュメントの次のセクションを参照してください。

5

警告

local 変数には機密情報が含まれています。これらの値を、公開されているリポジトリにチェックインしないでください。

次の local 変数に値を指定します。

変数
値

mongodb_atlas_client_id

Atlas サービス アカウントクライアントID。

mongodb_atlas_client_secret

Atlas サービス アカウントクライアントシークレット。

mongodb_atlas_org_id

プロジェクトを作成する Atlas 組織 ID。

mongodb_atlas_database_username

Atlas がクラスター用に作成する MongoDB データベース ユーザーのユーザー名。

mongodb_atlas_database_user_password

mongodb_atlas_database_username で指定された MongoDB データベース ユーザーのパスワード。

mongodb_atlas_accesslistip

Atlas クラスターにアクセスできる IP アドレスまたは CIDR ブロック。

注意

テンプレートは、サービス アカウントを使用して Atlas を認証します。 APIキーもサポートされていますが、認証方法としてはサービス アカウントが推奨されます。どちらの方法についても、「 MongoDB Atlas Terraform プロバイダー認証ガイド 」を参照してください。

例

入力変数ファイルを使用してセキュリティを最大化する

セキュリティを最大限に高めるには、次の手順を実行することを検討してください。

  1. local入力変数ファイルで 変数を定義します。

    variable "mongodb_atlas_client_id" {
    default = "my-client-id"
    }
    variable "mongodb_atlas_client_secret" {
    default = "my-client-secret"
    }
  2. 入力変数ファイルをリポジトリから除外します。たとえば、リポジトリの .gitignore ファイルにファイル名を追加します。

  3. main.tf ファイル内の入力変数ファイルから変数を参照するには、先頭に var. を付けます。

    provider "mongodbatlas" {
    client_id = var.mongodb_atlas_client_id
    client_secret = var.mongodb_atlas_client_secret
    }
6

サポートされている構成オプションの完全なリストについては、MongoDB Atlas Terraform プロバイダーのドキュメント を参照してください。

本番環境の配置については、クラスターリソースを本番環境のベストプラクティスのデフォルトにバンドルされている公式のMongoDB Atlas Cluster モジュールを検討してください。

注意

Flex クラスターは、MongoDB Atlas Terraform プロバイダーで利用可能なすべての構成をサポートしていません。サポートされていない構成のリストについては、 Atlas のドキュメント を参照してください。

7

テンプレートを使用して Terraform ファイルを作成したら、Atlas クラスターを作成します。

1
2

次の出力は、MongoDB Atlas Terraform プロバイダーがインストールされ、使用できる状態であることを示しています。

terraform init
3

次の出力は、Terraform 構成を適用した場合に何が起こるかを示しています。

terraform plan

情報が正しい場合は次の手順に進みます。

4

構成を適用するかどうかを確認するプロンプトが表示されたら、yes と入力します。

注意

terraform apply コマンドが完了するまでに数分かかる場合があります。

次の出力は、Atlas クラスターが作成されたことを示しています。表示される接続文字列を使用して、 VS Code拡張機能を使用して、この配置への 接続を作成 できます。

terraform apply

警告

クラスターを削除すると、そのクラスターに保存されているデータベース、コレクション、ドキュメント、およびクラスターを構成した Terraform 構成で定義されているその他すべてのリソースが破棄されます。

慎重に進む必要があります。

Atlas クラスターを削除するには、次の手順に従います。

1
2
terraform destroy

構成で定義されているリソースを破棄するかどうかを確認するプロンプトが表示されたら、yes と入力します。

注意

terraform destroy コマンドが完了するまでに数分かかる場合があります。

次の出力は、Atlas クラスターと関連するすべてのリソースが削除されたことを示しています。

Destroy complete! Resources: 4 destroyed.