2.10. 브로커 인스턴스를 7.10.x에서 7.11.x로 업그레이드

다음 하위 섹션에서는 다른 운영 체제의 경우 7.10.x 브로커 인스턴스를 7.11.x로 업그레이드하는 방법을 설명합니다.

중요

AMQ Broker 7.1.0부터 기본적으로 로컬 호스트에서 AMQ 관리 콘솔에만 액세스할 수 있습니다. 콘솔에 대한 원격 액세스 구성에 대한 자세한 내용은 AMQ Management Console에 대한 로컬 및 원격 액세스 구성을 참조하십시오.

2.10.1. Linux에서 7.10.x에서 7.11.x로 업그레이드

참고

다운로드한 아카이브의 이름은 다음 예에 사용된 내용과 다를 수 있습니다.

사전 요구 사항

  • 최소한 AMQ Broker 7.11을 실행하려면 Java 버전 11이 필요합니다. 각 AMQ Broker 호스트가 Java 버전 11 이상을 실행하고 있는지 확인합니다. 지원되는 구성에 대한 자세한 내용은 Red Hat AMQ Broker 7 지원 구성을 참조하십시오.

절차

  1. Red Hat 고객 포털에서 원하는 아카이브를 다운로드합니다. AMQ Broker 아카이브 다운로드에 제공된 지침을 따르십시오.
  2. 다운로드한 아카이브의 소유자를 AMQ Broker 설치를 보유한 동일한 사용자로 업그레이드하십시오. 다음 예제에서는 amq-broker 라는 사용자를 보여줍니다.

    sudo chown amq-broker:amq-broker amq-broker-7.x.x-bin.zip
  3. 아카이브를 AMQ Broker의 원래 설치 중에 생성된 디렉터리로 이동합니다. 다음 예에서는 /opt/redhat 을 사용합니다.

    sudo mv amq-broker-7.x.x-bin.zip /opt/redhat
  4. 디렉터리 소유자로서 압축된 아카이브의 콘텐츠를 추출합니다. 다음 예제에서 amq-broker 사용자는 unzip 명령을 사용하여 아카이브를 추출합니다.

    su - amq-broker
    cd /opt/redhat
    unzip amq-broker-7.x.x-bin.zip
    참고

    아카이브의 내용은 현재 디렉터리에서 apache-artemis-2.28.0.redhat-00003 이라는 디렉터리로 추출됩니다.

  5. 브로커가 실행 중이면 중지하십시오.

    <broker_instance_dir>/bin/artemis stop
  6. (선택 사항) 브로커의 현재 버전을 기록해 두십시오. 브로커가 중지되면 < 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]
  7. 현재 사용자의 홈 디렉터리에 복사하여 브로커의 인스턴스 디렉터리를 백업합니다.

    cp -r <broker_instance_dir> ~/
  8. 압축된 아카이브의 콘텐츠를 추출한 디렉터리로 변경합니다.

    cd /opt/redhat/apache-artemis-2.28.0.redhat-00003/bin
  9. artemis upgrade 명령을 실행하여 기존 브로커를 업그레이드합니다. 다음 예제에서는 /var/opt/amq-broker/mybroker 디렉터리의 브로커 인스턴스를 업그레이드합니다.

    ./artemis upgrade /var/opt/amq-broker/mybroker

    artemis upgrade 명령은 브로커를 업그레이드하기 위해 다음 단계를 완료합니다.

    • 각 파일의 백업은 업그레이드하는 브로커에 대한 broker 인스턴스 디렉터리의 old-config-bkp.<n > 하위 디렉터리에서 수정합니다.
    • 아카이브를 추출할 때 < broker_instance_dir> /etc/artemis.profile 파일의 ARTEMIS_HOME 속성을 설정합니다.
    • 이전 버전에서 사용된 JBoss Logging 프레임워크 대신 AMQ Broker 7.11과 번들된 Apache Log4j 2 로깅 유틸리티를 사용하도록 < broker_instance_dir> bin/artemis 스크립트를 업데이트합니다.
    • JBoss에서 사용하는 기존 < broker_instance_dir> /etc/logging.properties 파일을 삭제하고 Apache Log4j 2 로깅 유틸리티에 대한 새로운 < broker_instance_dir> /etc/log4j2.properties 파일을 만듭니다.
  10. AMQ Broker에 포함된 Prometheus 지표 플러그인이 7.10.x에서 활성화되면 org.apache.activemq.artemis.core.core.metrics.plugins.ArtemisPrometheusMetricsPlugin에서 플러그인의 클래스 이름을 com.redhat.amq.broker.core.metrics.plugins.ArtemisPrometheusMetrics.ArtemisPrometheusMetrics.ArtemisPrometheusMetricsPlugin 에서 변경합니다. AMQ Broker 7.11의 플러그인의 새로운 클래스 이름은 무엇입니까.

    1. &lt ;broker_instance_dir&gt; /etc/broker.xml 구성 파일을 엽니다.
    2. < metrics > 요소의 <plugin> 하위 요소에서 플러그인 클래스 이름을 com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin 으로 업데이트합니다.

      <metrics>
          <plugin class-name="com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin"/>
      </metrics>
    3. broker.xml 구성 파일을 저장합니다.
  11. 업그레이드된 브로커를 시작합니다.

    <broker_instance_dir>/bin/artemis run
  12. (선택 사항) 브로커가 실행 중이며 버전이 변경되었는지 확인합니다. 브로커를 시작한 후 < 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 {upstreamversion}.redhat-{build}
    2023-02-08 20:53:51,077 INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version {upstreamversion}.redhat-{build} [0.0.0.0, nodeID=be02a2b2-3e42-11ec-9b8a-4c796e887ecb]

