このチュートリアルでは、オートメーション スクリプト開発中に一時的なテスト環境として使用する Atlas プロジェクトとクラスターを作成および削除する方法を説明します。このワークフローを使用して、テストの完了後にリソースを残さないようにテスト クラスターに対してスクリプトを検証します。
前提条件
始める前に、以下のものを用意してください。
Atlas user アカウント。
Atlas 組織とその組織ID。組織IDは、atlas organizations list Atlas CLI コマンドを使用して取得できます。
Atlas CLI がインストールされ、構成されていること。詳細については、「Atlas CLI のインストールまたは更新」および「Atlas CLI からの接続」を参照してください。
手順
一時的なプロジェクト、クラスター、データベースユーザーを作成します。
検証が終了したら削除できるテスト環境を作成するには、次の Atlas CLI コマンドを実行します。
atlas users describe コマンドを実行して、Atlas ユーザー ID を返します。
<userEmail>を Atlas user アカウントに関連付けられているメール アドレスに置き換えます。atlas users describe --username <userEmail> Atlas プロジェクト作成コマンドを実行して、Atlas 組織内に
myTempProjectという名前の新しいプロジェクトを作成します。<orgId>を組織ID に置き換え、<userId>を前の手順で検索した Atlas user ID に置き換えます。atlas projects create myTempProject --orgId <orgId> --ownerId <userId> 応答から作成したプロジェクトのプロジェクトIDを取得します。次の例の応答では、グループ ID は
64933bde48add154124e343fです。Project '64933bde48add154124e343f' created. または、 Atlasプロジェクト リストコマンドを使用して、プロジェクトIDを見つけることもできます。
atlas setup コマンドを実行して、新しいプロジェクトに Atlas クラスターとデータベースユーザーを作成します。次のコマンドは、一時的なユーザー
myTempUserを使用して、Amazon Web ServicesUS_EAST_1リージョンにM10クラスターを作成します。<password>をデータベースユーザーのパスワードに置き換え、<projectId>を作成したプロジェクトのグループ IDに置き換えます。重要
M10クラスターは無料ではありません。作成したクラスターは、削除するまで時間単位で課金されます。Atlas クラスターの課金について詳しくは、クラスターの構成コスト ドキュメントを参照してください。atlas setup --clusterName myTempCluster --provider AWS --region US_EAST_1 --tier M10 --username myTempUser --password <password> --currentIp --skipSampleData --projectId <projectId> --force Atlas がクラスターを作成すると、Atlas CLI はクラスターの接続文字列を提供し、
mongosh。 を介してクラスターに接続します。
一時プロジェクトへのプログラムによる認証を設定します。
オートメーション スクリプトから Atlas CLI コマンドを実行するには、オートメーションが Atlas コントロール プレーンにプログラムで認証する方法が必要です。これを行う方法の 1 つは、プロジェクトのサービス アカウントを作成し、その認証情報を環境に追加することです。
一時的なプロジェクトのサービス アカウントを作成します。
Atlas Administration API の使用を開始するの手順に従って、一時的なプロジェクトのサービスアカウントを作成します。サービス アカウントのクライアントIDとクライアント シークレットの値を保存します。
テスト環境にサービス アカウント認証情報を追加します。
スクリプトで対話型認証を必要とせずに Atlas CLI コマンドを実行できるようにするには、テスト環境にサービスアカウントの認証情報を追加する必要があります。これは、
MONGODB_ATLAS_CLIENT_IDとMONGODB_ATLAS_CLIENT_SECRET環境変数を設定して、テスト環境でatlas auth loginを実行するか、または、認証情報を名前付きプロファイルに追加し、スクリプト内の各 Atlas CLI コマンドに--profile <profileName>を追加することで行えます。
一時的なプロジェクト、クラスター、データベースユーザーを削除します。
次の Atlas CLI コマンドを実行して、テスト環境を削除します。これにより、テスト用に作成したすべてのリソースが正しく削除され、Atlas アカウントでの課金が停止されます。
Atlas クラスターの削除コマンドを実行して、一時的なクラスターとそのデータベースユーザーを削除します。
<projectId>を一時的なプロジェクトのグループ IDに置き換えます。atlas clusters delete myTempCluster --projectId <projectId> --force atlas projects delete コマンドを実行して一時プロジェクトを削除します。
<projectId>を一時プロジェクトのプロジェクトIDに置き換えます。atlas projects delete <projectId> --force 注意
一時クラスターのシャットダウンが完了するまでは、一時プロジェクトを削除できません。
CANNOT_CLOSE_GROUP_ACTIVE_ATLAS_CLUSTERSというエラーが表示された場合は、5 分待ってからatlas projects deleteコマンドを再度実行します。
atlas projects list コマンドを実行して、一時プロジェクトとクラスターが正常に削除されたことを確認できます。一時プロジェクトがリストに表示されない場合は、プロジェクトとクラスターの両方が正常に削除するされました。