【问题标题】:Installing CouchDB in AWS EC2 Free Tier在 AWS EC2 免费套餐中安装 CouchDB
【发布时间】:2011-05-28 16:28:37
【问题描述】:

有谁知道免费层级 32 位 AWS EC2 实例中 CouchDB 的分步安装指南?

请记住,默认情况下 YUM 是有限的,我需要添加 yum.repos 以获得额外的东西。我尝试了所有不同的文章和 RPM,但似乎都没有。

我也尝试过 couchbase,但它的安装后说明极差。服务器启动,然后呢?我找不到文件、配置或安装目录。还有,我如何访问它?

CouchDB 听起来像一个很棒的数据库,但它确实需要打破这些进入壁垒。 MongoDb 有更好的文档,虽然我也无法让它工作(不过我花了一小部分时间尝试)。

谢谢:)

【问题讨论】:

    标签: amazon-ec2 couchdb


    【解决方案1】:

    apache 团队整理了这个安装 CouchDB 的快速脚本(感谢 @_jhs 用于 build-couchdb!)在 Amazon Linux AMI 上:

    https://gist.github.com/1171217

    如果您使用 cloudinit + EC2 命令行工具,只需使用 ec2-run-instances 和 --user-data-file (你需要一些模组来 保存密码或在本地生成密码的脚本),瞧。 轻松的 FTW。

    对我来说就像一个魅力!

    【讨论】:

    • EC2 上的免费套餐大约有 8Gigs,随着您的 CouchDB 填满,这会扩展吗?
    • 目前 EC2 免费套餐最多允许 30Gb 的 EBS(+5Gb 的 S3),但 t1.micro 实例默认为 8Gb。
    【解决方案2】:

    先启用EPEL 存储库,然后使用yum install couchdb 安装它

    您可以使用instructions here 启用 EPEL。

    编辑:

    更多信息请访问http://wiki.apache.org/couchdb/Installing_on_RHEL5。请记住,Linux EC2 AMI 是 CentOS 的精简版,您可以添加自定义存储库并根据需要进行安装。

    【讨论】:

    • 是否有更好的免费套餐实例可用于 Apache/PHP/CouchDB 设置?
    • 免费层实例使用具有 613 MB RAM 的微型实例。虽然我没有在生产环境中部署 couchDB 的任何经验,但我认为这非常有限。根据数据集的大小,您可能需要更多的内存和处理能力。再说一次,没有什么能阻止您从一个微实例开始,然后在时机成熟时扩展到更大的实例。
    • 这应该是答案。上一个更容易出错。
    【解决方案3】:

    这里是我用来在 Amazon Linux 2014.03.1 上安装 couchdb 1.5.1 的步骤的简要介绍。另见this post on my blog http://www.everyhaironyourhead.com/installing-couchdb-1-5-1-on-amazon-linux-ami-2014-03-1/


    核心部门和开发工具。

    1. 通过编辑文件 /etc/yum.repos.d/epel.repo 并将其设置为启用来启用 EPEL 存储库。

    2. 接下来安装 deps 和工具。

      sudo yum install gcc gcc-c++ libtool libicu-devel openssl-devel autoconf-archive erlang python27 python-sphinx help2man
      

    获取 SpiderMonkey JS 引擎并构建它...

    wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz
    tar xvfz js185-1.0.0.tar.gz
    cd js-1.8.5/js/src
    ./configure
    make
    sudo make install
    

    你应该会看到它安装在 /usr/local/lib 下


    构建 CouchDB。

    1. 下载CouchDB的源码包,解压并cd in.

    2. 将其指向所需的库并进行配置。

      ./configure --with-erlang=/usr/lib64/erlang/usr/include --with-js-lib=/usr/local/lib/ --with-js-include=/usr/local/include/js/
      
      make
      
      sudo make install
      

    准备 CouchDB 安装。

    1. 创建一个 couchdb 用户。

      sudo useradd -r -d /usr/local/var/lib/couchdb -M -s /bin/bash couchdb
      
    2. 设置文件所有权。

      sudo chown -R couchdb:couchdb /usr/local/etc/couchdb
      sudo chown -R couchdb:couchdb /usr/local/var/lib/couchdb
      sudo chown -R couchdb:couchdb /usr/local/var/log/couchdb
      sudo chown -R couchdb:couchdb /usr/local/var/run/couchdb
      sudo chmod 0775 /usr/local/etc/couchdb
      sudo chmod 0775 /usr/local/var/lib/couchdb
      sudo chmod 0775 /usr/local/var/log/couchdb
      sudo chmod 0775 /usr/local/var/run/couchdb
      

    准备初始化脚本。

    1. 链接初始化脚本并将日志轮换脚本复制到/etc。

      sudo cp /usr/local/etc/logrotate.d/couchdb /etc/logrotate.d
      sudo ln -s /usr/local/etc/rc.d/couchdb /etc/init.d/couchdb
      
    2. 这个和大多数其他 linux 发行版都不在 ld 中包含 /usr/local/lib,因此 CouchDB 将无法找到我们之前安装在那里的 SpiderMonkey 库。解决此问题的一种方法是将以下行添加到 /etc/init.d/couchdb 启动脚本的顶部。

      export LD_LIBRARY_PATH=/usr/local/lib
      

      有关更多信息,请参阅 ldconfig 手册页,并请评论提供更好的解决方案。

    3. 您可能需要编辑 /usr/local/etc/default/couchdb 以关闭自动重生。

    4. 要让它自动启动,只需使用标准的 linux 设置工具来运行服务脚本。

      sudo chkconfig --add couchdb
      

      它应该从脚本中获取所需的默认运行级别,但如果没有,您可以像这样手动执行...

      sudo chkconfig --level 3 couchdb on
      sudo chkconfig --level 4 couchdb on
      sudo chkconfig --level 5 couchdb on
      

      你可以sudo chkconfig —list在那里确认。详情请见man chkconfig


    放松。

    最后重新启动(或从脚本启动 couchdb)并使用 curl http://127.0.0.1:5984/ 确认其运行

    感谢评论、更正、改进和批评。

    【讨论】:

    【解决方案4】:

    先添加 EPEL 仓库,然后用 yum install couchdb 安装

    是的,不完全是。我正在运行 AWS 免费套餐标准并且安装沙发一直是人间地狱 - 围绕 erland 各种图形库的大量依赖问题,当我得到一个有效的过程时,我会在这里报告

    好的,对我来说问题是 wxGTK.x86_64 - 它有 15 个左右的依赖项列表,这些依赖项无法通过 yum 安装(即使使用 epel),我必须在 yum install couchdb 之前手动安装 rpm 和依赖项工作。

    如果您想要沙发,不确定默认 AMI 是否是个好主意!

    【讨论】:

      【解决方案5】:

      我用谷歌搜索:“构建 couchdb” 并按照步骤 我正在安装它。 我可以告诉你这是非常痛苦的。按下“rake”后,您需要等待 2,也许 3 小时,直到所有依赖项都编译完成。我现在仍在我的免费层服务器中安装它。您必须确保有时间让您的终端机忙起来!

      但是,到目前为止,这对我来说是唯一可行的解​​决方案。它正在自动安装。

      【讨论】:

        【解决方案6】:

        我也尝试过 couchbase,但它的安装后说明极差。服务器启动,然后呢?我找不到文件、配置或安装目录。还有,我如何访问它?

        很抱歉听到您的经历!我们最近一直专注于使 Couchbase 具有高性能和可扩展性,因此了解开发人员遇到的痛苦,例如文档。希望这两个分步指南会有所帮助!

        这是关于如何在 AWS 上安装 Couchbase 服务器和 Couchbase Sync 网关 Amazon AMI,以及如何将 Couchbase Sync 网关连接到移动应用程序:

        第 1 部分:Database on Amazon: Installing Couchbase AMI on AWS 第一部分介绍如何安装和访问 Couchbase Web 控制台。

        第 2 部分:Database on Amazon: Connecting Couchbase Sync Gateway to Couchbase AMI on AWS 第二部分介绍如何访问 Couchbase 内容/目录

        您在此线程中同时提到了 CouchDB 和 Couchbase,它们具有不同的 API,但作为另一种选择,Couchbase 同步网关组件将能够通过 REST API 位于 CouchDB 前面。

        【讨论】:

          【解决方案7】:

          对于专门安装在 AWS Linux 2 上的用户 在 AWS Linux 2 上安装 Couchdb

          本页使用Apache Couchdb binary installation 说明

          使用 Centos 安装说明。 在 /etc/yum.repos.d 目录下创建 bintray-apache-couchdb-rpm.repo 文件 填写存储库列表的完整路径,而不是使用 Relver 和 Architecture 宏。

          [bintray--apache-couchdb-rpm] name=bintray--apache-couchdb-rpm baseurl=http://apache.bintray.com/couchdb-rpm/el7/x86_64/
          gpgcheck=0
          repo_gpgcheck=0
          启用=1

          启用 epel 后进行 Yum 安装

          sudo yum update && sudo yum install -y couchdb

          继续正常使用 Couchdb 和配置

          【讨论】:

          • Stack Overflow 上非常奇怪的行为,即不加评论就投反对票。
          猜你喜欢
          • 2020-10-02
          • 1970-01-01
          • 2021-11-20
          • 2018-08-28
          • 1970-01-01
          • 1970-01-01
          • 2021-10-27
          • 2014-06-28
          • 2020-09-14
          相关资源
          最近更新 更多