Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux EC2上的mongodb EBS_Linux_Node.js_Mongodb_Amazon Ec2 - Fatal编程技术网

Linux EC2上的mongodb EBS

Linux EC2上的mongodb EBS,linux,node.js,mongodb,amazon-ec2,Linux,Node.js,Mongodb,Amazon Ec2,我在ec2上使用mongodb和nodejs,我想部署它以支持每天10000个请求。 我想确保如果实例终止或重新启动(?),数据库不会丢失。 我知道我需要创建一个EBS卷来存储数据 我试过了,但没用。我到了该跑步的地步 [ec2-user@domU-…~]$sudo chown mongod:mongod/data 但我得到: chown:无效用户:`mongod:mongod' 解决者:sudo chown mongod.mongod/data 仍然无法运行mongod工作: $sudo /e

我在ec2上使用mongodb和nodejs,我想部署它以支持每天10000个请求。 我想确保如果实例终止或重新启动(?),数据库不会丢失。 我知道我需要创建一个EBS卷来存储数据

我试过了,但没用。我到了该跑步的地步 [ec2-user@domU-…~]$sudo chown mongod:mongod/data 但我得到: chown:无效用户:`mongod:mongod'

解决者:sudo chown mongod.mongod/data 仍然无法运行mongod工作:

$sudo /etc/init.d/mongod start
Starting mongod: forked process: 1694
all output going to: /log/mongod.log
                                                           [FAILED][ec2-user@domU-... /]$ sudo mongod --dbpath=/data
Mon Oct 29 21:46:56 [initandlisten] MongoDB starting : pid=1675 port=27017 dbpath=/data 64-bit host=domU-...
Mon Oct 29 21:46:56 [initandlisten] db version v2.2.0, pdfile version 4.5
Mon Oct 29 21:46:56 [initandlisten] git version: f5e83eae9cfbec7fb7a071321928f00d1b0c5207
Mon Oct 29 21:46:56 [initandlisten] build info: Linux ... c8xen #1 SMP Fri Nov 20 17:48:28 EST 2009 x86_64 BOOST_LIB_VERSION=1_49
Mon Oct 29 21:46:56 [initandlisten] options: { dbpath: "/data" }
Mon Oct 29 21:47:00 [initandlisten] journal dir=/data/journal
Mon Oct 29 21:47:00 [initandlisten] recover : no journal files present, no recovery needed
Mon Oct 29 21:47:00 [initandlisten] 
Mon Oct 29 21:47:00 [initandlisten] ERROR: Insufficient free space for journal files
Mon Oct 29 21:47:00 [initandlisten] Please make at least 3379MB available in /data/journal or use --smallfiles
Mon Oct 29 21:47:00 [initandlisten] 
Mon Oct 29 21:47:00 [initandlisten] exception in initAndListen: 15926 Insufficient free space for journals, terminating
Mon Oct 29 21:47:00 dbexit: 
Mon Oct 29 21:47:00 [initandlisten] shutdown: going to close listening sockets...
Mon Oct 29 21:47:00 [initandlisten] shutdown: going to flush diaglog...
Mon Oct 29 21:47:00 [initandlisten] shutdown: going to close sockets...
Mon Oct 29 21:47:00 [initandlisten] shutdown: waiting for fs preallocator...
Mon Oct 29 21:47:00 [initandlisten] shutdown: lock for final commit...
Mon Oct 29 21:47:00 [initandlisten] shutdown: final commit...
Mon Oct 29 21:47:00 [initandlisten] shutdown: closing all files...
Mon Oct 29 21:47:00 [initandlisten] closeAllFiles() finished
Mon Oct 29 21:47:00 [initandlisten] journalCleanup...
Mon Oct 29 21:47:00 [initandlisten] removeJournalFiles
Mon Oct 29 21:47:00 [initandlisten] shutdown: removing fs lock...
Mon Oct 29 21:47:00 dbexit: really exiting now
我一个字也听不懂导游的话。。。只是我。。。?是否有更简单易懂的指南来实现这一目标? 谢谢大家!

步骤

sudo yum-y安装mongo-10gen-server

应该已经创建了一个运行mongodb的用户。然而,10Gen的文档对于该用户是叫mongod还是叫mongo存在冲突

请尝试以下操作:

sudo chown mongo:mongo/data


该步骤将/data目录的所有权更改为用户mongo和组mongo。

我遇到的问题如中所述:

最后,我遵循指南:

mongo在跑! 除了根卷EBS之外,我只创建了一个EBS(20 GiB),并将其安装到/data/db

我希望我的部署能够很好地处理nodejs和每天10000个客户端请求。 (如果我错了,或者有人对我描述的部署有任何建议,我会非常感激)


谢谢

使用mongodb管理解决方案可能会更容易,比如在您的EC2帐户中创建mongodb实例。让实例运行实际上是工作中比较容易的部分。你需要考虑一下

  • 备份
  • 恢复
  • 监测
  • 高可用性,以防您的区域出现故障

  • 你所指的指南很好。但是,如果您在将用户组分配到某个目录时遇到问题,您可能需要仔细阅读一下…
    mongodb
    也是后一个版本中某些地方使用的。基本上,您可以创建自己的用户,只需使用该用户编辑配置文件即可,以方便tbh+1指向aws_nosql_mongo文档。非常有用的信息