EC2にMongoDBを入れて、ローカルからMongoDB Compassを使って接続する

MongoDBのロゴ画像
  • URLをコピーしました!

タイトル通り、EC2インスタンスに入れたMongoDBに、ローカルマシンに入れたMongoDB Compassから接続してみたので、手順を備忘録として残します。

 

目次

前提

 

EC2に関して、

OS : Amazon Linux 2

DB : MongoDB 4.2 Community Edition

 

ローカルマシンに関して、

OS : macOS Catarina 10.15.5

 

 

 

EC2インスタンスの作成

 

まずはEC2をAmazon Linux 2で作成します。

 

今回は、デフォルトのVPC領域の、パブリックサブネットを使用しました。

 

セキュリティグループには、SSHの他に、カスタムTCPで27017番ポートを、0.0.0.0/0に向けて開けておきます。

 

具体的な操作方法は調べればいくらでも出てくるので、ここでは省略。

 

 

 

MongoDBのインストール

 

インスタンス作成後、以下のURLに沿ってMongoDBをインストール。

 

概要は、

 

① /etc/yum.repos.d/mongodb-org-4.2.repo を作成。

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

 

② sudo yum install -y mongodb-org

 

③ sudo service mongod start

 

④ 再起動後も立ち上がるようにしたいなら、以下を実行。

sudo chkconfig mongod on

 

 

これで無事に立ち上がったのですが、デフォルトの設定だと、MongoDBへの接続が localhost からしか許可されていません。

 

なので、/etc/mongod.conf を以下のように編集。

 

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.

# network interfaces
net:
  port: 27017
  bindIpAll: true  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.

 

で、再起動。

$ sudo service mongod restart

 

 

 

MongoDB Compassをインストールし、接続設定

 

次は、MongoDB Compassを準備します。

 

https://docs.mongodb.com/compass/current/install/

上記URLを参考に、MongoDB Compassをインストールし、

 

https://docs.mongodb.com/compass/current/connect/

上記URLを参考に、接続してみます。

 

 

Hostnameには、インスタンスのIPアドレスを入れます。

 

 

 

SSH Hostnameにも、同じくインスタンスのIPアドレスを入れます。

 

SSH Identify Fileには、インスタンス作成時にダウンロードした公開鍵を選択します。

 

 

 

これで接続成功です。

 

 

参考URL

 

SSH接続時の userって? hostnameって?| teratail

 

MongoDBの設定ファイルを編集後、restartができない。| teratail

 

この記事を書いた人

コメント

コメントする

目次