2016-04-25 71 views
1

我有一次運行ec2實例和pencilblue運行在另一個實例上的mongodb。 安裝penciulblue後,我使用命令pbctrl start來啓動服務器。然後我得到以下錯誤如何連接運行在兩個不同AWS EC2實例上的pencilblue和mongodb?

2016-04-25T20:35:12.100Z - error: [1] System[1]: uncaught Exception detected : Error: MongoError: connect ECONNREFUSED - mongodb://<private IP of mongodb EC2 inatnce>:27017/pencilblue? 
Is your instance running? 
    at /home/ubuntu/PencilBlue/pencilblue/include/dao/db_manager.js:113:31 
    at /home/ubuntu/PencilBlue/pencilblue/node_modules/mongodb/lib/mongo_client.js:267:20 
    at /home/ubuntu/PencilBlue/pencilblue/node_modules/mongodb/lib/db.js:218:14 
    at null.<anonymous> (/home/ubuntu/PencilBlue/pencilblue/node_modules/mongodb/lib/server.js:226:9) 
    at g (events.js:180:16) 
    at emit (events.js:98:17) 
    at null.<anonymous> (/home/ubuntu/PencilBlue/pencilblue/node_modules/mongodb/node_modules/mongodb-core/lib/topologies/server.js:263:68) 
    at g (events.js:180:16) 
    at emit (events.js:98:17) 
    at null.<anonymous> (/home/ubuntu/PencilBlue/pencilblue/node_modules/mongodb/node_modules/mongodb-core/lib/connection/pool.js:77:12) 

config.js文件pencilblue的,如下提前

"db": { 
     "type": "mongo", 
     "servers": [ 
      "mongodb://<private IP of mongodb EC2 inatnce>:27017/" 
     ], 
     "name": "pencilblue", 
     "writeConcern": 1 
    } 

感謝我所提到的數據庫的細節。

回答

0

打開的端口,你的MongoDB服務器是,允許從你的PencilBlue服務器是在安全組訪問安全組的27017。

另外,還要確保你已經在你的MongoDB配置更新bind_ip設置,以便它會監聽localhost之外的連接。

+0

我已經將運行pencilblue的實例的pubilc DNS分配給mongod.config文件中的'bind_ip'。仍然我面臨山姆錯誤 –

+0

@ avenger_9我不認爲這將工作。只要將bind_ip更改爲'0.0.0.0' –

+0

謝謝@Mark B –

相關問題