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 发行注记。
流程
- 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档。
将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。
sudo chown amq-broker:amq-broker jboss-amq-7.x.x.redhat-1.zip
将存档移到 AMQ Broker 原始安装过程中创建的目录中。在以下示例中,使用了目录
/opt/redhat
。sudo mv jboss-amq-7.x.x.redhat-1.zip /opt/redhat
作为目录所有者,提取压缩存档的内容。归档采用压缩格式。在以下示例中,用户
amq-broker
使用 unzip 命令提取存档。su - amq-broker cd /opt/redhat unzip jboss-amq-7.x.x.redhat-1.zip
如果代理正在运行,则停止代理。
<broker_instance_dir>/bin/artemis stop
通过将代理复制到当前用户的主目录,备份代理的实例目录。
cp -r <broker_instance_dir> ~/
(可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 <
broker_instance_dir> /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
编辑 &
lt;broker_instance_dir> /etc/artemis.profile
配置文件,将ARTEMIS_HOME
属性设置为提取存档时创建的新目录。ARTEMIS_HOME='/opt/redhat/jboss-amq-7.x.x-redhat-1'
启动升级的代理。
<broker_instance_dir>/bin/artemis run
(可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 <
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.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 发行注记。
流程
- 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档。
- 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
- 提取存档的内容。右键点击 .zip 文件并选择 Extract All。
输入以下命令,如果代理正在运行,则停止代理。
<broker_instance_dir>\bin\artemis-service.exe stop
使用文件管理器备份代理。
-
右键点击 <
broker_instance_dir>
文件夹,然后选择 Copy。 - 右键点击同一窗口并选择 粘贴。
-
右键点击 <
(可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 <
broker_instance_dir> \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
编辑 &
lt;broker_instance_dir> \etc\artemis.profile
配置文件,将ARTEMIS_HOME
属性设置为提取存档时创建的新目录。ARTEMIS_HOME=<install_dir>
启动升级的代理。
<broker_instance_dir>\bin\artemis-service.exe start
(可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 <
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.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。
流程
如果正在运行,请停止您要升级的 7.0.x 代理:
$ <broker_instance_dir>/bin/artemis stop
通过将代理复制到当前用户的主目录,备份代理的实例目录。
cp -r <broker_instance_dir> ~/
在 7.0.x 代理的 <
broker_instance_dir> /etc/
目录中打开artemis.profile
文件。更新
ARTEMIS_HOME
属性,以便其值引用 AMQ Broker 7.1.0 的安装目录:ARTEMIS_HOME="<7.1.0_install_dir>"
在您更新的行中,添加属性
ARTEMIS_INSTANCE_URI
,并为它分配一个指向 7.0.x 代理实例目录的值:ARTEMIS_INSTANCE_URI="file://<7.0.x_broker_instance_dir>"
通过添加
jolokia.policyLocation
参数并为其分配以下值来更新JAVA_ARGS
属性:-Djolokia.policyLocation=${ARTEMIS_INSTANCE_URI}/etc/jolokia-access.xml
创建 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
将临时 7.1.0 实例的
etc
目录中的配置文件复制到 7.0.x 代理的 <broker_instance_dir> /etc/
目录中。复制
management.xml
文件:$ cp <temporary_7.1.0_broker_instance_dir>/etc/management.xml <7.0_broker_instance_dir>/etc/
复制
jolokia-access.xml
文件:$ cp <temporary_7.1.0_broker_instance_dir>/etc/jolokia-access.xml <7.0_broker_instance_dir>/etc/
在 7.0.x 代理的 <
broker_instance_dir> /etc/
目录中打开bootstrap.xml
文件。注释掉或删除以下两行:
<app url="jolokia" war="jolokia.war"/> <app url="hawtio" war="hawtio-no-slf4j.war"/>
添加以下内容来替换上一步中删除的两行:
<app url="console" war="console.war"/>
启动您升级的代理:
$ <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。
流程
如果正在运行,请停止您要升级的 7.0.x 代理:
> <broker_instance_dir>\bin\artemis-service.exe stop
使用文件管理器备份代理的实例目录。
-
右键点击 <
broker_instance_dir>
文件夹,然后选择 Copy。 - 右键点击同一窗口并选择 粘贴。
-
右键点击 <
在 7.0.x 代理的 <
broker_instance_dir> /etc/
目录中打开artemis.profile
文件。更新
ARTEMIS_HOME
属性,以便其值引用 AMQ Broker 7.1.0 的安装目录:ARTEMIS_HOME="<7.1.0_install_dir>"
在您更新的行中,添加属性
ARTEMIS_INSTANCE_URI
,并为它分配一个指向 7.0.x 代理实例目录的值:ARTEMIS_INSTANCE_URI="file://<7.0.x_broker_instance_dir>"
通过添加
jolokia.policyLocation
参数并为其分配以下值来更新JAVA_ARGS
属性:-Djolokia.policyLocation=${ARTEMIS_INSTANCE_URI}/etc/jolokia-access.xml
创建 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
将临时 7.1.0 实例的
etc
目录中的配置文件复制到 7.0.x 代理的 <broker_instance_dir> /etc/
目录中。复制
management.xml
文件:> cp <temporary_7.1.0_broker_instance_dir>/etc/management.xml <7.0_broker_instance_dir>/etc/
复制
jolokia-access.xml
文件:> cp <temporary_7.1.0_broker_instance_dir>/etc/jolokia-access.xml <7.0_broker_instance_dir>/etc/
在 7.0.x 代理的 <
broker_instance_dir> /etc/
目录中打开bootstrap.xml
文件。注释掉或删除以下两行:
<app url="jolokia" war="jolokia.war"/> <app url="hawtio" war="hawtio-no-slf4j.war"/>
添加以下内容来替换上一步中删除的两行:
<app url="console" war="console.war"/>
启动您升级的代理:
> <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
您下载的存档名称可能与以下示例中使用的内容不同。
流程
- 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档。
将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。
sudo chown amq-broker:amq-broker amq-7.x.x.redhat-1.zip
将存档移到 AMQ Broker 原始安装过程中创建的目录中。在以下示例中,使用了目录
/opt/redhat
。sudo mv amq-7.x.x.redhat-1.zip /opt/redhat
作为目录所有者,提取压缩存档的内容。在以下示例中,用户
amq-broker
使用 unzip 命令提取存档。su - amq-broker cd /opt/redhat unzip jboss-amq-7.x.x.redhat-1.zip
如果代理正在运行,则停止代理。
<broker_instance_dir>/bin/artemis stop
通过将代理复制到当前用户的主目录,备份代理的实例目录。
cp -r <broker_instance_dir> ~/
(可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 <
broker_instance_dir> /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]
编辑 &
lt;broker_instance_dir> /etc/artemis.profile
配置文件,将ARTEMIS_HOME
属性设置为提取存档时创建的新目录。ARTEMIS_HOME='/opt/redhat/amq-7.x.x-redhat-1'
启动升级的代理。
<broker_instance_dir>/bin/artemis run
(可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 <
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.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
流程
- 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档。
- 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
- 提取存档的内容。右键点击 .zip 文件并选择 Extract All。
输入以下命令,如果代理正在运行,则停止代理。
<broker_instance_dir>\bin\artemis-service.exe stop
使用文件管理器备份代理。
-
右键点击 <
broker_instance_dir>
文件夹,然后选择 Copy。 - 右键点击同一窗口并选择 粘贴。
-
右键点击 <
(可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 <
broker_instance_dir> \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
编辑 &
lt;broker_instance_dir> \etc\artemis.profile.cmd
和 <broker_instance_dir> \bin\artemis-service.xml
配置文件,将ARTEMIS_HOME
属性设置为在提取存档时创建的新目录。ARTEMIS_HOME=
<install_dir>
启动升级的代理。
<broker_instance_dir>\bin\artemis-service.exe start
(可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 <
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.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"/>
; 行,如上例所示。然后,保存修改后的 bootstrap 文件并启动升级过程,如后续章节所述。
从 AMQ Broker 7.1.0 开始,默认只能从本地主机访问 AMQ 管理控制台。要了解如何配置对控制台的远程访问,请参阅配置对 AMQ 管理控制台的本地和远程访问。
2.2.4.2. 在 Linux 上从 7.2.x 升级到 7.3.0
您下载的存档名称可能与以下示例中使用的内容不同。
流程
- 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档。
将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。
sudo chown amq-broker:amq-broker amq-7.x.x.redhat-1.zip
将存档移到 AMQ Broker 原始安装过程中创建的目录中。在以下示例中,使用了目录
/opt/redhat
。sudo mv amq-7.x.x.redhat-1.zip /opt/redhat
作为目录所有者,提取压缩存档的内容。在以下示例中,用户
amq-broker
使用 unzip 命令提取存档。su - amq-broker cd /opt/redhat unzip jboss-amq-7.x.x.redhat-1.zip
如果代理正在运行,则停止代理。
<broker_instance_dir>/bin/artemis stop
通过将代理复制到当前用户的主目录,备份代理的实例目录。
cp -r <broker_instance_dir> ~/
(可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 <
broker_instance_dir> /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]
编辑 &
lt;broker_instance_dir> /etc/artemis.profile
配置文件,将ARTEMIS_HOME
属性设置为提取存档时创建的新目录。ARTEMIS_HOME='/opt/redhat/amq-7.x.x-redhat-1'
启动升级的代理。
<broker_instance_dir>/bin/artemis run
(可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 <
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.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
流程
- 按照 下载 AMQ Broker 归档中的说明,从红帽客户门户网站下载所需的归档。
- 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
- 提取存档的内容。右键点击 .zip 文件并选择 Extract All。
输入以下命令,如果代理正在运行,则停止代理。
<broker_instance_dir>\bin\artemis-service.exe stop
使用文件管理器备份代理。
-
右键点击 <
broker_instance_dir>
文件夹,然后选择 Copy。 - 右键点击同一窗口并选择 粘贴。
-
右键点击 <
(可选)请注意代理的当前版本。代理停止后,日志文件末尾会显示类似如下的行,该文件可在 <
broker_instance_dir> \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
编辑 &
lt;broker_instance_dir> \etc\artemis.profile.cmd
和 <broker_instance_dir> \bin\artemis-service.xml
配置文件,将ARTEMIS_HOME
属性设置为在提取存档时创建的新目录。ARTEMIS_HOME=
<install_dir>
编辑 &
lt;broker_instance_dir> \etc\artemis.profile.cmd
配置文件,以设置 JAVA_ARGS 环境变量来引用正确的日志管理器版本。JAVA_ARGS=
<install_dir>\lib\jboss-logmanager-2.0.3.Final-redhat-1.jar
编辑 &
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>
启动升级的代理。
<broker_instance_dir>\bin\artemis-service.exe start
(可选)确认代理正在运行并且版本已更改。启动代理后,打开日志文件 <
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.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
您下载的存档名称可能与以下示例中使用的内容不同。
流程
- 从红帽客户门户下载所需的存档。按照 下载 AMQ Broker 归档 中的说明进行操作。
将存档的所有者改为拥有 AMQ Broker 安装的同一用户,以升级。以下示例显示了名为
amq-broker
的用户。sudo chown amq-broker:amq-broker amq-broker-7.x.x.redhat-1.zip
将存档移到 AMQ Broker 原始安装过程中创建的目录中。以下示例使用
/opt/redhat
。sudo mv amq-broker-7.x.x.redhat-1.zip /opt/redhat
作为目录所有者,提取压缩存档的内容。在以下示例中,用户
amq-broker
使用unzip
命令提取存档。su - amq-broker cd /opt/redhat unzip amq-broker-7.x.x.redhat-1.zip
如果代理正在运行,请停止它。
<broker_instance_dir>/bin/artemis stop
通过将代理复制到当前用户的主目录,备份代理的实例目录。
cp -r <broker_instance_dir> ~/
(可选)请注意代理的当前版本。代理停止后,您会在 <
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]
编辑 &
lt;broker_instance_dir> /etc/artemis.profile
配置文件。将
ARTEMIS_HOME
属性设置为提取存档时创建的新目录。ARTEMIS_HOME='/opt/redhat/amq-broker-7.x.x-redhat-1'
编辑
JAVA_ARGS
属性。添加 bootstrap 类路径参数,该参数引用日志管理器的依赖文件。-Xbootclasspath/a:$ARTEMIS_HOME/lib/wildfly-common-1.5.1.Final-redhat-00001.jar
编辑 &
lt;broker_instance_dir> /etc/bootstrap.xml
配置文件。在 <web
> 配置元素中,为 AMQ Broker 添加对 metrics 插件文件的引用。<app url="metrics" war="metrics.war"/>
启动升级的代理。
<broker_instance_dir>/bin/artemis run
(可选)确认代理正在运行并且版本已更改。启动代理后,打开 <
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
流程
- 从红帽客户门户下载所需的存档。按照 下载 AMQ Broker 归档 中的说明进行操作。
- 使用文件管理器将存档移到您在最后一次安装 AMQ Broker 时创建的文件夹。
- 提取存档的内容。右键点击 .zip 文件并选择 Extract All。
如果代理正在运行,请停止它。
<broker_instance_dir>\bin\artemis-service.exe stop
使用文件管理器备份代理。
-
右键点击 <
broker_instance_dir>
文件夹,然后选择 Copy。 - 右键点击同一窗口并选择 粘贴。
-
右键点击 <
(可选)请注意代理的当前版本。代理停止后,您会在 <
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
编辑 &
lt;broker_instance_dir> \etc\artemis.profile.cmd
和<broker_instance_dir> \bin\artemis-service.xml
配置文件。将ARTEMIS_HOME
属性设置为提取存档时创建的新目录。ARTEMIS_HOME=
<install_dir>
编辑 &
lt;broker_instance_dir> \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
编辑 &
lt;broker_instance_dir> \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>
编辑 &
lt;broker_instance_dir> \etc\bootstrap.xml
配置文件。在 <web
> 配置元素中,为 AMQ Broker 添加对 metrics 插件文件的引用。<app url="metrics" war="metrics.war"/>
启动升级的代理。
<broker_instance_dir>\bin\artemis-service.exe start
(可选)确认代理正在运行并且版本已更改。启动代理后,打开 <
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
目录中。