2015-08-21 73 views
2

我想使用cbdocloader tool从压缩文件(每个JSON文档位于它自己的文件中,并且该文件以id.json命名)将多个JSON文档添加到我的couchbase服务器。使用以下命令语法Couchbase cbdocloader错误

./cbdocloader -n localhost:8091 -u Administrator -p xxx -b ships -s 100 ~/json-docs.zip 

不过,我得到如下回应

[2015-08-21 21:08:35,522] - [rest_client] [140411799267072] - INFO - existing buckets : [u'beer-sample', u'default'] 
[2015-08-21 21:08:35,530] - [rest_client] [140411799267072] - INFO - http://localhost:8091//pools/default/buckets with param: proxyPort=11211&bucketType=membase&authType=sasl&name=ships&replicaNumber=1&saslPassword=&ramQuotaMB=100 
[2015-08-21 21:08:35,543] - [rest_client] [140411799267072] - ERROR - http://localhost:8091//pools/default/buckets error 400 reason: Warning: you do not have enough servers to support this number of replicas., RAM quota specified is too large to be provisioned into this cluster. {"errors":{"ramQuotaMB":"RAM quota specified is too large to be provisioned into this cluster.","replicaNumber":"Warning: you do not have enough servers to support this number of replicas."},"summaries":{"ramSummary":{"total":2486173696,"otherBuckets":2486173696,"nodesCount":1,"perNodeMegs":100,"thisAlloc":104857600,"thisUsed":0,"free":-104857600},"hddSummary":{"total":6206062592,"otherData":5063150332,"otherBuckets":25820993,"thisUsed":0,"free":1117091267}}} 

是一个完整的福利局到couchbase我不知道我做错了吗?我试过用-s指定一个较低的配额,但它不允许少于100?在couchbase控制台中它说我有2.3GB的分配给集群。

回答

2

问题是示例数据桶(啤酒桶和默认桶)占用了服务器的所有分配空间,如果我从控制台中删除了这些空间,我就可以运行该命令。现在要弄清楚为什么并非所有的zip文件都被加载。

+0

他们被装载的控制台限制了它显示的文件数量,花了我一段时间才弄清楚了! – PDStat

1

您不需要删除存储桶,问题在于分配给每个存储桶的RAM。

在我的情况下,服务器有2GB内存已分配,每个桶有100Mb分配,但默认存储桶有2GB内存的其余部分。

只需进入分配了最大内存量并编辑它的存储桶。减少每个节点RAM配额,以便释放新桶的内存。

希望这会有所帮助。