【问题标题】:How to start ActiveMQ on an EC2 machine?如何在 EC2 机器上启动 ActiveMQ?
【发布时间】:2013-06-15 20:36:18
【问题描述】:

我已经在 EC2-Ubuntu 实例(Ubuntu Server 13.04)上安装了 ActiveMQ(通过 apt) 然而,我遇到了无法通过提供的启动脚本启动 ActiveMQ 的问题。

当我尝试启动它时 - 作为默认的 'ubuntu' 用户 - 我收到以下错误:

ubuntu@ip-..-154-186-78:/etc/default$ /usr/bin/activemq start
INFO: Loading '/usr/share/activemq/activemq-options'
INFO: Using java '/usr/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
mkdir: missing operand
Try 'mkdir --help' for more information.
/usr/bin/activemq: 373: /usr/bin/activemq: /usr/bin/java -Xms512M -Xmx512M -Dorg.apache.activemq.UseDedicatedTaskRunner=true  -Dcom.sun.management.jmxremote  -Djava.io.tmpdir="/var/lib/activemq/tmp" -Dactivemq.classpath="/var/lib/activemq/conf;" -Dactivemq.home="/usr/share/activemq" -Dactivemq.base="/var/lib/activemq/" -Dactivemq.conf="/var/lib/activemq/conf" -Dactivemq.data="/var/lib/activemq/data" -jar "/usr/share/activemq/bin/run.jar" start >/dev/null 2>&1 &
          RET="$?"; APID="$!";
          echo $APID > /var/run/activemq.pid;
          echo "INFO: pidfile created : '/var/run/activemq.pid' (pid '$APID')";exit $RET: not found

当我尝试启动它时 - 使用 sudo - 我收到以下错误:

ubuntu@ip-..-154-186-78:/etc/default$ sudo /usr/bin/activemq start
INFO: Loading '/usr/share/activemq/activemq-options'
INFO: Using java '/usr/bin/java'
INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
INFO: changing to user 'activemq' to invoke java
mkdir: missing operand
Try 'mkdir --help' for more information.
-su: line 2: /var/run/activemq.pid: Permission denied
INFO: pidfile created : '/var/run/activemq.pid' (pid '10166')

运行 '#/usr/bin/activemq status' 告诉我:

ubuntu@ip-..-154-186-78:/etc/default$ /usr/bin/activemq status
INFO: Loading '/usr/share/activemq/activemq-options'
INFO: Using java '/usr/bin/java'
ActiveMQ not running

我已经尝试创建一个新配置并替换它 - 如下所示:Activemq will not start on my Ubuntu VM

任何建议可能是什么问题?

提前致谢!

【问题讨论】:

    标签: ubuntu activemq


    【解决方案1】:

    比起通过apt-get安装ActiveMQ,实际上将download a copy作为tar.gz解压到/opt中要容易得多。有获取它的说明running as a Unix service - 这是管理安装的最简单方法。

    我通常还会创建一个符号链接/opt/activemq,指向包含正在使用的 ActiveMQ 版本的目录,我用它来配置服务。这种升级方式,您只需将链接重新指向新版本即可。

    【讨论】:

    • 感谢您的快速响应!实际上,我正在通过 puppet 模块安装 ActiveMQ。安装运行良好,我猜 puppet 内部使用了 apt-get,因为安装看起来相同,我得到相同的错误。由于我试图用 puppet 解决这个问题,我无法使用 tar.gz 安装:/ 无论如何,感谢符号链接提示,我会记住这一点!问候,安德烈亚斯
    【解决方案2】:

    好的,我自己解决了。似乎 ActiveMQ apt repo 内容已损坏。由于我使用的是 puppet,所以我依赖包管理器。因此,我切换到默认使用 yum 的 AWS Linux AMI。 不幸的是没有 ActiveMQ 包 repo,所以你必须创建一个新的 .repo 文件(sudo nano /etc/yum.repos.d/activemq.repo)并添加以下内容:

    [activemq-centos]
    name=activemq-centos
    failovermethod=priority
    baseurl=http://packages.platform14.net/repo/activemq/centos/5/$basearch/
    enabled=1
    gpgcheck=0
    
    [activemq-source]
    name=activemq-source
    failovermethod=priority
    baseurl=http://packages.platform14.net/repo/activemq/centos/5/SRPMS/
    enabled=1
    gpgcheck=0 
    

    问候, 安德烈亚斯

    【讨论】:

      【解决方案3】:

      这是因为activemq用户不是要保存activemq pid文件的目录的所有者。 更改到包含您的文件的目录 - chown -R activemq:用户 apache-activemq-

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-01
        • 1970-01-01
        • 2018-06-28
        • 2016-12-01
        • 2014-10-31
        • 1970-01-01
        • 2012-06-29
        • 1970-01-01
        相关资源
        最近更新 更多