紙一重の積み重ね

アラフォーのエンジニアがなれる最高の自分を目指して、学んだことをこつこつ情報発信するブログです。

【はじめてのMongoDB Atlas】アカウント登録からCluster接続までやってみた

はじめに

MongoDBを使う必要があり、ローカルに入れるのは面倒だな、と思っていたところ、公式のマネージドサービスであるMongoDB Atlasの無料枠があることに気づいたので、セットアップ手順をまとめます。

MongoDB Atlasとは

MongoDB(JSONを格納するドキュメント型のNoSQL DB)の開発元であるMongoDB, Inc. が公式に提供しているMongoDBのマネージドサービス。

www.mongodb.com

AWSやAzureでもMongoDBが提供されているが、マネージドサービスとしての機能は公式が一番優れている。

方針

2020/8/13時点で、MongoDBAtlasの無料枠があるようなので、そちらを利用する

image

無料枠でできること

image

無料のクラウドデータベースに含まれています。

  • 512 MBのストレージ
  • 共有RAM
  • 高可用性のレプリカセット、エンドツーエンドの暗号化、自動パッチ、REST API

さらに、専用クラスタを起動すると、以下のアクセス権を得ることができます。 - 10 GB 以上のストレージ - 専用RAM - パフォーマンス最適化ツール - バックアップとポイントインタイムリカバリー - 暗号化キー管理、LDAP統合、粒度の高いデータベース監査を含むエンタープライズセキュリティ機能

アカウント作成、Cluster作成

https://www.mongodb.com/cloud/atlas/signup より、アカウント登録を行う。

image

FREEアカウントを選択。

image

クラウドプロバイダは、AWSを選択。 レコメンドがついていることと、日本から近そうなシンガポールリージョンを選択。

image

クラスター名は、作成後に変更できない、とのこと。 任意の名前を付与。

image

設定が完了したら、 Create Cluster をクリック

image

クラスター作成まで、1~3分ほどかかるので待つ。 Atlas接続までのステップを確認する。

image

database userの作成

Get Started をクリックすると、手順のヒントが表示される。

image

Database Access から設定するとのこと

image

Add New Database User をクリックする。

image

Userの作成

このアトラスプロジェクトのクラスタ内のデータベースとコレクションへのアクセスをアプリケーションまたはユーザーに許可するためのデータベースユーザーを作成します。詳細なアクセス制御は、デフォルトの権限またはカスタムロールで設定できます。対応するアクセス マネージャを使用して、アトラス プロジェクトまたは組織にアクセスを付与することができます。

AWS IAMでの認証も行えるが、ひとまず、 Password を選択する。 Database User Privileges は、デフォルトの Read and write to any database を選択する。

image

設定し終わったら、Add User をクリックする。

image

ユーザーが作成されればOK。

image

IPアドレスをホワイトリストに登録する

Get Started より、3番目の手順を選択して、ヒントを表示する。

image

Network Access をクリックする。

image

Add IP Address をクリックする。

image

Atlasにアクセス可能なIPアドレスか、CIDRを指定する。 特定の拠点の固定化されたグローバルIPを指定する。

現在アクセスしているIPアドレスを追加する場合は、 ADD CURRENT IP ADDRESS をクリックする。

アトラスはプロジェクトのホワイトリストのエントリからのクラスタへのクライアント接続のみを許可します。各エントリは、単一のIPアドレスまたはCIDRで指定されたアドレスの範囲のいずれかである必要があります。詳細はこちらをご覧ください。

なお、AWSを利用している場合は、AWSのセキュリティグループIDも指定できる。

https://docs.atlas.mongodb.com/security-whitelist/#view-whitelist-entries

指定が終わったら、 Confirm をクリックする。

image

IPアドレスのリストに追加されればOK。

image

サンプルデータのロード

オプションとのことなので省略。

実施する場合は、Clustersの ... をクリックする。

image

Clusterへの接続

Get Started より、5番目の手順を選択して、ヒントを表示する。 Clustersから、CONNECT をクリックする。

image

MongoDBのGUIツールである、MongoDB Compassで接続する。

image

OSを選択して、Compassをダウンロードする。

image

Compassのインストール

ダウンロードしたインストーラを実行すると、チュートリアルが表示される。 チュートリアルのスライドを一通り確認後、get started をクリックする。

image

プライバシーの設定を行う。特に問題なければ、デフォルトのままでOK。 Start Using Compass をクリックする。

image

Compassからの接続

MongoDB Atlas側の画面に戻り、「Copy the connection string, then open MongoDB Compass.」に表示されている接続先情報をコピーする。

image

コピーした接続先情報には、password部分が、<password>という文字列になっているため、事前に設定したpasswordに置き換える必要がある。

mongodb+srv://hoge-user:<password>@fuga.hogefuga.mongodb.net/test

Compass側で、コピーした接続先情報を張り付けて、 CONNECT をクリックする。

image

接続情報が正しければ、Compass内にClusterの情報が表示される。

image