마이그레이션 문제점 해결

이전 버전의 WebSphere® Application Server에서 마이그레이션하는 동안 문제점이 발생할 수 있습니다.

시작하기 전에

지원된 구성 지원된 구성:

이 기사는 프로파일 구성 마이그레이션에 대한 기사입니다. 애플리케이션을 최신 버전으로 마이그레이션하려면 WebSphere Application Server 마이그레이션 툴킷을 사용하십시오. 자세한 정보는 WASdev의 마이그레이션 툴킷을 참조하십시오.

sptcfg

프로시저

이전 버전의 버전 9.0에서 마이그레이션할 때 문제점이 발생한 경우, 로그 파일과 사용 가능한 다른 정보를 확인하십시오.
  • 작업이 확인 단계에서 실패했습니다.

    마이그레이션 프로세스를 시작하기 전에 구성 오류를 발견했음을 의미합니다. 이는 마이그레이션 작업을 작성할 때 잘못된 데이터를 입력했거나 구성 문제점으로 인한 경우입니다. 로그 출력에서 발견된 오류를 검토하고 정정한 후 다시 실행하십시오. 로그는 temporary_directory_location/nnnnn에 있으며, 여기서 temporary_directory_location은 마이그레이션 작업을 작성할 때 지정한 값(여기서 기본값은 /tmp/migrate)이며 nnnnn은 일괄처리 작업 스트림의 WROUT 및 WRERR 단계의 JESOUT DDNAME에 표시될 뿐만 아니라 마이그레이션 작업 작성 중 생성되고 표시된 고유 번호입니다.

  • 작업이 확인 단계 이후에 실패했습니다.

    확인 단계 후 마이그레이션 작업에 실패한 경우, 마이그레이션 작업을 다시 실행할 수 있습니다. 그러나 먼저 CRHOME 단계에서 작성된 z/OS® 구성 홈 디렉토리의 WebSphere Application Server를 삭제해야 합니다. 이 디렉토리는 마이그레이션 작업을 작성할 때 입력한 홈 디렉토리이며 마이그레이션 JCL(Job Control Language) 환경 변수 V6_HomeDir에서도 찾을 수 있습니다. 마이그레이션 프로시저는 마이그레이션되는 각 노드에 대해 새 구성 파일 시스템을 작성하므로 구성을 삭제하고 처음부터 다시 시작하는 것은 간단한 프로세스입니다.

  • 연합 노드 마이그레이션 관련 문제점이 발생합니다.

    연합 노드를 마이그레이션할 경우 두 개의 마이그레이션을 하나로 합산해야 하므로 연합 노드는 가장 복잡한 노드입니다. 연합 노드의 경우 배치 관리자의 1차 저장소에 포함된 노드 구성 정보와 연합 노드에 포함된 구성 정보를 마이그레이션해야 합니다. 연합 노드를 마이그레이션하려면 배치 관리자에 활성으로 연결해야 합니다. 보안이 사용 가능한 경우 마이그레이션 작업을 작성할 때 생성된 지시사항도 따라야 합니다. 마이그레이션 작업은 보안 연결을 설정하기 위해 올바르게 구성된 WebSphere 관리자의 사용자 ID로 제출해야 합니다.

  • 마이그레이션의 애플리케이션 설치 단계 중 작업이 실패합니다.

    버전 7.0 이상 구성에 있는 엔터프라이즈 애플리케이션을 새 버전 9.0 구성에 설치하도록 마이그레이션 프로세스 옵션을 선택하는 경우 마이그레이션 애플리케이션 설치 단계 중에 일부 오류 메시지가 발생할 수 있습니다.

    버전 7.0 이상 구성에 있는 애플리케이션에 올바르지 않은 배치 정보(일반적으로 이전 WebSphere Application Server 런타임에서 충분히 유효성 검증되지 않은 유효하지 않은 XML 문서)가 있을 수 있습니다. 현재 런타임에는 향상된 애플리케이션 설치 유효성 검증 프로세스가 있으므로 이러한 잘못된 형식의 EAR 파일을 설치할 수 없게 됩니다. 이렇게 되면 WASPostUpgrade의 애플리케이션 설치 단계 중 실패하여 "E" 오류 메시지를 생성합니다. "심각한" 마이그레이션 오류로 간주됩니다.

    이러한 방식으로 애플리케이션 설치 중에 마이그레이션이 실패하는 경우 다음 중 하나를 수행할 수 있습니다.
    • 버전 7.0 이상 애플리케이션에서 문제점을 수정한 다음 다시 마이그레이션하십시오.
    • 마이그레이션을 계속 수행하고 이 오류를 무시하십시오.
      1. FINISHUP 단계에서 마이그레이션 작업을 재시작하여 나머지 마이그레이션 함수가 수행될 수 있도록 하십시오.

        이를 수행하려면 작업 카드에 RESTART=FINISHUP 매개변수를 추가한 다음 작업을 다시 제출하십시오.

      2. 나중에 실패한 애플리케이션에서 문제점을 수정한 다음 관리 콘솔 또는 설치 스크립트를 사용하여 새로운 버전 9.0 구성에서 이 애플리케이션을 수동으로 설치할 수 있습니다.
  • 여유 공간 없음 오류가 발생합니다.

    이 마이그레이션 로그는 temporary_directory_location/nnnnn에 있습니다. 여기서, temporary_directory_location은 마이그레이션 작업을 작성할 때 지정한 값이며(기본값은 /tmp/migrate) nnnnn은 마이그레이션 작업 작성 중에 생성되는 고유 번호입니다. 일반적으로, 마이그레이션 로그의 공간 요구사항은 작습니다. 하지만 추적을 사용 가능으로 설정하면 로그 파일 크기가 상당히 커질 수 있습니다. 문제점이 발견된 후에만 추적을 사용하는 것이 가장 좋습니다. 추적이 필요한 경우 디버깅하게 될 프로세스에서 해당 단계와 관련된 추적을 사용 가능하게 하십시오. 이를 통해 공간 요구사항을 줄일 수 있습니다.

    z/OS 마이그레이션 관리 도구나 zmmt 명령을 사용하여 마이그레이션 작업을 작성할 때 추적을 사용할 수 있습니다. zmmt 명령으로 추적을 사용하려면 응답 파일의 가능한 값에 다음 특성을 설정하십시오.

    • zmbEnablePreUpgradeTrace
    • zmbEnablePostUpgradeTrace
    • zmbEnableProfileTrace
    • zmbEnableScriptingTrace

    zmbEnablePreUpgradeTracezmbEnablePostUpgradeTrace0(추적하지 않음)에서 4(모두 추적) 사이의 값으로 설정하십시오. zmbEnableProfileTracezmbEnableScriptingTrace0(추적하지 않음) 또는 1(추적 사용)로 설정하십시오.

    z/OS 마이그레이션 관리 도구나 zmmt 명령을 사용하여 마이그레이션 정의를 작성할 때 작성된 DATA 데이터 세트의 JCL 멤버 BBOWMxEV에서 마이그레이션 JCL의 변수를 적절한 값으로 변경할 수도 있습니다. JCL을 수정할 때 TraceStateprofileTracedisabled 또는 enabled로 설정하거나 preUpGradeTracepostUpGradeTrace0(추적하지 않음)에서 4(모두 추적) 사이의 값으로 설정하십시오.
    참고: 배치 관리자의 경우, 멤버 이름은 BBOWMDEV입니다. 연합 노드의 경우 멤버 이름은 BBOWMMEV입니다.

    마이그레이션 중에 버전 7.0 이상 구성의 백업 사본이 작성됩니다. 이 백업은 마이그레이션될 정보의 소스가 됩니다. 기본 백업 위치는 /tmp/migrate/nnnnn입니다. 이 위치는 마이그레이션 작업을 작성할 때 변경할 수 있습니다. 마이그레이션할 노드의 크기에 따라 이 백업이 상당히 클 수 있습니다. 임시 영역이 불충분한 경우 이 백업 위치를 변경해야 합니다.

  • 여유 공간 없음 오류가 발생합니다.
    메모리 사용법을 개선하려면 다음을 수행하십시오.
    1. 작업 파일을 편집하여 애플리케이션 공간을 공유하지 않게 하며 JVM 힙 최소값 및 최대값을 늘립니다.
      다음은 배치 관리자 마이그레이션에 대해 BBOWM3D 작업을 편집하는 예제이며 최대 768MB의 힙을 사용합니다. 이는 기본값 256보다 큽니다.
      BPXBATCH SH + export _BPX_SHAREAS=NO; +
      export IBM_JAVA_OPTIONS="-Xms256M -Xmx768M"; + 
      /wit/bigtmp/bbomigrt2.sh WASPreUpgrade + 
      /wit/bigtmp/24173105/_ + 
      1>> /wit/bigtmp/24173105/BBOWMG3D.out +
      2>> /wit/bigtmp/24173105/BBOWMG3D.err; 
    2. 적절한 마이그레이션 스크립트를 편집하십시오.

      읽기 전용 드라이버 파일 시스템에 대한 액세스 권한이 있는 시스템에서 마이그레이션하는 경우, bin 디렉토리에서 WASPreUpgrade.shWASPostUpgrade.sh 스크립트를 편집하십시오.

      읽기 전용 드라이버 시스템을 편집할 수 없는 경우, 단일 마이그레이션 작업 대신 세 개의 마이그레이션 작업을 사용하여 프로파일 작성 후 마이그레이션이 일시정지되며 프로파일 스크립트를 편집할 수 있습니다. BBOWMG3* 마이그레이션 작업을 실행하는 것은 표시된 순서대로 다음 세 개의 작업을 실행하는 것과 같습니다.
      • BBOWMPRO
      • BBOWMPRE
      • BBOWMPOS
      BBOWMG3* 작업 및 세 개의 개별 작업은 상호 배타적이므로 BBOWMG3* 작업 하나만을 실행하거나 세 개의 개별 작업을 실행하십시오. 둘 다 실행하지는 마십시오.
    *PRO 작업은 제품 설치 및 프로파일 작성을 수행합니다. 이 작업이 완료된 후, 마이그레이션에 사용될 버전 9.0 프로파일에 액세스합니다. 버전 9.0 설치 디렉토리로 이동하고 동등한 ${WAS_HOME}/bin 위치로 이동하십시오. 이 위치에 WASPreUpgrade.shWASPostUpgrade.sh 스크립트가 있습니다. 읽기 전용 파일 시스템으로 돌아가는 symlink가 있는 경우, symlink를 제거하고 원래 파일을 읽기 전용 파일 시스템에서 이 위치로 복사합니다. 실제 마이그레이션 스크립트 파일이 ${WAS_HOME}/bin에 있으면, 이 파일을 편집하고 Java™ 수행 옵션 행을 변경하여 힙 설정을 시스템에 적절한 값으로 변경하십시오. 예를 들면, 다음과 같습니다.
    set PERFJAVAOPTION=-Xms256M -Xmx768M

    이제 계속 마이그레이션할 수 있습니다. 세 개의 개별 작업을 실행하도록 결정한 경우, BBOWMPRE 작업을 시작하고 성공한 후(RC=0) BBOWMPOS 작업을 실행하십시오. 마이그레이션 스크립트 파일의 읽기 전용 파일 시스템 사본을 편집한 경우, 해당 BBOWMG3* 작업을 실행할 수 있습니다.

  • 일괄처리 작업 시간이 초과됩니다.

    각 z/OS 설치는 작업 클래스 및 시간 제한 관점에서 서로 다릅니다. 작업 카드에 올바른 작업 클래스와 제한시간 값을 지정하였는지 확인하십시오.

  • 배치 관리자나 독립형 애플리케이션 서버의 마이그레이션은 완료되지만 애플리케이션은 설치되지 않습니다.
    로그 파일에는 다음과 같은 메시지가 표시됩니다.
    MIGR0339I: Application WISO_wisoadmin_war.ear is deploying using the wsadmin command.
    MIGR0241I: Output of wsadmin.
    Error: unable to allocate 268435456 bytes for GC in j9vmem_reserve_memory.
    JVMJ9VM015W Initialization error for library j9gc23(2): Failed to instantiate heap. 256M requested
    Could not create the Java virtual machine.

    bbomigrt2.sh에서 시작된 WASPostUpgrade 스크립트에 JVM(Java Virtual Machine)을 초기화하는 데 충분한 나머지 주소 공간이 없는 것이 문제입니다. 일반적으로 이는 파생된 프로세스가 WASPostUpgrade JVM과 동일한 주소 공간에서 실행되고 있음을 나타냅니다.

    환경 변수 _BPX_SHAREAS를 사용하면 파생된 프로세스가 상위 프로세스와 동일한 주소 공간을 공유해야 하는지 여부를 기본 프로세스에 알려줄 수 있습니다. 기본값(널)은 NO이지만 관리자는 이 값을 YES 또는 MUST로 변경하여 성능 이점을 얻을 수 있습니다. 분기 또는 파생 조치 중에 주소 공간을 복사하지 않아도 되기 때문입니다.

    여기에서 설명된 문제점이 시스템에서 발생하는 경우, 명시적으로 NO로 설정된 환경 변수 _BPX_SHAREAS로 마이그레이션 작업을 실행하십시오. 사용자가 마이그레이션 작업을 실행하는 사용자의 사용자 프로파일 또는 시스템 프로파일(/etc/profile)에서 설정할 수 있습니다. 이 변수를 NO로 설정하려면 다음 항목을 사용하십시오.
    export _BPX_SHAREAS = NO 

    마이그레이션 작업이 완료되면 프로파일을 업데이트하여 _BPX_SHAREAS를 원래 값으로 재설정할 수 있습니다.

  • 마이그레이션 후에 서버를 시작하는 동안 장애가 발생합니다.

    마이그레이션 작업을 작성할 때 생성된 지시사항을 검토하십시오. JCL 프로시저가 올바르게 PROCLIB에 복사되고 RACF® 정의가 작성되고 버전 9.0 라이브러리가 권한 부여되는지 확인하십시오. 셀과 연관된 디먼 프로세스가 올바른 레벨에 있는지 확인하십시오. 디먼 프로세스는 셀 내에 관리되는 모든 서버의 z/OS 버전 레벨에 대해 최상위 WebSphere Application Server에 있어야 합니다.

    버전 6.0.2.11 이상에 없는 버전 7.0 이상 노드를 포함하거나 이러한 노드와 상호 운용되는 버전 9.0 셀로 마이그레이션한 후 클러스터 기능이 실패할 수 있습니다. 이러한 버전 7.0 이상 애플리케이션 서버를 시작할 때 다음 문제점이 발생할 수 있습니다.
    • FFDC(First Failure Data Capture) 로그에 ClassNotFoundException 오류 메시지가 표시됩니다. 이 예외는 RuleEtiquette.runRules 메소드에서 처리되며 다음 예와 유사합니다.
      Exception = java.lang.ClassNotFoundException
      Source = com.ibm.ws.cluster.selection.SelectionAdvisor.<init>
      probeid = 133
      Stack Dump = java.lang.ClassNotFoundException: rule.local.server
      at java.net.URLClassLoader.findClass(URLClassLoader.java(Compiled Code))
      at com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:106)
      at java.lang.ClassLoader.loadClass(ClassLoader.java(Compiled Code))
      at java.lang.ClassLoader.loadClass(ClassLoader.java(Compiled Code))
      at java.lang.Class.forName1(Native Method)
      at java.lang.Class.forName(Class.java(Compiled Code))
      at com.ibm.ws.cluster.selection.rule.RuleEtiquette.runRules(RuleEtiquette.java:154)
      at com.ibm.ws.cluster.selection.SelectionAdvisor.handleNotification(SelectionAdvisor.java:153)
      at com.ibm.websphere.cluster.topography.DescriptionFactory$Notifier.run(DescriptionFactory.java:257)
      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1462)
    • 다음 예제와 유사한 java.io.IOException 오류가 표시됩니다.
      Exception = java.io.IOException
      Source = com.ibm.ws.cluster.topography.DescriptionManagerA. update probeid = 362
      Stack Dump = java.io.IOException
      at com.ibm.ws.cluster.topography.ClusterDescriptionImpl.importFromStream(ClusterDescriptionImpl.java:916)
      at com.ibm.ws.cluster.topography.DescriptionManagerA.update(DescriptionManagerA.java:360)
      Caused by: java.io.EOFException
      at java.io.DataInputStream.readFully(DataInputStream.java(Compiled Code))
      at java.io.DataInputStream.readUTF(DataInputStream.java(Compiled Code))
      at com.ibm.ws.cluster.topography.KeyRepositoryImpl.importFromStream(KeyRepositoryImpl.java:193)
    • 문제점 방지 문제점 방지: WebSphere Application Server 버전 9.0로 마이그레이션된 후, SIP(Session Initiation Protocol) 프록시 JSR116 트래픽은 재전송 제한시간 초과 및 오류 메시지와 함께 실패할 수 있습니다. 이 오류가 발생하면 다음 오류 메시지가 표시될 수 있습니다.
      TCP Channel initialization failed.  The socket bind failed for host and port 5060.
      이 문제점을 해결하려면 전송 체인, UDP_SIP_PROXY_CHAIN을 오류가 발생한 서버의 노드 레벨에 있는 serverindex.xml 파일에서 삭제할 수 있습니다. gotcha

