8.7. JBoss EAP 7.4 버전 관리

최신 버전의 JBoss EAP는 이전 버전을 실행 중인 JBoss EAP 서버와 호스트를 관리할 수 있습니다. 최신 버전의 JBoss EAP를 관리하려면 다음 섹션을 참조하십시오.

참고

Red Hat은 JBoss EAP 6.x를 실행하는 호스트 및 서버를 관리하는 JBoss EAP 7.4 도메인 컨트롤러를 더 이상 사용하지 않습니다. 더 이상 사용되지 않는 이러한 지원 기능은 버전 8.0인 다음 주요 JBoss EAP 릴리스에서 완전히 제거됩니다. JBoss EAP 8.0은 JBoss EAP 7.4에서 실행 중인 호스트 및 서버만 지원합니다.

8.7.1. JBoss EAP 7.x 도메인 컨트롤러에서 JBoss EAP 6 인스턴스를 관리하도록 구성

JBoss EAP 7.4 도메인 컨트롤러는 호스트와 서버가 JBoss EAP 6.2 이상을 실행하는 경우 JBoss EAP 6을 실행하는 호스트와 서버를 관리할 수 있습니다.

참고

JBoss EAP 7.0 도메인 컨트롤러가 다른 패치 릴리스에 있는 JBoss EAP 7.0 호스트를 관리하는 경우 JBoss EAP 7.0 도메인 컨트롤러에 구성 변경이 필요하지 않습니다. 그러나 JBoss EAP 7.0 도메인 컨트롤러에서 관리하는 호스트 컨트롤러의 버전과 동일한 패치 릴리스를 실행해야 합니다.

JBoss EAP 7 관리형 도메인에서 JBoss EAP 6 인스턴스를 성공적으로 관리하려면 다음 작업을 완료합니다.

이러한 작업이 완료되면 관리 CLI를 사용하여 JBoss EAP 7 도메인 컨트롤러에서 JBoss EAP 6 서버와 구성을 관리할 수 있습니다. JBoss EAP 6 호스트는 배치 처리와 같은 새로운 JBoss EAP 7 기능을 활용할 수 없습니다.

주의

관리 콘솔은 최신 버전의 JBoss EAP에 최적화되어 있으므로 JBoss EAP 6 호스트, 서버 및 프로필을 업데이트하는 데 사용해서는 안 됩니다. JBoss EAP 7 관리형 도메인에서 JBoss EAP 6 구성을 관리할 때 관리 CLI를 사용합니다.

8.7.1.1. JBoss EAP 7 도메인 컨트롤러에 JBoss EAP 6 구성 추가

도메인 컨트롤러가 JBoss EAP 6 서버를 관리할 수 있도록 하려면 JBoss EAP 7 도메인 구성에서 JBoss EAP 6 구성 세부 정보를 제공해야 합니다. JBoss EAP 6 프로필, 소켓 바인딩 그룹 및 서버 그룹을 JBoss EAP 7 domain.xml 구성 파일에 복사하여 이 작업을 수행할 수 있습니다.

JBoss EAP 7 구성에서 기존 이름과 충돌하는 경우 리소스 이름을 변경해야 합니다. 또한 적절한 동작을 보장하기 위해 몇 가지 추가 조정 도 있습니다.