추가 리소스

  • 브로커 인스턴스를 생성하는 방법에 대한 자세한 내용은 브로커 인스턴스 생성을 참조하십시오.
  • 이제 broker 인스턴스 디렉터리 외부 위치를 포함하여 브로커 인스턴스의 구성 파일 및 데이터를 사용자 정의 디렉터리에 저장할 수 있습니다. < broker_instance_dir> /etc/artemis.profile 파일에서 broker 인스턴스를 생성한 후 사용자 지정 디렉터리의 위치를 지정하여 ARTEMIS_INSTANCE_ETC_URI 속성을 업데이트합니다. 이전에는 이러한 구성 파일과 데이터는 broker 인스턴스의 디렉토리 내의 etc/data/ 디렉터리에만 저장할 수 있었습니다.

2.10.2. Windows에서 7.10.x에서 7.11.x로 업그레이드

사전 요구 사항

  • 최소한 AMQ Broker 7.11을 실행하려면 Java 버전 11이 필요합니다. 각 AMQ Broker 호스트가 Java 버전 11 이상을 실행하고 있는지 확인합니다. 지원되는 구성에 대한 자세한 내용은 Red Hat AMQ Broker 7 지원 구성을 참조하십시오.

절차

  1. AMQ Broker 아카이브 다운로드에 제공된 지침에 따라 AMQ Broker 아카이브 를 다운로드합니다.
  2. 파일 관리자를 사용하여 AMQ Broker를 마지막 설치 중에 생성한 폴더로 아카이브를 이동합니다.
  3. 아카이브의 콘텐츠를 추출합니다. .zip 파일을 마우스 오른쪽 버튼으로 클릭하고 압축 풀기 를 선택합니다.

    참고

    아카이브의 콘텐츠는 현재 폴더의 apache-artemis-2.28.0.redhat-00003 이라는 폴더에 추출됩니다.

  4. 브로커가 실행 중이면 중지하십시오.

    <broker_instance_dir>\bin\artemis-service.exe stop
  5. (선택 사항) 브로커의 현재 버전을 기록해 두십시오. 브로커가 중지되면 < 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
  6. 파일 관리자를 사용하여 브로커를 백업합니다.

    1. < broker_instance_dir> 폴더를 마우스 오른쪽 버튼으로 클릭하고 복사를 선택합니다.
    2. 동일한 창을 마우스 오른쪽 버튼으로 클릭하고 Paste 를 선택합니다.
  7. 압축된 아카이브의 콘텐츠를 추출한 디렉터리로 변경합니다. 예를 들면 다음과 같습니다.

    cd \redhat\amq-broker\apache-artemis-2.28.0.redhat-00003\bin
  8. artemis upgrade 명령을 실행하여 기존 브로커를 업그레이드합니다. 다음 예제에서는 C:\redhat\amq-broker\mybroker 디렉터리의 broker 인스턴스를 업그레이드합니다.

    artemis upgrade C:\redhat\amq-broker\mybroker

    artemis upgrade 명령은 브로커를 업그레이드하기 위해 다음 단계를 완료합니다.

    • 각 파일의 백업은 업그레이드하는 브로커에 대한 broker 인스턴스 디렉터리의 old-config-bkp.<n > 하위 디렉터리에서 수정합니다.
    • 아카이브를 추출할 때 < broker_instance_dir> \etc\artemis.cmd.profile 파일의 ARTEMIS_HOME 속성을 설정합니다.
    • 이전 버전에서 사용된 JBoss Logging 프레임워크 대신 AMQ Broker 7.11과 번들된 Apache Log4j 2 로깅 유틸리티를 사용하도록 < broker_instance_dir> \bin\artemis.cmd 스크립트를 업데이트합니다.
    • JBoss에서 사용하는 기존 < broker_instance_dir> \etc\logging.properties 파일을 삭제하고 Apache Log4j 2 로깅 유틸리티에 대한 새로운 < broker_instance_dir> \etc\log4j2.properties 파일을 만듭니다.
  9. AMQ Broker에 포함된 Prometheus 지표 플러그인이 7.10.x에서 활성화된 경우, 클래스 이름에서 새 클래스 이름인 org.apache.activemq.artememis .core.core.metrics.plugins.ArtemisPrometheusMetricsPlugin 에서 플러그인의 클래스 이름을 변경합니다.

    1. &lt ;broker_instance_dir&gt; \etc\broker.xml 구성 파일을 엽니다.
    2. < metrics > 요소의 <plugin> 하위 요소에서 플러그인 클래스 이름을 com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin 으로 업데이트합니다.

      <metrics>
          <plugin class-name="com.redhat.amq.broker.core.server.metrics.plugins.ArtemisPrometheusMetricsPlugin"/>
      </metrics>
    3. broker.xml 구성 파일을 저장합니다.
  10. 업그레이드된 브로커를 시작합니다.

    <broker_instance_dir>\bin\artemis-service.exe start
  11. (선택 사항) 브로커가 실행 중이며 버전이 변경되었는지 확인합니다. 브로커를 시작한 후 < 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 {upstreamversion}.redhat-{build}
    2023-02-08 20:53:51,077 INFO  [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version {upstreamversion}.redhat-{build} [0.0.0.0, nodeID=be02a2b2-3e42-11ec-9b8a-4c796e887ecb]

추가 리소스

  • 브로커 인스턴스를 생성하는 방법에 대한 자세한 내용은 브로커 인스턴스 생성을 참조하십시오.
  • 이제 broker 인스턴스 디렉터리 외부 위치를 포함하여 브로커 인스턴스의 구성 파일 및 데이터를 사용자 정의 디렉터리에 저장할 수 있습니다. < broker_instance_dir> \etc\artemis.profile 파일에서 broker 인스턴스를 생성한 후 사용자 지정 디렉터리의 위치를 지정하여 ARTEMIS_INSTANCE_ETC_URI 속성을 업데이트합니다. 이전에는 이러한 구성 파일과 데이터는 broker 인스턴스의 디렉토리 내의 \etc\data 디렉터리에만 저장할 수 있었습니다.