2.2. 升级旧的 7.x 版本


2.2.1. 将代理实例从 7.0.x 升级到 7.0.y

将 AMQ Broker 从 7.0 的一个版本升级到另一个版本的步骤与安装类似:您可以从客户门户网站下载存档,然后提取它。

下面的子章节描述了如何为不同的操作系统升级 7.0.x 代理。

2.2.1.1. 在 Linux 上从 7.0.x 升级到 7.0.y

您下载的存档名称可能与以下示例中使用的内容不同。

先决条件

  • 在升级 AMQ Broker 前,请查看目标发行版本的发行注记。

    本发行注记描述了目标版本中行为的重要改进、已知问题和更改。

    如需更多信息,请参阅 AMQ Broker 7.0 发行注记

流程

  1. 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档
  2. 将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。

    sudo chown amq-broker:amq-broker jboss-amq-7.x.x.redhat-1.zip
  3. 将存档移到 AMQ Broker 原始安装过程中创建的目录中。在以下示例中,使用了目录 /opt/redhat

    sudo mv jboss-amq-7.x.x.redhat-1.zip /opt/redhat
  4. 作为目录所有者,提取压缩存档的内容。归档采用压缩格式。在以下示例中,用户 amq-broker 使用 unzip 命令提取存档。

    su - amq-broker
    cd /opt/redhat
    unzip jboss-amq-7.x.x.redhat-1.zip
  5. 如果代理正在运行,则停止代理。

    <broker_instance_dir>/bin/artemis stop
  6. 通过将代理复制到当前用户的主目录,备份代理的实例目录。

    cp -r <broker_instance_dir> ~/
  7. (可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 < broker_instance_dir&gt; /log/artemis.log 中找到。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.0.0.amq-700005-redhat-1 [4782d50d-47a2-11e7-a160-9801a793ea45] stopped, uptime 28 minutes
  8. 编辑 & lt;broker_instance_dir> /etc/artemis.profile 配置文件,将 ARTEMIS_HOME 属性设置为提取存档时创建的新目录。

    ARTEMIS_HOME='/opt/redhat/jboss-amq-7.x.x-redhat-1'
  9. 启动升级的代理。

    <broker_instance_dir>/bin/artemis run
  10. (可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 < broker_instance_dir&gt; /log/artemis.log,并找到类似如下的两行。请注意代理实时后日志中显示的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.1.0.amq-700005-redhat-1 [0.0.0.0, nodeID=4782d50d-47a2-11e7-a160-9801a793ea45]

2.2.1.2. 在 Windows 上从 7.0.x 升级到 7.0.y

先决条件

  • 在升级 AMQ Broker 前,请查看目标发行版本的发行注记。

    本发行注记描述了目标版本中行为的重要改进、已知问题和更改。

    如需更多信息,请参阅 AMQ Broker 7.0 发行注记

流程

  1. 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档
  2. 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
  3. 提取存档的内容。右键点击 .zip 文件并选择 Extract All
  4. 输入以下命令,如果代理正在运行,则停止代理。

    <broker_instance_dir>\bin\artemis-service.exe stop
  5. 使用文件管理器备份代理。

    1. 右键点击 < broker_instance_dir> 文件夹,然后选择 Copy
    2. 右键点击同一窗口并选择 粘贴
  6. (可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 < broker_instance_dir&gt; \log\artemis.log 中找到。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.0.0.amq-700005-redhat-1 [4782d50d-47a2-11e7-a160-9801a793ea45] stopped, uptime 28 minutes
  7. 编辑 & lt;broker_instance_dir> \etc\artemis.profile 配置文件,将 ARTEMIS_HOME 属性设置为提取存档时创建的新目录。

    ARTEMIS_HOME=<install_dir>
  8. 启动升级的代理。

    <broker_instance_dir>\bin\artemis-service.exe start
  9. (可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 < broker_instance_dir&gt; \log\artemis.log,找到类似如下的两行。请注意代理实时后日志中显示的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.1.0.amq-700005-redhat-1 [0.0.0.0, nodeID=4782d50d-47a2-11e7-a160-9801a793ea45]

2.2.2. 将代理实例从 7.0.x 升级到 7.1.0

AMQ Broker 7.1.0 包括之前版本中没有包括的配置文件和设置。将代理实例从 7.0.x 升级到 7.1.0 需要将这些新文件和设置添加到现有 7.0.x 代理实例中。下面的子部分描述了如何为不同的操作系统将 7.0.x 代理实例升级到 7.1.0。

重要

从 AMQ Broker 7.1.0 开始,默认只能从本地主机访问 AMQ 管理控制台。要了解如何配置对控制台的远程访问,请参阅配置对 AMQ 管理控制台的本地和远程访问

2.2.2.1. 在 Linux 上从 7.0.x 升级到 7.1.0

在升级 7.0.x 代理前,您需要安装 Red Hat AMQ Broker 7.1.0 并创建一个临时代理实例。这将生成升级 7.0.x 代理所需的 7.1.0 配置文件。

先决条件

  • 在升级 AMQ Broker 前,请查看目标发行版本的发行注记。

    本发行注记描述了目标版本中行为的重要改进、已知问题和更改。

    如需更多信息,请参阅 AMQ Broker 7.1 发行注记

  • 在升级 7.0.x 代理前,您必须首先安装 7.1 版本。

    有关在 Linux 上安装 7.1 的步骤,请参阅安装 AMQ Broker

流程

  1. 如果正在运行,请停止您要升级的 7.0.x 代理:

    $ <broker_instance_dir>/bin/artemis stop
  2. 通过将代理复制到当前用户的主目录,备份代理的实例目录。

    cp -r <broker_instance_dir> ~/
  3. 在 7.0.x 代理的 < broker_instance_dir&gt; /etc/ 目录中打开 artemis.profile 文件。

    1. 更新 ARTEMIS_HOME 属性,以便其值引用 AMQ Broker 7.1.0 的安装目录:

      ARTEMIS_HOME="<7.1.0_install_dir>"
    2. 在您更新的行中,添加属性 ARTEMIS_INSTANCE_URI,并为它分配一个指向 7.0.x 代理实例目录的值:

      ARTEMIS_INSTANCE_URI="file://<7.0.x_broker_instance_dir>"
    3. 通过添加 jolokia.policyLocation 参数并为其分配以下值来更新 JAVA_ARGS 属性:

      -Djolokia.policyLocation=${ARTEMIS_INSTANCE_URI}/etc/jolokia-access.xml
  4. 创建 7.1.0 代理实例。创建过程会生成从 7.0.x 升级到 7.1.0 所需的配置文件。在以下示例中,请注意实例在目录 upgrade_tmp 中创建:

    $ <7.1.0_install_dir>/bin/artemis create --allow-anonymous --user admin --password admin upgrade_tmp
  5. 将临时 7.1.0 实例的 etc 目录中的配置文件复制到 7.0.x 代理的 & lt;broker_instance_dir> /etc/ 目录中。

    1. 复制 management.xml 文件:

      $ cp <temporary_7.1.0_broker_instance_dir>/etc/management.xml <7.0_broker_instance_dir>/etc/
    2. 复制 jolokia-access.xml 文件:

      $ cp <temporary_7.1.0_broker_instance_dir>/etc/jolokia-access.xml <7.0_broker_instance_dir>/etc/
  6. 在 7.0.x 代理的 < broker_instance_dir&gt; /etc/ 目录中打开 bootstrap.xml 文件。

    1. 注释掉或删除以下两行:

      <app url="jolokia" war="jolokia.war"/>
      <app url="hawtio" war="hawtio-no-slf4j.war"/>
    2. 添加以下内容来替换上一步中删除的两行:

      <app url="console" war="console.war"/>
  7. 启动您升级的代理:

    $ <broker_instance_dir>/bin/artemis run

其它资源

有关创建代理实例的更多信息,请参阅创建代理实例

2.2.2.2. 在 Windows 上从 7.0.x 升级到 7.1.0

在升级 7.0.x 代理前,您需要安装 Red Hat AMQ Broker 7.1.0 并创建一个临时代理实例。这将生成升级 7.0.x 代理所需的 7.1.0 配置文件。

先决条件

  • 在升级 AMQ Broker 前,请查看目标发行版本的发行注记。

    本发行注记描述了目标版本中行为的重要改进、已知问题和更改。

    如需更多信息,请参阅 AMQ Broker 7.1 发行注记

  • 在升级 7.0.x 代理前,您必须首先安装 7.1 版本。

    有关在 Windows 上安装 7.1 的步骤,请参阅安装 AMQ Broker

流程

  1. 如果正在运行,请停止您要升级的 7.0.x 代理:

    > <broker_instance_dir>\bin\artemis-service.exe stop
  2. 使用文件管理器备份代理的实例目录。

    1. 右键点击 < broker_instance_dir> 文件夹,然后选择 Copy
    2. 右键点击同一窗口并选择 粘贴
  3. 在 7.0.x 代理的 < broker_instance_dir&gt; /etc/ 目录中打开 artemis.profile 文件。

    1. 更新 ARTEMIS_HOME 属性,以便其值引用 AMQ Broker 7.1.0 的安装目录:

      ARTEMIS_HOME="<7.1.0_install_dir>"
    2. 在您更新的行中,添加属性 ARTEMIS_INSTANCE_URI,并为它分配一个指向 7.0.x 代理实例目录的值:

      ARTEMIS_INSTANCE_URI="file://<7.0.x_broker_instance_dir>"
    3. 通过添加 jolokia.policyLocation 参数并为其分配以下值来更新 JAVA_ARGS 属性:

      -Djolokia.policyLocation=${ARTEMIS_INSTANCE_URI}/etc/jolokia-access.xml
  4. 创建 7.1.0 代理实例。创建过程会生成从 7.0.x 升级到 7.1.0 所需的配置文件。在以下示例中,请注意实例在目录 upgrade_tmp 中创建:

    > <7.1.0_install_dir>/bin/artemis create --allow-anonymous --user admin --password admin upgrade_tmp
  5. 将临时 7.1.0 实例的 etc 目录中的配置文件复制到 7.0.x 代理的 & lt;broker_instance_dir> /etc/ 目录中。

    1. 复制 management.xml 文件:

      > cp <temporary_7.1.0_broker_instance_dir>/etc/management.xml <7.0_broker_instance_dir>/etc/
    2. 复制 jolokia-access.xml 文件:

      > cp <temporary_7.1.0_broker_instance_dir>/etc/jolokia-access.xml <7.0_broker_instance_dir>/etc/
  6. 在 7.0.x 代理的 < broker_instance_dir&gt; /etc/ 目录中打开 bootstrap.xml 文件。

    1. 注释掉或删除以下两行:

      <app url="jolokia" war="jolokia.war"/>
      <app url="hawtio" war="hawtio-no-slf4j.war"/>
    2. 添加以下内容来替换上一步中删除的两行:

      <app url="console" war="console.war"/>
  7. 启动您升级的代理:

    > <broker_instance_dir>\bin\artemis-service.exe start

其它资源

有关创建代理实例的更多信息,请参阅创建代理实例

2.2.3. 将代理实例从 7.1.x 升级到 7.2.0

AMQ Broker 7.2.0 包括没有包括在 7.0.x 版本中的配置文件和设置。如果您正在运行 7.0.x 实例,您必须首先将这些代理实例从 7.0.x 升级到 7.1.0, 然后才能升级到 7.2.0。下面的小节描述了如何为不同的操作系统将 7.1.x 代理实例升级到 7.2.0。

重要

从 AMQ Broker 7.1.0 开始,默认只能从本地主机访问 AMQ 管理控制台。要了解如何配置对控制台的远程访问,请参阅配置对 AMQ 管理控制台的本地和远程访问

2.2.3.1. 在 Linux 上从 7.1.x 升级到 7.2.0

注意

您下载的存档名称可能与以下示例中使用的内容不同。

流程

  1. 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档
  2. 将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。

    sudo chown amq-broker:amq-broker amq-7.x.x.redhat-1.zip
  3. 将存档移到 AMQ Broker 原始安装过程中创建的目录中。在以下示例中,使用了目录 /opt/redhat

    sudo mv amq-7.x.x.redhat-1.zip /opt/redhat
  4. 作为目录所有者,提取压缩存档的内容。在以下示例中,用户 amq-broker 使用 unzip 命令提取存档。

    su - amq-broker
    cd /opt/redhat
    unzip jboss-amq-7.x.x.redhat-1.zip
  5. 如果代理正在运行,则停止代理。

    <broker_instance_dir>/bin/artemis stop
  6. 通过将代理复制到当前用户的主目录,备份代理的实例目录。

    cp -r <broker_instance_dir> ~/
  7. (可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 < broker_instance_dir&gt; /log/artemis.log 中找到。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.5.0.amq-720001-redhat-1 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]
  8. 编辑 & lt;broker_instance_dir> /etc/artemis.profile 配置文件,将 ARTEMIS_HOME 属性设置为提取存档时创建的新目录。

    ARTEMIS_HOME='/opt/redhat/amq-7.x.x-redhat-1'
  9. 启动升级的代理。

    <broker_instance_dir>/bin/artemis run
  10. (可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 < broker_instance_dir&gt; /log/artemis.log,并找到类似如下的两行。请注意代理实时后日志中显示的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.5.0.amq-720001-redhat-1 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]

其它资源

  • 有关创建代理实例的更多信息,请参阅创建代理实例
  • 现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录之外的位置。在 & lt;broker_instance_dir> /etc/artemis.profile 文件中,通过在创建代理实例后指定自定义目录的位置来更新 ARTEMIS_INSTANCE_ETC_URI 属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的 etc/data/ 目录中。

2.2.3.2. 在 Windows 上从 7.1.x 升级到 7.2.0

流程

  1. 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档
  2. 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
  3. 提取存档的内容。右键点击 .zip 文件并选择 Extract All
  4. 输入以下命令,如果代理正在运行,则停止代理。

    <broker_instance_dir>\bin\artemis-service.exe stop
  5. 使用文件管理器备份代理。

    1. 右键点击 < broker_instance_dir> 文件夹,然后选择 Copy
    2. 右键点击同一窗口并选择 粘贴
  6. (可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 < broker_instance_dir&gt; \log\artemis.log 中找到。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.0.0.amq-700005-redhat-1 [4782d50d-47a2-11e7-a160-9801a793ea45] stopped, uptime 28 minutes
  7. 编辑 & lt;broker_instance_dir> \etc\artemis.profile.cmd 和 < broker_instance_dir> \bin\artemis-service.xml 配置文件,将 ARTEMIS_HOME 属性设置为在提取存档时创建的新目录。

    ARTEMIS_HOME=<install_dir>
  8. 启动升级的代理。

    <broker_instance_dir>\bin\artemis-service.exe start
  9. (可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 < broker_instance_dir&gt; \log\artemis.log,找到类似如下的两行。请注意代理实时后日志中显示的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.5.0.amq-720001-redhat-1 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]

其它资源

  • 有关创建代理实例的更多信息,请参阅创建代理实例
  • 现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录之外的位置。在 & lt;broker_instance_dir> \etc\artemis.profile 文件中,通过在创建代理实例后指定自定义目录的位置来更新 ARTEMIS_INSTANCE_ETC_URI 属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的 \etc\data 目录中。

2.2.4. 将代理实例从 7.2.x 升级到 7.3.0

下面的子部分描述了如何为不同的操作系统将 7.2.x 代理实例升级到 7.3.0。

2.2.4.1. 解决已弃用的分配控制台时出现异常

从版本 7.1.0 开始,AMQ Broker 不再附带 Hawtio 分配控制台插件 dispatch-hawtio-console.war。在以前的版本中,分配控制台用于管理 AMQ Interconnect。但是,AMQ Interconnect 现在使用自己的独立 Web 控制台。这个更改会影响后续部分中的升级步骤。

如果您在将代理实例升级到 7.3.0 之前没有进一步的操作,升级过程会生成类似如下的异常:

2019-04-11 18:00:41,334 WARN  [org.eclipse.jetty.webapp.WebAppContext] Failed startup of context o.e.j.w.WebAppContext@1ef3efa8{/dispatch-hawtio-console,null,null}{/opt/amqbroker/amq-broker-7.3.0/web/dispatch-hawtio-console.war}: java.io.FileNotFoundException: /opt/amqbroker/amq-broker-7.3.0/web/dispatch-hawtio-console.war.

您可以在不影响升级成功的情况下安全地忽略前面的异常。

但是,如果您不希望在升级过程中看到这个异常,您必须首先在现有代理实例的 bootstrap.xml 文件中删除对 Hawtio 分配控制台插件的引用。bootstrap.xml 文件位于代理实例的 {instance_directory}/etc/ 目录中。以下示例显示了 AMQ Broker 7.2.4 实例的 bootstrap.xml 文件的内容:

<broker xmlns="http://activemq.org/schema">
....
   <!-- The web server is only bound to localhost by default -->
   <web bind="http://localhost:8161" path="web">
       <app url="redhat-branding" war="redhat-branding.war"/>
       <app url="artemis-plugin" war="artemis-plugin.war"/>
       <app url="dispatch-hawtio-console" war="dispatch-hawtio-console.war"/>
       <app url="console" war="console.war"/>
   </web>
</broker>

为了避免在将 AMQ Broker 升级到 7.3.0 时出现异常,请删除 < app url="dispatch-hawtio-console" war="dispatch-hawtio-console.war"/&gt; 行,如上例所示。然后,保存修改后的 bootstrap 文件并启动升级过程,如后续章节所述。

重要

从 AMQ Broker 7.1.0 开始,默认只能从本地主机访问 AMQ 管理控制台。要了解如何配置对控制台的远程访问,请参阅配置对 AMQ 管理控制台的本地和远程访问

2.2.4.2. 在 Linux 上从 7.2.x 升级到 7.3.0

注意

您下载的存档名称可能与以下示例中使用的内容不同。

流程

  1. 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档
  2. 将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。

    sudo chown amq-broker:amq-broker amq-7.x.x.redhat-1.zip
  3. 将存档移到 AMQ Broker 原始安装过程中创建的目录中。在以下示例中,使用了目录 /opt/redhat

    sudo mv amq-7.x.x.redhat-1.zip /opt/redhat
  4. 作为目录所有者,提取压缩存档的内容。在以下示例中,用户 amq-broker 使用 unzip 命令提取存档。

    su - amq-broker
    cd /opt/redhat
    unzip jboss-amq-7.x.x.redhat-1.zip
  5. 如果代理正在运行,则停止代理。

    <broker_instance_dir>/bin/artemis stop
  6. 通过将代理复制到当前用户的主目录,备份代理的实例目录。

    cp -r <broker_instance_dir> ~/
  7. (可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 < broker_instance_dir&gt; /log/artemis.log 中找到。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.6.3.amq-720001-redhat-1 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]
  8. 编辑 & lt;broker_instance_dir> /etc/artemis.profile 配置文件,将 ARTEMIS_HOME 属性设置为提取存档时创建的新目录。

    ARTEMIS_HOME='/opt/redhat/amq-7.x.x-redhat-1'
  9. 启动升级的代理。

    <broker_instance_dir>/bin/artemis run
  10. (可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 < broker_instance_dir&gt; /log/artemis.log,并找到类似如下的两行。请注意代理实时后日志中显示的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.7.0.redhat-00054 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]

其它资源

  • 有关创建代理实例的更多信息,请参阅创建代理实例
  • 现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录之外的位置。在 & lt;broker_instance_dir> /etc/artemis.profile 文件中,通过在创建代理实例后指定自定义目录的位置来更新 ARTEMIS_INSTANCE_ETC_URI 属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的 etc/data/ 目录中。

2.2.4.3. 在 Windows 上从 7.2.x 升级到 7.3.0

流程

  1. 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档
  2. 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
  3. 提取存档的内容。右键点击 .zip 文件并选择 Extract All
  4. 输入以下命令,如果代理正在运行,则停止代理。

    <broker_instance_dir>\bin\artemis-service.exe stop
  5. 使用文件管理器备份代理。

    1. 右键点击 < broker_instance_dir> 文件夹,然后选择 Copy
    2. 右键点击同一窗口并选择 粘贴
  6. (可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 < broker_instance_dir&gt; \log\artemis.log 中找到。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.6.3.amq-720001-redhat-1 [4782d50d-47a2-11e7-a160-9801a793ea45] stopped, uptime 28 minutes
  7. 编辑 & lt;broker_instance_dir> \etc\artemis.profile.cmd 和 < broker_instance_dir> \bin\artemis-service.xml 配置文件,将 ARTEMIS_HOME 属性设置为在提取存档时创建的新目录。

    ARTEMIS_HOME=<install_dir>
  8. 编辑 & lt;broker_instance_dir> \etc\artemis.profile.cmd 配置文件,以设置 JAVA_ARGS 环境变量来引用正确的日志管理器版本。

    JAVA_ARGS=<install_dir>\lib\jboss-logmanager-2.0.3.Final-redhat-1.jar
  9. 编辑 & lt;broker_instance_dir> \bin\artemis-service.xml 配置文件,以设置 bootstrap 类路径启动参数来引用正确的日志管理器版本。

    <startargument>Xbootclasspath/a:%ARTEMIS_HOME%\lib\jboss-logmanager-2.0.3.Final-redhat-1.jar</startargument>
  10. 启动升级的代理。

    <broker_instance_dir>\bin\artemis-service.exe start
  11. (可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 < broker_instance_dir&gt; \log\artemis.log,找到类似如下的两行。请注意代理实时后日志中显示的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.7.0.redhat-00054 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]

其它资源

  • 有关创建代理实例的更多信息,请参阅创建代理实例
  • 现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录之外的位置。在 & lt;broker_instance_dir> \etc\artemis.profile 文件中,通过在创建代理实例后指定自定义目录的位置来更新 ARTEMIS_INSTANCE_ETC_URI 属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的 \etc\data 目录中。

2.2.5. 将代理实例从 7.3.0 升级到 7.4.0

下面的子部分描述了如何为不同的操作系统将 7.3.0 代理实例升级到 7.4.0。

重要

从 AMQ Broker 7.1.0 开始,默认只能从本地主机访问 AMQ 管理控制台。要了解如何配置对控制台的远程访问,请参阅配置对 AMQ 管理控制台的本地和远程访问

2.2.5.1. 在 Linux 上从 7.3.0 升级到 7.4.0

注意

您下载的存档名称可能与以下示例中使用的内容不同。

流程

  1. 从红帽客户门户下载所需的存档。按照 下载 AMQ Broker 归档 中的说明进行操作。
  2. 将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。以下示例显示了名为 amq-broker 的用户。

    sudo chown amq-broker:amq-broker amq-broker-7.x.x.redhat-1.zip
  3. 将存档移到 AMQ Broker 原始安装过程中创建的目录中。以下示例使用 /opt/redhat

    sudo mv amq-broker-7.x.x.redhat-1.zip /opt/redhat
  4. 作为目录所有者,提取压缩存档的内容。在以下示例中,用户 amq-broker 使用 unzip 命令提取存档。

    su - amq-broker
    cd /opt/redhat
    unzip amq-broker-7.x.x.redhat-1.zip
  5. 如果代理正在运行,请停止它。

    <broker_instance_dir>/bin/artemis stop
  6. 通过将代理复制到当前用户的主目录,备份代理的实例目录。

    cp -r <broker_instance_dir> ~/
  7. (可选)请注意代理的当前版本。代理停止后,您会在 < broker_instance_dir>/log/artemis.log 文件末尾看到类似如下的行。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.7.0.redhat-00054 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]
  8. 编辑 & lt;broker_instance_dir&gt; /etc/artemis.profile 配置文件。

    1. ARTEMIS_HOME 属性设置为提取存档时创建的新目录。

      ARTEMIS_HOME='/opt/redhat/amq-broker-7.x.x-redhat-1'
    2. 编辑 JAVA_ARGS 属性。添加 bootstrap 类路径参数,该参数引用日志管理器的依赖文件。

      -Xbootclasspath/a:$ARTEMIS_HOME/lib/wildfly-common-1.5.1.Final-redhat-00001.jar
  9. 编辑 & lt;broker_instance_dir&gt; /etc/bootstrap.xml 配置文件。在 & lt;web > 配置元素中,为 AMQ Broker 添加对 metrics 插件文件的引用。

    <app url="metrics" war="metrics.war"/>
  10. 启动升级的代理。

    <broker_instance_dir>/bin/artemis run
  11. (可选)确认代理正在运行并且版本已更改。启动代理后,打开 < broker_instance_dir>/log/artemis.log 文件。找到与下面相似的两行。请注意,当代理可用时,日志中出现的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.9.0.redhat-00001 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]

其它资源

  • 有关创建代理实例的更多信息,请参阅创建代理实例
  • 现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录之外的位置。在 & lt;broker_instance_dir> /etc/artemis.profile 文件中,通过在创建代理实例后指定自定义目录的位置来更新 ARTEMIS_INSTANCE_ETC_URI 属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的 etc/data/ 目录中。

2.2.5.2. 在 Windows 上从 7.3.0 升级到 7.4.0

流程

  1. 从红帽客户门户下载所需的存档。按照 下载 AMQ Broker 归档 中的说明进行操作。
  2. 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
  3. 提取存档的内容。右键点击 .zip 文件并选择 Extract All
  4. 如果代理正在运行,请停止它。

    <broker_instance_dir>\bin\artemis-service.exe stop
  5. 使用文件管理器备份代理。

    1. 右键点击 < broker_instance_dir> 文件夹,然后选择 Copy
    2. 右键点击同一窗口并选择 粘贴
  6. (可选)请注意代理的当前版本。代理停止后,您会在 < broker_instance_dir>\log\artemis.log 文件末尾看到类似如下的行。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.7.0.redhat-00054 [4782d50d-47a2-11e7-a160-9801a793ea45] stopped, uptime 28 minutes
  7. 编辑 & lt;broker_instance_dir&gt; \etc\artemis.profile.cmd<broker_instance_dir> \bin\artemis-service.xml 配置文件。将 ARTEMIS_HOME 属性设置为提取存档时创建的新目录。

    ARTEMIS_HOME=<install_dir>
  8. 编辑 & lt;broker_instance_dir&gt; \etc\artemis.profile.cmd 配置文件。设置 JAVA_ARGS 环境变量来引用正确的日志管理器版本和依赖文件。

    JAVA_ARGS=-Xbootclasspath/%ARTEMIS_HOME%\lib\jboss-logmanager-2.1.10.Final-redhat-00001.jar;%ARTEMIS_HOME%\lib\wildfly-common-1.5.1.Final-redhat-00001.jar
  9. 编辑 & lt;broker_instance_dir&gt; \bin\artemis-service.xml 配置文件。设置 bootstrap 类路径启动参数来引用正确的日志管理器版本和依赖文件。

    <startargument>-Xbootclasspath/a:%ARTEMIS_HOME%\lib\jboss-logmanager-2.1.10.Final-redhat-00001.jar;%ARTEMIS_HOME%\lib\wildfly-common-1.5.1.Final-redhat-00001.jar</startargument>
  10. 编辑 & lt;broker_instance_dir&gt; \etc\bootstrap.xml 配置文件。在 & lt;web > 配置元素中,为 AMQ Broker 添加对 metrics 插件文件的引用。

    <app url="metrics" war="metrics.war"/>
  11. 启动升级的代理。

    <broker_instance_dir>\bin\artemis-service.exe start
  12. (可选)确认代理正在运行并且版本已更改。启动代理后,打开 < broker_instance_dir>\log\artemis.log 文件。找到与下面相似的两行。请注意,当代理可用时,日志中出现的新版本号。

    INFO  [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
    ...
    INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.9.0.redhat-00001 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]

其它资源

  • 有关创建代理实例的更多信息,请参阅创建代理实例
  • 现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录之外的位置。在 & lt;broker_instance_dir> \etc\artemis.profile 文件中,通过在创建代理实例后指定自定义目录的位置来更新 ARTEMIS_INSTANCE_ETC_URI 属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的 \etc\data 目录中。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.