MongoDB Atlas を AWS Marketplace でサブスクライブし、利用してみた

AWSを利用しつつ、MongoDB Atlasを使ったことがない人向けに、アカウント作成からDBに接続確認までを記事にしました。
2023.04.18

はじめに

AWSを利用しつつ、DBとしてMongoDB Atlasを使いたい場合、AWS Marketplace からサブスクライブし利用することができます。

サブスクライブすることで、Atlasの利用料金の支払いは、AWSの請求経由で支払うことができます。

MongoDB AtlasをAWS Marketplaceでサブスクライブし、MongoDB Atlasアカウント作成後、DBに接続するまでをご説明します。

事前準備

  • AWSアカウントを作成しておく
  • MongoDB Atlasのアカウントは、未作成で構いません。

MongoDB AtlasをAWS Marketplaceでサブスクライブする

AWSアカウントにログイン後、AWSのMongoDB Atlasのサイトから、[AWS Marketplace を無料で試す]をクリックします。

AWS Marketplaceの MongoDB Atlasに遷移されました。[View purchase options]をクリックします。

[Subscribe]をクリックすると、AWS側の設定は、完了です。

ちなみに、こちらでサブスクライブした製品一覧を確認することができます

MongoDB Atlasのアカウント作成

先程の画面のうち、[Set up your account]をクリックすると、MongoDB Atlasのサイトに遷移します。

今回は、Googleアカウントを利用してMongoDB Atlasのアカウントを作成しますので、Googleをクリックします。

これでMongoDB Atlasのアカウントが作成されました。

MongoDB Atlasの支払いは、AWSの請求経由で支払われることが確認できますね。

DBを作成

DBを作成します。

[Build a Database]をクリックします。

今回は、無料で利用できる共有版を作成します。

ProviderをAWSとし、Regionは、Tokyo (ap-northeast-1) を選択し、[Create]をクリックします。

設定方法は、以下の通りです。

  • 接続方法
    • ユーザー名とパスワード
      • ユーザー名とパスワードを入力し、[Create User]をクリックします
  • どこから接続するか
    • クラウド環境
    • セキュリティオプション:IP制限
      • [Add My Current IP Address]をクリックすると、自分が利用しているIPアドレスからのみDBを利用できます。

セキュリティ向上のため、IP制限は、必ず設定しましょう。

DBが作成されました。

DBにアクセスしてみる

ローカルからDBにアクセスしてみます

DBの[Connect]をクリックします

[Shell]を選択します

macOSの場合、下記のコマンドで、Macにmongoshをインストールし、ローカルからMongoDBに接続できます。

$ brew install mongosh

$ mongosh "mongodb+srv://cluster0.ouulxmk.mongodb.net/myFirstDatabase" --apiVersion 1 --username admin

Atlas atlas-f2lgff-shard-0 [primary] myFirstDatabase> show databases
admin  280.00 KiB
local    1.21 GiB

DB一覧を確認することができました。

IP制限を確認

許可しているIPを削除すると、DBに接続できないことを確認してみます

許可しているIPを[DELETE]します。

再度DBにローカルからアクセスしようとすると、MongoServerSelectionErrorとなりアクセスできませんでした。

$ mongosh "mongodb+srv://cluster0.ouulxmk.mongodb.net/myFirstDatabase" --apiVersion 1 --username admin
Enter password: *********
Current Mongosh Log ID:	xxxxxxxxxxxxxxxxxx
Connecting to:		mongodb+srv://<credentials>@cluster0.ouulxmk.mongodb.net/myFirstDatabase?appName=mongosh+1.8.0
MongoServerSelectionError: connection <monitor> to xx.xx.xx.xx:27017 closed

IP制限が機能していることが分かりました。

参考