다음 절차에서는 JBoss EAP 6 기본 프로필, standard-sockets 소켓 바인딩 그룹 및 main-server-group 서버 그룹을 사용합니다.

  1. JBoss EAP 7 domain.xml 구성 파일을 편집합니다. 편집하기 전에 이 파일을 백업하는 것이 좋습니다.
  2. 해당 JBoss EAP 6 프로필을 JBoss EAP 7 domain.xml 파일에 복사합니다.

    이 절차에서는 JBoss EAP 6 기본 프로필이 복사되어 eap6-default 로 이름이 변경된 것으로 가정합니다.

    JBoss EAP 7 domain.xml

    <profiles>
      ...
      <profile name="eap6-default">
        ...
      </profile>
    </profiles>

  3. 이 프로필에서 사용하는 필요한 확장 기능을 추가합니다.

    JBoss EAP 6 프로필에서 JBoss EAP 7에 더 이상 존재하지 않는 하위 시스템을 사용하는 경우 JBoss EAP 도메인 구성에 적절한 확장 기능을 추가해야 합니다.

    JBoss EAP 7 domain.xml

    <extensions>
      ...
      <extension module="org.jboss.as.configadmin"/>
      <extension module="org.jboss.as.threads"/>
      <extension module="org.jboss.as.web"/>
    <extensions>

  4. 해당 JBoss EAP 6 소켓 바인딩 그룹을 JBoss EAP 7 domain.xml 파일에 복사합니다.

    이 절차에서는 JBoss EAP 6 standard-sockets 소켓 바인딩 그룹이 복사되어 eap6-standard-sockets 로 바뀌었다고 가정합니다.

    JBoss EAP 7 domain.xml

    <socket-binding-groups>
      ...
      <socket-binding-group name="eap6-standard-sockets" default-interface="public">
        ...
      </socket-binding-group>
    </socket-binding-groups>

  5. 해당 JBoss EAP 6 서버 그룹을 JBoss EAP 7 domain.xml 파일에 복사합니다.

    이 절차에서는 JBoss EAP 6 main-server-group 서버 그룹이 복사되어 이름이 eap6-main-server-group 로 변경되었다고 가정합니다. 또한 JBoss EAP 6 프로필, eap6-default 및 JBoss EAP 6 소켓 바인딩 그룹인 eap6- standard-sockets 를 사용하도록 이 서버 그룹을 업데이트해야 합니다.

    JBoss EAP 7 domain.xml

    <server-groups>
      ...
      <server-group name="eap6-main-server-group" profile="eap6-default">
        ...
        <socket-binding-group ref="eap6-standard-sockets"/>
      </server-group>
    </server-groups>

8.7.1.2. JBoss EAP 6 프로필의 동작 업데이트

JBoss EAP 6 인스턴스에서 사용하는 프로필에 대한 추가 업데이트는 JBoss EAP 버전과 원하는 동작에 따라 업데이트해야 합니다. 기존 JBoss EAP 6 인스턴스에서 사용하는 하위 시스템 및 구성에 따라 추가 변경이 필요할 수 있습니다.

JBoss EAP 7 도메인 컨트롤러를 시작하고 해당 관리 CLI를 시작하여 다음 업데이트를 수행합니다. 이 예제에서는 JBoss EAP 6 프로필이 eap6-default 라고 가정합니다.

  • bean-validation 하위 시스템을 제거합니다.

    JBoss EAP 7은 해당 하위 시스템에서 빈 유효성 검사 기능을 자체 하위 시스템인 bean-validation 으로 이동했습니다. JBoss EAP 7 도메인 컨트롤러에서 레거시 하위 시스템을 확인하는 경우 새 bean-validation 하위 시스템을 추가합니다. 그러나 JBoss EAP 6 호스트는 이 하위 시스템을 인식하지 않으므로 제거해야 합니다.

    JBoss EAP 7 도메인 컨트롤러 CLI

    /profile=eap6-default/subsystem=bean-validation:remove

  • CDI 1.0 동작을 설정합니다.

    이는 JBoss EAP 7에서 사용되는 이후 CDI 버전의 동작과 달리 JBoss EAP 6 서버에 CDI 1.0 동작을 원하는 경우에만 필요합니다. CDI 1.0 동작을 수행하려면 weld 하위 시스템에서 다음 업데이트를 수행합니다.

    JBoss EAP 7 도메인 컨트롤러 CLI

    /profile=eap6-default/subsystem=weld:write-attribute(name=require-bean-descriptor,value=true)
    
    /profile=eap6-default/subsystem=weld:write-attribute(name=non-portable-mode,value=true)

  • JBoss EAP 6.2의 데이터 소스 통계를 활성화합니다.

    이는 JBoss EAP 6.2 서버에서 프로필을 사용하는 경우에만 필요합니다. JBoss EAP 6.3에는 통계를 수집하지 않기 위해 기본값이 false인 statistics-enabled 특성이 도입되었지만 JBoss EAP 6.2 동작은 통계를 수집하는 것이었습니다. JBoss EAP 6.2 호스트에서 이 프로필을 사용하고 최신 JBoss EAP 버전을 실행하는 호스트에서 사용하는 경우 허용되지 않는 호스트 간에 동작이 일치하지 않습니다. 따라서 JBoss EAP 6.2 호스트에서 사용할 프로필은 해당 데이터 소스에 대해 다음과 같이 변경해야 합니다.

    JBoss EAP 7 도메인 컨트롤러 CLI

    /profile=eap6-default/subsystem=datasources/data-source=ExampleDS:write-attribute(name=statistics-enabled,value=true)

8.7.1.3. JBoss EAP 6 서버의 서버 그룹 설정

