Couchbase cbdocloader 错误

Couchbase cbdocloader errors

我正在尝试将多个 JSON 文档从一个 zip 文件添加到我的 couchbase 服务器(每个 JSON 文档都在它自己的文件中,并且该文件以 id.json ) 使用 cbdocloader tool。使用以下命令语法

./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 分配给集群。

问题是示例数据桶(啤酒桶和默认桶)占用了所有分配给服务器的 space,如果我从控制台删除了这些桶,那么我能够 运行 命令。现在弄清楚为什么没有加载 zip 中的所有文档。

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

在我的例子中,服务器分配了 2GB RAM,每个存储桶分配了 100Mb,但默认存储桶分配了剩余的 2GB RAM。

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

希望对您有所帮助。