我刚刚从我的Debian上用apache 2.4.10安装了CouchDB。 $ curl http://localhost:5984/ {"couchdb":"Welcome","uuid":"76929f1fc6f1e2c01edcd5b712fff044","version":"1.6.1","vendor":{"version":"1.6.1","name":"The Apache Software Fou ndation"}} 我想通过https Apache反向代理使用它: <IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride All SSLRequireSSL </Directory> #For using my owncloud and wiki without HTTP AUTH, and all the rest #with HTTP AUTH <LocationMatch "^/(?!owncloud|wiki)"> AuthType Basic AuthName "Acces Restreint" AuthBasicProvider file AuthUserFile /home/…myfile […]
我试图让我的后端的东西起来和运行,我正在寻找节省资金的最佳方式,我的应用程序通常在上午8:30到8:30之间提供API请求,在早上,午餐和晚上有巨大的峰。 我打算做的是在Google计算引擎上设置自动扩展实例组,但是我在设置时遇到了麻烦。 起初,我用nginx在一个实例上设置了它,并且我的虚拟机的多个副本全部负载均衡,但是这对高峰时段以及节省资金没有帮助。 所以我研究了autoscaling,我的问题是,我的虚拟机使用docker集装箱,有3个正在运行的容器,一个用于nginx,一个用于couchdb,另一个用于其他背景。 我试图做的是创build一个具有基础工作,所有文件,数据库和一切的实例-001。 一旦达到70%的负载,它会自我复制,然后在两者之间进行负载平衡。 问题是我不能让它保持数据,并旋转了一个副本。 在完成了一个实例的设置后(instance-001),我用一些负载将它打到了70%以上,然后又创build了两个002和003两个空的干净的虚拟文件,然后一次低于70%,虚拟机被删除,001,实际数据被删除,003被遗留。 到目前为止,我不确定如何设置它的规模和负载平衡。 虚拟机只有1CPU的3G机器,有10GB SSD用于testing,我正在关注https://www.youtube.com/watch?v=TfbEwfYjKl4 它有点过时了,因为它允许你从快照加载,这是我以前做过的,现在它不会。 我最大的问题是什么是最好的生产方式设置为扩大couchdb起床。
我正在研究在不同国家/地区使用七个CouchDB服务器(A,B,C,D,E,F,G)的系统的build议。 这个想法是configuration多主复制,使所有的数据可以保持同步。 我可以configuration从每个服务器到其他服务器的双向复制 但我怀疑这可能会导致太多的连接,可能会增加使用的带宽,从而降低性能(是这种情况?)。 所以我的下一个想法是像一个戒指configuration他们: 现在我们有更less的连接,并且每个节点连接到两个服务器时仍然有冗余。 我的特定情况的问题是,我们不希望所有节点中都有所有的数据库。 我们希望有两个节点(A和B)与所有的数据库,其余的不同的子集。 出于这个原因,我正在考虑这样做: 由于我不是networking拓扑专家,我想问一下: 对所有节点复制所有节点真的不是一个好主意吗? 这是一个合理的拓扑(最后显示)? 我可以在哪里了解更多? 为了完整起见,这些数字是使用以下Mathematica命令生成的: Graph[Rule @@@ Permutations[CharacterRange["A", "G"], {2}], VertexLabels -> "Name"] Graph[Rule @@@ (Partition[CharacterRange["A", "G"], 2, 1, {-1}] /. {a_, b_} :> Sequence[{a, b}, {b, a}]), VertexLabels -> "Name"] Graph[Flatten[Outer[{#1 -> #2, #2 -> #1} &, {"A", "B"}, CharacterRange["C", "G"]]~Join~{"A" -> "B", "B" -> […]
我最近启动了一个EC2实例来testing一些couchdb项目,但由于某种原因,我似乎无法访问数据库。 端口5984在RHEL和安全组中都是打开的,但我无法远程和本地连接问题 即使couchdb正在运行并configuration为侦听5984端口,Netstat也不会在监听端口5984上显示任何内容。服务正在运行,但是它就像没有做任何事情。 有什么想法吗?
在我本地的osx设置上,我已经安装了couchdb v1.0.2。 我写了几个脚本反对这个版本,所有这些工作正常。 在我的远程Debian 6服务器上,我原来安装了v0.11.0沙发。 不幸的是,我的几个脚本导致一个Object.keys is not a functionexception被抛出。 我想v0.11.0有一个旧版本的JavaScript,所以我升级到沙发v1.1.0。 我按照这些说明 。 经过一番悲痛之后,我终于得到了v1.1.0的运行,但错误没有办法。 我仍然看到Object.keys is not a functionexception。 我已经证实,沙发的v1.1.0是通过运行couchdb -V来安装的,我已经杀死/重启了所有沙发,梁和erlang的实例几次。 任何想法发生了什么? 我升级沙发,但我也必须分别升级js引擎? v0.11.0的残余是隐藏在某处的吗? 我用apt-get remove couchdb卸载v0.11.0。 我也使用apt-get来安装它。
在1.2.0和1.4.0都尝试过,两个错误都不会启动。 configuration文件是默认的,除了我添加的用户pipe理员。 Apache CouchDB 1.4.0(LogLevel = info)正在启动。 {“init终止于do_boot”,{{badmatch,{error,{bad_return,{{couch_app,start,[normal,[“/ etc / couchdb / default.ini”,/ etc / couchdb / local.ini“] ]},{'EXIT',{{badmatch,{error,{shutdown,{failed_to_start_child,couch_primary_services,{shutdown,{failed_to_start_child,collation_driver,“无法打开共享对象文件:没有这样的文件或目录”}}}}}} ,[{couch_server_sup,START_SERVER,1,[{文件, “couch_server_sup.erl”},{线,98}]},{application_master,start_it_old,4,[{文件, “application_master.erl”},{线,269 }]}]}}}}}},[{榻,启动,0,[{文件, “couch.erl”},{线,18}]},{INIT,start_it,1,[]},{初始化,start_em,1,[]}]}}
对于这些要求来说,什么是理想的设置: – 可以从两个数据中心读取和写入数据 – 如果任一数据中心丢失,另一个可以接pipe 我可以想到的选项: – 如果我们有6个服务器,将3个放在一个数据中心,另外3个放在另一个中心,将6台服务器设置为一个群集,等待时间(节点交换信息,内部复制集群)一个问题? – 在每个数据中心设置一个群集,并将它们复制到对方。 但是,如何设置主控主复制,您是否需要在个别节点上进行? 谢谢!
我正在尝试代理[ http:// localhost:5984]到[ http:// localhost / couchdb] 。 我正在运行nginx的代理。 我遵循http://wiki.apache.org/couchdb/Nginx_As_a_Reverse_Proxy中提到的相同的方法, location /couchdb { rewrite /couchdb/(.*) /$1 break; proxy_pass http://127.0.0.1:5984; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; } 但是当我运行curl本地主机/ couchdb我得到以下错误 {"error":"not_found","reason":"no_db_file"} 但是,当我运行curl localhost:5984我从couchdb得到了有效的响应。 {"couchdb":"Welcome","uuid":"337bb4394efe84536a68a63eee55333f","version":"1.5.0","vendor": {"name":"The Apache Software Foundation","version":"1.5.0"}} 但是当我运行curl本地主机:5984 / couchdb我得到了同样的错误(和日志),我通过反向代理接收。 couchdb日志文件如下所示 [Fri, 24 Jan 2014 20:41:29 GMT] [debug] [<0.120.0>] 'GET' /couchdb […]
如何在Ubuntu 8.04 LTS上安装couchdb 0.10? 我得到一个错误:erlang错误的版本…
我有一个BigCouch集群,我正在EC2中旋转起来。 我已经正确地启动了实例并设置了正确的常量,但是当我尝试让节点彼此了解时,它们的“_membership”列出了我在“cluster_nodes”中添加的所有节点,而不是“all_nodes”中的所有节点。 有任何想法吗?