마이그레이션 후에, 오류에 대해 작업 출력 및 로그 파일을 검토하십시오.

참고: WebSphere Application ServerWebSphere Application Server 프로세스 덤프에서 정보를 형식화하는 데 도움이 되는 IPCS(Interactive Problem Control System) verb 종료 기능을 제공합니다. 이 verb 종료의 이름은 버전 7.0 이상에서 실제 모듈 이름의 별명인 CBDATA입니다. 버전 9.0에서는 이 별명이 제거되었습니다. 버전 9.0 이상에서, 별명 대신 이 verb 종료의 실제 이름인 BBORDATA를 사용해야 합니다.

노드를 버전 9.0로 마이그레이션한 후 버전 7.0 이상으로 되돌려야 하는 경우 롤백 환경의 내용을 읽어보십시오.

알려진 문제점과 해결 방법에 대해 IBM® 지원에서 사용 가능한 현재 정보는 IBM 지원 페이지를 참조하십시오. IBM 지원에는 또한 이 문제점 해결에 필요한 정보 수집 시간을 줄일 수 있는 문서가 있습니다. PMR을 열기 전에 IBM 지원 페이지를 참조하십시오.

마이그레이션된 버전 9.0 노드 에이전트에 등록된 새 포트는 다음을 포함합니다. WC_defaulthost, WC_defaulthost_secure, WC_adminhost, WC_adminhost_secure SIB_ENDPOINT_ADDRESS, SIB_ENDPOINT_SECURE_ADDRESS ,SIB_MQ_ENDPOINT_ADDRESS, SIB_MQ_ENDPOINT_SECURE_ADDRESS. 이 포트는 노드 에이전트에서 필요하지 않으며 안전하게 삭제될 수 있습니다.

다음에 수행할 작업

표시된 문제점을 찾지 못한 경우, IBM 지원에 문의하십시오.


주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-zos&topic=tmig_troubleshoot
파일 이름:tmig_troubleshoot.html