8.2. Karaf에서 Fuse Standalone 업그레이드


다음 지침에서는 Apache Karaf에서 Fuse를 업그레이드하는 방법을 설명합니다. 업그레이드 절차를 시작하기 전에 모든 사전 요구 사항이 완료되었는지 확인합니다.

사전 요구 사항

  • 업그레이드하기 전에 Apache Karaf 설치에서 Fuse를 전체 백업해야 합니다.
  • 아직 실행되지 않은 경우 컨테이너를 시작합니다.
작은 정보

컨테이너가 백그라운드에서 실행 중인 경우(또는 원격으로) SSH 콘솔 클라이언트인 bin/client 를 사용하여 컨테이너에 연결합니다.

  • patch:add 명령을 호출하여 업그레이드 설치 프로그램 파일을 컨테이너의 환경에 추가합니다. 예를 들어 fuse-karaf-7.13.0.fuse-7_13_0-00012-redhat-00001.zip 업그레이드 설치 프로그램 파일을 추가하려면 다음을 수행합니다.

    patch:add file:///path/to/fuse-karaf-7.13.0.fuse-7_13_0-00012-redhat-00001.zip
    참고

    patch:find 명령은 컨테이너 환경에 최신 핫픽스 패치를 찾아서 추가하는 데만 사용할 수 있습니다. 전체 업그레이드 패치를 적용하는 데 사용할 수 없습니다.

    프로세스

    1. patch:update 명령을 실행합니다. 컨테이너를 다시 시작할 필요가 없습니다.

      karaf@root()> patch:update
      Current patch mechanism version: 7.1.0.fuse-710023-redhat-00001
      New patch mechanism version detected: 7.2.0.fuse-720035-redhat-00001
      Uninstalling patch features in version 7.1.0.fuse-710023-redhat-00001
      Installing patch features in version 7.2.0.fuse-720035-redhat-00001
    2. patch:list 명령을 호출하여 업그레이드 설치 프로그램 목록을 표시합니다. 이 목록에서 [name] 제목 아래의 항목은 업그레이드 ID입니다. 예를 들면 다음과 같습니다.

      karaf@root()> patch:list
      [name]                                    [installed] [rollup] [description]
      fuse-karaf-7.2.0.fuse-720035-redhat-00001 false       true     fuse-karaf-7.2.0.fuse-720035-redhat-00001
    3. patch:simulate 명령을 호출하고 적용할 업그레이드 ID를 다음과 같이 지정하여 업그레이드를 시뮬레이션합니다.

      karaf@root()> patch:simulate fuse-karaf-7.2.0.fuse-720035-redhat-00001
      INFO : org.jboss.fuse.modules.patch.patch-management (226): Installing rollup patch "fuse-karaf-7.2.0.fuse-720035-redhat-00001"
      ========== Repositories to remove (9):
       - mvn:io.hawt/hawtio-karaf/2.0.0.fuse-710018-redhat-00002/xml/features
      ...
      ========== Repositories to add (9):
       - mvn:io.hawt/hawtio-karaf/2.0.0.fuse-720044-redhat-00001/xml/features
      ...
      ========== Repositories to keep (10):
       - mvn:org.apache.activemq/artemis-features/2.4.0.amq-711002-redhat-1/xml/features
      ...
      ========== Features to update (100):
      [name]                         [version]                         [new version]
      aries-blueprint                4.2.0.fuse-710024-redhat-00002    4.2.0.fuse-720061-redhat-00001
      ...
      ========== Bundles to update as part of features or core bundles (100):
      [symbolic name]                                                [version]                         [new location]
      io.hawt.hawtio-log                                             2.0.0.fuse-710018-redhat-00002    mvn:io.hawt/hawtio-log/2.0.0.fuse-720044-redhat-00001
      ...
      ========== Bundles to reinstall as part of features or core bundles (123):
      [symbolic name]                                                [version]                         [location]
      com.fasterxml.jackson.core.jackson-annotations                 2.8.11                            mvn:com.fasterxml.jackson.core/jackson-annotations/2.8.11
      ...
      Simulation only - no files and runtime data will be modified.
      karaf@root()>

      이렇게 하면 업그레이드가 수행되지만 컨테이너를 실제로 변경하지 않는 경우 컨테이너에 대한 변경 로그가 생성됩니다. 시뮬레이션 로그를 검토하여 컨테이너에 적용할 변경 사항을 파악합니다.

    4. patch:install 명령을 호출하여 컨테이너를 업그레이드하고 적용할 업그레이드 ID를 지정합니다. 예를 들면 다음과 같습니다.

      karaf@root()> patch:install fuse-karaf-7.13.0.fuse-7_13_0-00012-redhat-00001
    5. 업그레이드 아티팩트 중 하나를 검색하여 업그레이드를 확인합니다. 예를 들어 Fuse 7.1.0을 Fuse 7.2.0으로 업그레이드한 경우 다음과 같이 빌드 번호 7.2.0.fuse-720035-redhat-00001으로 번들을 검색할 수 있습니다.

      karaf@root()> bundle:list -l | grep 7.2.0.fuse-720035-redhat-00001
       22 │ Active │  80 │ 7.2.0.fuse-720035-redhat-00001  │ mvn:org.jboss.fuse.modules/fuse-pax-transx-tm-narayana/7.2.0.fuse-720035-redhat-00001
      188 │ Active │  80 │ 7.2.0.fuse-720035-redhat-00001  │ mvn:org.jboss.fuse.modules.patch/patch-commands/7.2.0.fuse-720035-redhat-00001
참고

업그레이드 후 컨테이너를 다시 시작할 때 welcome 배너에 새 버전과 빌드 번호도 표시됩니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.