서버 그룹의 이름을 변경한 경우 JBoss EAP 7 구성에 지정된 새 서버 그룹을 사용하도록 JBoss EAP 6 호스트 구성을 업데이트해야 합니다. 이 예에서는 JBoss EAP 7 domain.xml 에 지정된 eap6-main-server-group 서버 그룹을 사용합니다.

JBoss EAP 6 host-slave.xml

<servers>
    <server name="server-one" group="eap6-main-server-group"/>
    <server name="server-two" group="eap6-main-server-group">
        <socket-bindings port-offset="150"/>
    </server>
</servers>

참고

호스트는 최신 버전의 JBoss EAP에서 도입된 기능 또는 구성 설정을 호스트가 실행 중인 것보다 사용할 수 없습니다.

8.7.1.4. JBoss EAP 6 인스턴스가 JBoss EAP 7 업데이트를 수신하지 못하도록 방지

관리형 도메인의 도메인 컨트롤러는 구성 업데이트를 호스트 컨트롤러에 전달합니다. host-exclude 구성을 사용하여 특정 버전에서 숨겨야 하는 리소스를 지정해야 합니다. JBoss EAP 6 버전에 대해 사전 구성된 호스트 제외 옵션을 선택합니다. EAP62,EAP63,EAP64 또는 EAP64z.

host - exclude 구성의 active-server- groups 특성은 특정 버전에서 사용하는 서버 그룹 목록을 지정합니다. 이러한 서버 그룹 및 관련 프로필, 소켓 바인딩 그룹 및 배포 리소스는 이 버전의 호스트에서 사용할 수 있지만 다른 모든 호스트는 이러한 호스트에서 숨겨집니다.

이 예제에서는 버전이 JBoss EAP 6.4.z라고 가정하고 JBoss EAP 6 서버 그룹 eap6-main-server-group 을 활성 서버 그룹으로 추가합니다.

JBoss EAP 7 도메인 컨트롤러 CLI

/host-exclude=EAP64z:write-attribute(name=active-server-groups,value=[eap6-main-server-group])

필요한 경우 active-socket-binding-groups 특성을 사용하여 서버에서 사용하는 추가 소켓 바인딩 그룹을 지정할 수 있습니다. 이는 active-server-groups 에 지정된 서버 그룹과 연결되지 않은 소켓 바인딩 그룹에만 필요합니다.

8.7.2. JBoss EAP 7.4 도메인 컨트롤러에서 JBoss EAP의 이전 마이너 릴리스를 관리하도록 구성

JBoss EAP 7.4 도메인 컨트롤러는 JBoss EAP의 이전 마이너 릴리스에서 실행 중인 호스트와 서버를 관리할 수 있습니다.

JBoss EAP 7.4 관리형 도메인에서 JBoss EAP 7.3 인스턴스를 성공적으로 관리하려면 다음 작업을 완료합니다.

이러한 작업을 완료한 후에는 관리 CLI를 사용하여 JBoss EAP 7.3 서버 및 구성을 JBoss EAP 7.4 도메인 컨트롤러에서 관리할 수 있습니다.

주의

관리 콘솔은 최신 버전의 JBoss EAP에 최적화되었으므로 CLI를 사용하여 JBoss EAP 7.4 관리형 도메인에서 JBoss EAP 7.3 구성을 관리해야 합니다. 관리 콘솔을 사용하여 JBoss EAP 7.3 호스트, 서버 및 프로필을 업데이트하지 마십시오.

8.7.2.1. JBoss EAP 7.3 구성을 JBoss EAP 7.4 도메인 컨트롤러에 추가

도메인 컨트롤러가 JBoss EAP 7.3 서버를 관리할 수 있도록 하려면 JBoss EAP 7.4 도메인 구성에서 JBoss EAP 7.3 구성 세부 정보를 제공해야 합니다. JBoss EAP 7.3 프로필, 소켓 바인딩 그룹 및 서버 그룹을 JBoss EAP 7.4 domain.xml 구성 파일에 복사하여 이 작업을 수행할 수 있습니다.

해당 이름이 JBoss EAP 7.4 구성에서 리소스 이름과 충돌하는 경우 리소스 이름을 변경해야 합니다.

다음 절차에서는 JBoss EAP 7.3 기본 프로필, standard-sockets 소켓 바인딩 그룹 및 main-server-group 서버 그룹을 사용합니다.

