【问题标题】:Problems on migrating Parse.com app to AWS EC2 Ubuntu将 Parse.com 应用程序迁移到 AWS EC2 Ubuntu 的问题
【发布时间】:2016-07-13 08:15:25
【问题描述】:

我有一台安装了 Ubuntu 的 EC2 机器。在机器上,我已经安装了 Node.js、MongoDB 和 Github 版本的 Parse Server。

我创建了一个名为 euro 的数据库。在这个数据库中,我使用以下代码创建了一个用户:

> use euro
switched to db euro
> db.createUser(
... {
... user: 'username',
... pwd: 'password',
... roles: [ { role: 'readWrite', db:'euro' } ]
... }
... )

在迁移应用程序之前,我注意到在 AWS EC2 实例管理页面中,您可以看到 2 个 IP 地址:公共 IP 和一个私有 IP,因此我使用了公共 IP。

在 Parse.com 设置中,我单击了“迁移”按钮,并输入了以下地址:

mongodb://username:password@<ipaddress>:27017/euro

在地址字段下方,写着No reachable servers

我可以做些什么来解决它并将应用程序迁移到我的 EC2 实例?

编辑#1:
我已重新启动我的 AWS 服务器,因此我的公共 IP 地址已更改。我尝试使用此地址将连接字符串更改为新 IP:

mongodb://username:password@<ipaddress>:27017/euro

但突然它显示No reachable servers
我应该怎么做才能解决这个问题?我想尽快迁移它。

编辑 #2:
我检查了这个命令 sudo netstat -pan | grep mongod 来检查它正在监听哪个 IP,我得到了这个输出:

tcp        0      0 127.0.0.1:27017         0.0.0.0:*         LISTEN      10945/mongod 
tcp        0      0 127.0.0.1:27017         127.0.0.1:45406         ESTABLISHED 10945/mongod 
unix  2      [ ACC ]     STREAM     LISTENING     28614    10945/mongod        /tmp/mongodb-2

它是否在公共 IP 上监听?私有IP?本地主机?

【问题讨论】:

  • 你在安全组中打开了27017端口吗?
  • 我打开了端口,现在当我尝试迁移它时,它显示这条消息We strongly suggest you enable SSL on your database and use the URL option 'ssl=true'。我试图在连接字符串的末尾添加?ssl=true,但现在它再次显示No reachable servers。我该怎么办?
  • 在尝试通过 SSL 连接之前,您可能需要在服务器端启用 SSL。 docs.mongodb.org/manual/tutorial/configure-ssl
  • 您尝试使用自签名 ssl 证书还是购买?
  • 尝试正常的 telnet 诊断。 IE。远程登录 IP 地址 27017 。如果您收到连接被拒绝错误,则 ssh 进入您的 ec2 实例,并执行相同的操作。如果也失败了,请检查您的 mongodb 配置

标签: mongodb ubuntu parse-platform amazon-ec2


【解决方案1】:

我使用 MongoDB guidethis 解决了这个问题。

问题是我在启动服务器时收到的一些警告。显然它阻止了 Parse.com 连接到我的 MongoDB。

$ mongo
MongoDB shell version: 3.0.11
connecting to: test
Server has startup warnings: 
2016-04-01T07:28:10.926+0000 I CONTROL  [initandlisten] 
2016-04-01T07:28:10.926+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2016-04-01T07:28:10.926+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2016-04-01T07:28:10.926+0000 I CONTROL  [initandlisten] 
2016-04-01T07:28:10.926+0000 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2016-04-01T07:28:10.926+0000 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2016-04-01T07:28:10.926+0000 I CONTROL  [initandlisten] 
>

我无法解决它,因为我在没有 root 权限的情况下使用了这个命令$ service mongod restart。我应该使用这个命令$ sudo service mongod restart

【讨论】:

    猜你喜欢
    • 2017-04-16
    • 2021-11-16
    • 1970-01-01
    • 2015-01-10
    • 2017-06-04
    • 2019-09-04
    • 2020-05-24
    • 2016-08-20
    • 1970-01-01
    相关资源
    最近更新 更多