2.10. 将代理实例从 7.10.x 升级到 7.11.x
以下小节介绍了如何将 7.10.x 代理实例升级到 7.11.x,用于不同的操作系统。
从 AMQ Broker 7.1.0 开始,默认只能从本地主机访问 AMQ 管理控制台。要了解配置对控制台的远程访问的信息,请参阅配置本地和远程访问 AMQ 管理控制台。
2.10.1. 在 Linux 上从 7.10.x 升级到 7.11.x
您下载的存档名称可能与以下示例中使用的不同。
先决条件
- 至少 AMQ Broker 7.11.x 需要运行 Java 版本 11。确保每个 AMQ Broker 主机正在运行 Java 版本 11 或更高版本。有关支持的配置的更多信息,请参阅 Red Hat AMQ Broker 7 支持的配置。
流程
- 从红帽客户门户下载所需的存档。按照 下载 AMQ Broker 归档 中的说明进行操作。
将您下载的存档的所有者更改为拥有 AMQ Broker 安装的同一用户。以下示例显示了名为
amq-broker
的用户。sudo chown amq-broker:amq-broker amq-broker-7.x.x-bin.zip
将存档移到 AMQ Broker 原始安装过程中创建的目录中。以下示例使用
/opt/redhat
。sudo mv amq-broker-7.x.x-bin.zip /opt/redhat
作为目录所有者,提取压缩的存档的内容。在以下示例中,用户
amq-broker
使用unzip
命令提取存档。su - amq-broker cd /opt/redhat unzip amq-broker-7.x.x-bin.zip
注意最新存档的内容提取到当前目录中名为
apache-artemis-2.28.0.redhat-00022
的目录。如果代理正在运行,请停止它。
<broker_instance_dir>/bin/artemis stop
(可选)请注意代理的当前版本。代理停止后,您可以在 <
broker_instance_dir>/log/artemis.log
文件末尾看到类似如下的行。INFO [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.18.0.redhat-00010 [0.0.0.0, nodeID=554cce00-63d9-11e8-9808-54ee759954c4]
通过将代理实例目录复制到当前用户的主目录来备份代理实例目录。
cp -r <broker_instance_dir> ~/
更改到您提取压缩存档内容的目录。
cd /opt/redhat/apache-artemis-2.28.0.redhat-00022/bin
运行
artemis upgrade
命令,以升级现有代理。以下示例在/var/opt/amq-broker/mybroker
目录中升级代理实例。./artemis upgrade /var/opt/amq-broker/mybroker
artemis upgrade
命令完成以下步骤来升级代理。-
备份了您要升级的代理实例目录中的
old-config-bkp.<n
> 子目录。 -
将 <
broker_instance_dir> /etc/artemis.profile
文件中的ARTEMIS_HOME
属性设置为提取存档时创建的新目录。 -
更新 &
lt;broker_instance_dir> bin/artemis
脚本,以使用 Apache Log4j 2 日志记录工具,它与 AMQ Broker 7.11.x 捆绑,而不是之前版本中使用的 JBoss Logging 框架。 -
删除 JBoss 使用的现有
<broker_instance_dir> /etc/logging.properties
文件,并为 Apache Log4j 2 logging 工具创建一个新的<broker_instance_dir> /etc/log4j2.properties
文件。
-
备份了您要升级的代理实例目录中的
如果在 7.10.x 中启用了 AMQ Broker 中包含的 Prometheus 指标插件,请将插件的类名称从
org.apache.activemq.artemis.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin
改为com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin
,这是 AMQ Broker 7.11.x 中的插件的新类名称。-
打开 &
lt;broker_instance_dir> /etc/broker.xml
配置文件。 在 &
lt;
metrics> 元素的 <plugin&
gt; 子元素中,将插件类名称更新为com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin
。<metrics> <plugin class-name="com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin"/> </metrics>
-
保存
broker.xml
配置文件。
-
打开 &
启动升级的代理。
<broker_instance_dir>/bin/artemis run
(可选)确认代理正在运行,并且版本已更改。启动代理后,打开 <
broker_instance_dir>/log/artemis.log
文件。查找类似以下的行。请注意代理启动后,日志中出现的新版本号。2023-02-08 20:53:50,128 INFO [org.apache.activemq.artemis.integration.bootstrap] AMQ101000: Starting ActiveMQ Artemis Server version 2.28.0.redhat-00022 2023-02-08 20:53:51,077 INFO [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.28.0.redhat-00022 [0.0.0.0, nodeID=be02a2b2-3e42-11ec-9b8a-4c796e887ecb]
其它资源
- 有关创建代理实例的更多信息,请参阅创建代理实例。
-
现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录以外的位置。在 &
lt;broker_instance_dir> /etc/artemis.profile
文件中,通过在创建代理实例后指定自定义目录的位置来更新ARTEMIS_INSTANCE_ETC_URI
属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的etc/
和data/
目录中。
2.10.2. 在 Windows 上从 7.10.x 升级到 7.11.x
先决条件
- 至少 AMQ Broker 7.11.x 需要运行 Java 版本 11。确保每个 AMQ Broker 主机正在运行 Java 版本 11 或更高版本。有关支持的配置的更多信息,请参阅 Red Hat AMQ Broker 7 支持的配置。
流程
- 按照 下载 AMQ Broker 归档中 提供的说明下载 AMQ Broker 归档。
- 使用文件管理器将存档移到您在上次安装 AMQ Broker 时创建的文件夹。
提取存档的内容。右键单击 .zip 文件并选择 Extract All。
注意最新存档的内容提取到当前目录中名为
apache-artemis-2.28.0.redhat-00022
的文件夹。如果代理正在运行,请停止它。
<broker_instance_dir>\bin\artemis-service.exe stop
(可选)请注意代理的当前版本。代理停止后,您可以在 <
broker_instance_dir>\log\artemis.log
文件末尾看到类似如下的行。INFO [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.18.0.redhat-00010[4782d50d-47a2-11e7-a160-9801a793ea45] stopped, uptime 28 minutes
使用文件管理器备份代理。
-
右键单击 <
broker_instance_dir>
文件夹,然后选择 Copy。 - 在同一窗口中右键单击并选择 粘贴。
-
右键单击 <
更改到您提取压缩存档内容的目录。例如:
cd \redhat\amq-broker\apache-artemis-2.28.0.redhat-00022\bin
运行
artemis upgrade
命令,以升级现有代理。以下示例在C:\redhat\amq-broker\mybroker
目录中升级代理实例。artemis upgrade C:\redhat\amq-broker\mybroker
artemis upgrade
命令完成以下步骤来升级代理。-
备份了您要升级的代理实例目录中的
old-config-bkp.<n
> 子目录。 -
将 <
broker_instance_dir> \etc\artemis.cmd.profile
文件中的ARTEMIS_HOME
属性设置为提取存档时创建的新目录。 -
更新 &
lt;broker_instance_dir> \bin\artemis.cmd
脚本以使用 Apache Log4j 2 logging 工具,该工具与 AMQ Broker 7.11.x 捆绑,而不是之前版本中使用的 JBoss Logging 框架。 -
删除 JBoss 使用的现有
<broker_instance_dir> \etc\logging.properties
文件,并为 Apache Log4j 2 logging 工具创建一个新的<broker_instance_dir> \etc\log4j2.properties
文件。
-
备份了您要升级的代理实例目录中的
如果 AMQ Broker 附带的 Prometheus metrics 插件在 7.10.x 中被启用,请将来自
org.apache.activemq.artemis.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin
的类名称改为com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin
,这是 7.11.x 中的插件的新类名称。-
打开 &
lt;broker_instance_dir> \etc\broker.xml
配置文件。 在 &
lt;
metrics> 元素的 <plugin&
gt; 子元素中,将插件类名称更新为com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin
。<metrics> <plugin class-name="com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin"/> </metrics>
-
保存
broker.xml
配置文件。
-
打开 &
启动升级的代理。
<broker_instance_dir>\bin\artemis-service.exe start
(可选)确认代理正在运行,并且版本已更改。启动代理后,打开 <
broker_instance_dir>\log\artemis.log
文件。找到类似如下的两行。请注意,当代理处于活动状态时,日志中出现的新版本号。2023-02-08 20:53:50,128 INFO [org.apache.activemq.artemis.integration.bootstrap] AMQ101000: Starting ActiveMQ Artemis Server version 2.28.0.redhat-00022 2023-02-08 20:53:51,077 INFO [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.28.0.redhat-00022 [0.0.0.0, nodeID=be02a2b2-3e42-11ec-9b8a-4c796e887ecb]
其它资源
- 有关创建代理实例的更多信息,请参阅创建代理实例。
-
现在,您可以将代理实例的配置文件和数据存储在任何自定义目录中,包括代理实例目录以外的位置。在 &
lt;broker_instance_dir> \etc\artemis.profile
文件中,通过在创建代理实例后指定自定义目录的位置来更新ARTEMIS_INSTANCE_ETC_URI
属性。在以前的版本中,这些配置文件和数据只能存储在代理实例目录中的\etc
和\data
目录中。