사전 요구 사항

  • JBoss EAP 7.3 기본 프로필을 eap73-default 로 복사하고 이름을 바꾸었습니다.
  • JBoss EAP 7.3 standard-sockets 소켓 바인딩 그룹을 eap73- standard-sockets 로 복사하고 이름을 변경했습니다.
  • JBoss EAP 7.3 main-server-group 서버 그룹을 eap73- main-server-group 으로 복사하고 이름을 변경했습니다.

    • JBoss EAP 7.3 프로필, eap73-default 를 사용하고 JBoss EAP 7.3 소켓 바인딩 그룹인 eap73-standard-sockets 를 사용하도록 서버 그룹을 업데이트했습니다.

절차

  1. JBoss EAP 7.4 domain.xml 구성 파일을 편집합니다.

    중요

    파일을 편집하기 전에 JBoss EAP 7.4 domain.xml 구성 파일을 백업합니다.

  2. 적용 가능한 JBoss EAP 7.3 프로필을 JBoss EAP 7.4 domain.xml 파일에 복사합니다. 예를 들면 다음과 같습니다.

    <profiles>
      ...
      <profile name="eap73-default">
        ...
      </profile>
    </profiles>
  3. 적용 가능한 JBoss EAP 7.3 소켓 바인딩 그룹을 JBoss EAP 7.4 domain.xml 파일에 복사합니다. 예를 들면 다음과 같습니다.

    <socket-binding-groups>
      ...
      <socket-binding-group name="eap73-standard-sockets" default-interface="public">
        ...
      </socket-binding-group>
    </socket-binding-groups>
  4. 해당 JBoss EAP 7.3 서버 그룹을 JBoss EAP 7.4 domain.xml 파일에 복사합니다.

    <server-groups>
      ...
      <server-group name="eap73-main-server-group" profile="eap73-default">
        ...
        <socket-binding-group ref="eap73-standard-sockets"/>
      </server-group>
    </server-groups>

8.7.2.2. JBoss EAP7.3 서버의 서버 그룹 설정

서버 그룹의 이름을 변경한 경우 JBoss EAP 7.4 구성에 지정된 새 서버 그룹을 사용하도록 JBoss EAP 7.3 호스트 구성을 업데이트해야 합니다. 이 예에서는 JBoss EAP 7.4 domain.xml 에 지정된 eap73-main-server-group 서버 그룹을 사용합니다.

JBoss EAP 7.3 host-slave.xml

<servers>
    <server name="server-one" group="eap73-main-server-group"/>
    <server name="server-two" group="eap73-main-server-group">
        <socket-bindings port-offset="150"/>
    </server>
</servers>

참고

호스트는 최신 버전의 JBoss EAP에서 도입된 기능 또는 구성 설정을 호스트가 실행 중인 것보다 사용할 수 없습니다.

8.7.2.3. JBoss EAP 7.3 인스턴스가 JBoss EAP 7.4 업데이트를 수신하지 못하도록 방지

관리형 도메인 컨트롤러는 구성 업데이트를 호스트 컨트롤러에 전달하여 JBoss EAP 7.3 호스트에서 JBoss EAP 7.4에 고유한 구성 및 리소스를 받지 못하도록 합니다. 해당 리소스를 무시하도록 JBoss EAP 7.3 호스트를 구성해야 합니다. JBoss EAP 7.3 호스트에서 ignore-unused-configuration 속성을 설정하여 이 작업을 수행할 수 있습니다.

참고

host-exclude 구성을 사용하여 도메인 컨트롤러에 특정 JBoss EAP 버전을 실행하는 호스트의 특정 리소스를 숨기도록 지시할 수도 있습니다. host-exclude 구성을 사용하는 방법에 대한 예는 JBoss EAP 7 업데이트 수신에서 JBoss EAP 6 인스턴스 방지를 참조하십시오. JBoss EAP 7.3의 경우 EAP73 host -exclude 옵션을 사용합니다.

JBoss EAP 7.3 호스트 컨트롤러 연결 구성에서 원격 도메인 컨트롤러에 대한 ignore-unused-configuration 속성을 true 로 설정합니다.

JBoss EAP 7.3 host-slave.xml

<domain-controller>
    <remote security-realm="ManagementRealm" ignore-unused-configuration="true">
        <discovery-options>
            <static-discovery name="primary" protocol="${jboss.domain.master.protocol:remote}" host="${jboss.domain.master.address}" port="${jboss.domain.master.port:9990}"/>
        </discovery-options>
    </remote>
</domain-controller>

이 설정을 사용하면 이 호스트에서 사용하는 서버 그룹과 연결된 프로필, 소켓 바인딩 그룹 및 배포 리소스만 호스트에서 사용할 수 있습니다. 다른 모든 리소스는 무시됩니다.