Atlas エフェメラル クラスターである一時的な無料クラスター(M0)を使用して、 MongoDBでビルドとテストを行います。このクラスターは Atlas アカウントやAPIキーなしで作成および接続できます。エフェメラル クラスターは、 AIコーディングエージェント、または 1 つを扱う開発者が、 新しいプロジェクト の開始、アプリケーションのプロトタイプ 、または アイコンをテストするためにオンデマンドのデータベースを必要とする場合に適しています。
エフェメラル クラスターを作成し、1 分未満で使用できる接続文字列を取得するには、次のエンドポイントに POSTリクエストを送信します。
https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters:create
完全なワークフロー、必要なヘッダー、および応答の詳細については、 クイック スタート を参照してください。
エフェメラル クラスターをクレームしない限り、Atlas は作成から 2 日後にクラスターを一時停止し、作成から 7 日後に削除します。クラスターをクレームするには、作成応答から claimUrl を開き、Atlas にサインインします。クレームを行うと、エフェメラル クラスターが有効期限のない標準の 無料クラスターに変換されます。エージェントは自律的にクラスターを作成し、接続できますが、それを要求できるのは人間のみです。
エフェメラル クラスターの仕様と制限
エフェメラル クラスターは、有効期限が制限された Atlas 無料クラスター(M0)です。データを読み書きするには、作成応答によって返された接続文字列を使用してクラスターに接続できます。クラスターを要求するまでは、クラスター層を増やす、データベースユーザーを追加すること、 IPアクセスを制限すること、またはその他の管理操作を実行することはできません。
クレームされていないエフェメラル クラスターには、次の固定仕様があります。
クラスター階層: 無料(
M0)。クラウドプロバイダーとリージョン:
AWSus-east-1。IPアクセス: クラスターは任意のIPアドレス(
0.0.0.0/0)からの接続を許可します。有効期限は限られています: クラスターをクレームしない限り、Atlas2 7は作成済みのドキュメントを 日間一時停止し、作成した 日間に削除します。一時停止中は、クラスターにアクセスできません。
エフェメラル クラスターは 無料クラスターであるため、次のようなすべての 無料クラスターの制限も適用されます。
ストレージ:512 インデックスを含む最大 MB。
MongoDBサーバーバージョン:8.0
スループット:100 1 秒あたりの合計読み取り操作と書込み操作の最大 。
接続数: 最大500 の同時接続数。
無料クラスターの制限の詳細なリストについては、「 Atlas 無料クラスターの制限 」を参照してください。
クイック スタート: エフェメラルクラスターの作成と接続
次のワークフローを使用して、エフェメラル クラスターを作成し、接続します。 AIコーディングエージェントは、人間の介入なしにこのワークフローのすべてのステップを完了できます。
エフェメラル クラスターを作成します。
次のエンドポイントに POSTリクエストを送信します。
https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters:create
リクエストには次の Accept ヘッダーが必要です。
Accept: application/vnd.atlas.preview+json
次のリクエストの例では、Cluster0 という名前のエフェメラル クラスターが作成されます。
curl -sS -X POST 'https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters:create' \ -H 'Accept: application/vnd.atlas.preview+json' \ -H 'Content-Type: application/json' \ -d '{"clusterName": "Cluster0"}'
作成エンドポイントは、次の形式で応答を返します。
{ "claimUrl": "https://account.mongodb.com/account/register?claimId={claimId}", "clusterId": "{clusterId}", "connectionString": "mongodb+srv://{username}:{password}@{host}/", "expiresAt": "{timestamp}", "status": "PROVISIONING", "termsOfService": "By using this API and any resources provisioned through it, you agree to be bound by MongoDB's Cloud Terms of Service at https://www.mongodb.com/legal/terms-and-conditions/cloud; and Privacy Policy at https://www.mongodb.com/legal/privacy/privacy-policy." }
応答には、次のフィールドが含まれます。
claimUrl: このエフェメラル クラスターをクレームするためのユニークURL 。人間はブラウザでこのURLを開く必要があります。クラスターの作成後、7 日間有効です。clusterId: エフェメラル クラスターの一意の識別子。クラスターのstatus、claimUrl、およびその他の詳細を取得するには、次のエンドポイントにGETリクエストを送信して、{clusterId}をこの値に置き換えます。https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters/{clusterId}詳細については、「 1 つのエフェメラル Atlas クラスターを返す 」を参照してください。
connectionString:mongodb+srv://プロトコルを使用してエフェメラル クラスターに接続する接続文字列。クラスター内のデータの読み取りと書込みができる自動生成されたデータベースユーザーのユーザー名とパスワードが含まれます。この接続文字列を使用するクライアントは、このデータベースユーザーとして認証されます。作成応答は、Atlas が編集されていないパスワードを返す回数です。expiresAt: クラスターが要求されていない場合に Atlas がクラスターを一時停止する日時。一時停止されたエフェメラル クラスターは、クレームするまでアクセスできません。タイムスタンプは UTC の ISO8601 形式を使用します。status: エフェメラル クラスターのステータス。PROVISIONING、ACTIVE、またはPAUSEDのいずれか 1 つ。termsOfService: このAPIを使用すると、MongoDB のクラウド サービス利用規約およびプライバシー ポリシーに同意したことになります。完全なタームへのリンクが含まれています。
作成エンドポイントの詳細については、「 エフェメラル Atlas クラスターを 1 つ作成する 」を参照してください。
接続文字列とクレーム値を保存します。
作成応答から、connectionString、claimUrl、clusterId を保存します。クラスターの詳細を取得、クレーム、取得するには、これらが必要です。
警告
connectionStringclaimUrl、 、clusterId をシークレットとして扱います。connectionString を持つユーザーは誰でもクラスターデータを読み書きできます。claimUrl clusterIdclaimUrlを持つユーザーは誰でもクラスターを自分の Atlas アカウントに要求でき、 を持つユーザーは get エンドポイントから を取得できます。 MongoDBサポートは、これらの値を回復したり、要求されたクラスターの所有権を転送したりすることはできません。
3 つの値すべてを安全な場所に保存し、クラスターを要求するユーザーがそれらを取得できるようにします。例、 は、共有シークレット マネージャーまたは Git 無視のローカル .envファイルを使用します。そのロケーションにある既存のシークレットを上書きしないでください。
エフェメラル クラスターに接続します。
作成応答の connectionString 値を使用して、次のような互換性のある環境からエフェメラル クラスターに接続します。
アプリケーション コード: クラスターに接続するクライアントオブジェクトを初期化するときに、プログラミング言語のMongoDBドライバーへの接続文字列を指定します。これは、アプリケーションから接続する場合の一般的な選択です。詳細については、「 クライアント ライブラリを使用したクラスターへの接続 」を参照してください。
コマンドライン: MongoDB Shell(
mongosh)への引数として接続文字列を指定し、コマンドを対話的に接続して実行します。コマンドライン接続の例mongosh "<connectionString>"
利用可能な接続方法の詳細については、「 考慮事項 」を参照してください。
注意
エフェメラル クラスターでは、任意のIPアドレス(0.0.0.0/0)からの接続が許可されます。クラスターをクレームするときに、 IPアクセスを制限できます。
(任意) エフェメラル クラスターを要求します。
エフェメラル クラスターのクレームは任意です。クラスターをクレームしない場合、Atlas2 は作成から 日後にクラスターを一時停止し、作成から7 日後に削除します。クラスターを要求すると、Atlas はそれを有効期限のない標準の 無料クラスターに変換します。要求されたクラスターはそのクラスターのすべてのデータを保持し、保存した接続文字列は同じ認証情報で引き続き動作します。クレームの影響の詳細については、「 エフェメラル クラスターのクレーム 」を参照してください。
クラスターを要求するには、人間がブラウザで Atlas にサインインする必要があります。次のいずれかのオプションを選択します。
今すぐクレーム:
claimUrlは、クラスターをクレームするユーザーのみと共有します。 「 エフェメラルクラスターの要求 」の手順に従ってクラスターを要求できます。後で請求する:
claimUrlを安全な場所に保存し、クラスターを請求するユーザーが引き続き使用できるようにします。その後は、作成から7 日以内にいつでもクラスターを要求できます。クレームは絶対にありません:アクションは実行されません 。 Atlas は作成から7 日後にクラスターを削除します。
エフェメラル クラスターの要求
エフェメラル クラスターのクレームは任意です。クラスターをクレームしない場合、Atlas は作成から 2 日後にクラスターを一時停止し、作成から 7 日後に削除します。
エフェメラル クラスターを要求すると、Atlas は次の変更を行います。
クラスターの有効期限を延長します。Atlas はエフェメラル クラスターを、有効期限のない標準の 無料クラスターに変換します。クレームされたクラスターは、削除されるまで、または Atlas が30 日間非アクティブになって一時停止するまで使用可能なままです。
クラスターのデータと接続文字列を保持します。要求されたクラスターはそのすべてのデータを保持し、作成応答からの接続文字列は同じ認証情報で引き続き機能します。
クラスターをプロジェクトと組織に追加します 。Atlasでは、すべてのクラスターはプロジェクトに属し、すべてのプロジェクトは組織に属しています。 Atlas は、クラスターをクレームするアカウントが所有する新規または既存の組織内の新しいプロジェクトに、クレームしたクラスターを配置します。
クラスターへのフル アクセスの付与: クラスターをクレームするアカウントは、クラスターの組織の
Organization Ownerであり、その組織内のすべてのプロジェクトに ロールも付与されます。プロジェクト オーナーには、クラスターのデータの読み取りと書き込みを行うためのデータベースアクセスと、 Atlas UI、 Atlas CLI、または Atlas AdministrationProject OwnerAPIを使用してクラスターとそのプロジェクトを管理するための管理アクセスがあります。
AIコーディングエージェントは、エフェメラル クラスターを要求できません。クラスターを要求するには、人間がウェブ ブラウザで次のワークフローを完了する必要があります。
クレームURLから Atlas にサインインします。
ウェブ ブラウザで、作成応答から保存した
claimUrlを開き、Atlas ログイン ページにアクセスします。クレームURL の形式は次のとおりです。ここで、{claimId}は エフェメラル クラスターの一意の識別子です。https://account.mongodb.com/account/register?claimId={claimId}サインイン ページで、既存のアカウントで Atlas にサインインするか、新しいアカウントを作成します。次のステップでクラスターを要求すると、このアカウントにはクラスターへのデータベースと管理アクセスの両方が付与されます。
新しいアカウントを作成する場合は、続行する前にメールを確認してください。
注意
クレームURL は、クラスターをクレームする 唯一の 方法です。クラスターが作成された後、7 日で期限切れになります。クレームURL を紛失した場合は、次のいずれかの方法で取得します。
次のエンドポイントに
GETリクエストを送信し、{clusterId}を作成応答のclusterId値に置き換えます。https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters/{clusterId}応答には
claimUrlが含まれます。詳細については、「 1 つのエフェメラル Atlas クラスターを返す 」を参照してください。AIコーディングエージェントがクラスターを作成した場合は、プロジェクトのローカル
.envファイルなど、claimUrlが保存されている可能性のある安全なロケーションを確認します。
エフェメラル クラスターを構成してクレームします。
サインインすると、Atlas にクレーム ページが表示されます。このページで、次の操作を実行します。
ドロップダウンから、既存の組織を選択するか、Create new org for this cluster を選択して組織を作成します。クラスターを要求すると、Atlas はそれを選択した組織に移動し、そのクラスターのプロジェクトを作成します。
重要
[]
Organization Ownerドロップダウンには、Atlas アカウントが ロールを持つ組織のみがリストされます。クラスターをクレームすると、選択した組織内のすべての組織オーナーがクラスターとそのデータを管理できるようになります。IPアクセスを構成します。アクセスを制限するには、
0.0.0.0/0を削除し、現在のIPアドレスのみを許可します(推奨)。任意のIPアドレスからの接続を許可するには、0.0.0.0/0を維持します。プロジェクトの Network Access 設定では、後でIPアクセスを制限できます。[Claim Cluster をクリックします。これは元に戻すことができない 1 回限りのアクションです。
(任意)要求されたクラスターを再構成します。
Atlas UI、 Atlas CLI 、または Atlas Administration APIを使用して、クレームしたクラスターとそのプロジェクトを再構成できます。クラスター レベルでは、クラスターをより高い階層に増やすストレージ を増やすことができます。プロジェクトレベルでは、データベースユーザーを管理し、 IPアクセスを制限してセキュリティを強化できます。詳細については、 「クラスターの管理」 を参照してください。
エフェメラル クラスターAPIリファレンス
次の Atlas Administration APIエンドポイントを使用して、エフェメラル クラスターを作成し、そのステータス、接続、クレームの詳細を取得します。詳細については、Atlas Administration API仕様の「 1 つのエフェメラル Atlas クラスターの作成 」および「 1 つのエフェメラル Atlas クラスターの返却 」を参照してください。
注意
エフェメラル クラスターは、 Atlas CLI、HashiCorp Terraform MongoDB Atlas Provider、またはその他のインターフェースではなく、 Atlas Administration APIを使用してのみ作成できます。
1 つのエフェメラル Atlas クラスターを作成
エフェメラル クラスターを作成し、その接続とクレームの詳細を返します。
メソッド:POST
エンドポイント: https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters:create
パス パラメータ: なし。
クエリ パラメータ: なし。
リクエスト ヘッダー:
ヘッダー | 必須 | 値 |
|---|---|---|
| はい |
|
| リクエスト本文のみ |
|
リクエスト本文:
リクエスト本文は任意です。ボディを送信する場合は、次のフィールドを含めます。
フィールド | タイプ | 必須 | 説明 |
|---|---|---|---|
| string | No | エフェメラル クラスターを識別する、人間が判読できるラベル。デフォルトは |
例のリクエスト :
curl -sS -X POST 'https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters:create' \ -H 'Accept: application/vnd.atlas.preview+json' \ -H 'Content-Type: application/json' \ -d '{ "clusterName": "my-ephemeral-cluster" }'
成功ステータス コード:201 Created
成功応答フィールド:
次のフィールドに新しいクラスターの詳細を返します。
フィールド | タイプ | 説明 |
|---|---|---|
| string(URI) | このエフェメラル クラスターを要求するための一意のURL 。 Atlas のサインインまたは登録のページにリダイレクトします。ここでは、ユーザーはクラスターを要求するためにサインインまたはアカウントを作成します。クラスターの作成後、7 日間有効です。 |
| string | エフェメラル クラスターの一意の識別子です。このID を使用して、 |
| string |
|
| string(ISO 8601、UTC) | クラスターが一時停止され、要求されるまでアクセスできなくなる日時。このパラメータは、UTC の ISO タイムスタンプ形式で値を表します。8601 |
| string(列挙) | エフェメラル クラスターのステータス。 |
| string | このAPIを使用することで、MongoDB のクラウド サービス利用規約とプライバシー ポリシーに同意したことになります。完全なタームへのリンクが含まれています。 |
応答ヘッダー:
ヘッダー | で返される | 説明 |
|---|---|---|
|
| ユーザーが特定の 時間ウィンドウ内に実行できるリクエストの最大数。 |
|
| 制限に達する前に、現在のレート制限ウィンドウ内に残っているリクエストの数。 |
|
| APIリクエストを再試行するまでに待機する最小時間(秒単位)。 |
エラー ステータス コード:
注意
429エラーが発生した場合は、エフェメラル クラスターを作成するための共有制限に達しています。代わりに、有効期限のない同じクラスター層を提供する標準の 無料クラスターを配置できます。 Atlas CLI を使用して無料クラスターを作成し、接続する方法については、「 開始 」を参照してください。
ステータス | 説明 |
|---|---|
| 無効なリクエストです。 |
| リクエストが多すぎます。 |
| 内部サーバーエラー。 |
1 つのエフェメラル Atlas クラスターを返す
1 つのエフェメラル クラスターの詳細を返します。
メソッド:GET
エンドポイント: https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters/{clusterId}
パス パラメータ:
Parameter | タイプ | 必須 | 説明 |
|---|---|---|---|
| string | はい | 検索対象のエフェメラル クラスターの一意のID 。 |
クエリ パラメータ: なし。
リクエスト ヘッダー:
ヘッダー | 必須 | 値 |
|---|---|---|
| はい |
|
リクエスト本文: なし。
例のリクエスト :
curl -sS -X GET 'https://cloud.mongodb.com/api/atlas/v2/unauth/ephemeralClusters/{clusterId}' \ -H 'Accept: application/vnd.atlas.preview+json'
成功ステータス コード:200 OK
成功応答フィールド:
次のフィールドにクラスターの現在のステータスと詳細を返します。
フィールド | タイプ | 説明 |
|---|---|---|
| string(URI) | このエフェメラル クラスターを要求するための一意のURL 。 Atlas のサインインまたは登録のページにリダイレクトします。ここでは、ユーザーはクラスターを要求するためにサインインまたはアカウントを作成します。クラスターの作成後、7 日間有効です。 |
| string | エフェメラル クラスターの一意の識別子です。このID を使用して、 |
| string |
|
| string(ISO 8601、UTC) | クラスターが一時停止され、要求されるまでアクセスできなくなる日時。このパラメータは、UTC の ISO タイムスタンプ形式で値を表します。8601 |
| string(列挙) | エフェメラル クラスターのステータス。 |
| string | このAPIを使用することで、MongoDB のクラウド サービス利用規約とプライバシー ポリシーに同意したことになります。完全なタームへのリンクが含まれています。 |
応答ヘッダー:
ヘッダー | で返される | 説明 |
|---|---|---|
|
| ユーザーが特定の 時間ウィンドウ内に実行できるリクエストの最大数。 |
|
| 制限に達する前に、現在のレート制限ウィンドウ内に残っているリクエストの数。 |
|
| APIリクエストを再試行するまでに待機する最小時間(秒単位)。 |
エラー ステータス コード:
ステータス | 説明 |
|---|---|
| 無効なリクエストです。 |
| 見つかりません。 |
| リクエストが多すぎます。 |
| 内部サーバーエラー。 |