WebLogic에서 Tomcat 전환 시 고려해야 할 점을 정리해 본다.

1. 아키텍처 및 환경 확인

  • 전체 아키텍처를 확인한다.
  • WebLogic 앞 단에 웹 서버는 어떤 제품을 사용하고 있는지, 웹 및 WAS 각 단에 이중화 구성은 어떻게 되어 있는지 확인한다.
  • 연계가 있는지 확인한다.

2. OS 영역 확인

  • OS 환경 변수를 확인한다. (.profile)
  • TCP 관련 parameter 를 확인한다.
  • File Descriptor 설정을 확인한다.
  • 계정 내 cron 작업 설정 여부를 확인한다.

3. Java 버전 확인

  • 기존 시스템을 Tomcat 7.0.x 대로 전환한다면 Java 역시 6 (1.6) 혹은 7 (1.7)을 사용해야 한다.
  • WebLogic 8.1을 전환하려고 한다면 Java 1.4에서 Java 6 (1.6) 혹은 7 (1.7)로 올려야 하는 셈이다.

4. Framework 확인

  • Spring, Struts, iBatis, Hibernate 및 각 SI 업체가 보유한 Framework에 의하여 구축된 시스템인지 확인한다.
  • 그 Framework이 Java 7 (1.7)과 호환되는지 확인한다.

5. 응용 확인

  • WebLogic에 몇 건의 애플리케이션이 배포되어 있는지 확인한다.
  • 배포되어 있는 각 애플리케이션이 war, ear, jar 등 어떠한 패키징을 사용하는지 확인한다.
  • EJB를 사용하는지 확인한다.
  • Native Library를 사용하는지 확인한다. (*.so 등)
  • X-internet 툴을 사용하는지 확인한다. (miplatform, gauce 등)
  • 리포팅 툴을 사용하는지 확인한다. (oz 등)

6. Thread 확인

  • Thread Pool 설정을 확인한다.
  • 만일 WebLogic의 self-tuning을 사용하는 경우 Tomcat에 적용할 적절한 thread 값 도출이 필요하다.

7. Database 확인

  • 기존 시스템에서 사용하고 있는 JDBC Driver가 Java 6 (1.6) 혹은 7 (1.7)과 호환되는지 확인한다.
  • 기존 JNDI Lookup 방식을 확인하고 변경이 필요할 수 있다.  (java:comp/env/...)
  • DB 계정/패스워드 확보 필요

8. Encoding 확인

9. Spec 관련 확인

  • WebLogic 8.1은 JSTL 1.0 및 Servlet 2.3 까지만 지원한다.

10. JVM 옵션 확인

  • Java 벤더 및 버전 변경에 따른 JVM 옵션을 확인한다.
  • 특히 IBM J9 JVM 에서 Oracle HotSpot JVM 으로 변경된다면 JVM 옵션을 모두 검토해야 한다.

11. weblogic.xml

  • weblogic.xml 에 설정되어 있는 항목이 있다면 다른 방법을 통하여 적용해야 한다.

12. 클러스터

  • WebLogic 클러스터를 사용하고 있다면 Tomcat 클러스터 혹은 별도의 클러스터 방안을 마련해야 한다.

13. 웹 서버

  • WebLogic 앞 단에 어떤 웹 서버가 있는지 확인한다.
  • 그리고 그 웹 서버는 Apache HTTP Server로의 전환이 필요할 가능성이 높다.

대영역 소영역 역할 상세
공통 공통 일정 관리 및 조직간 커뮤니케이션 일정 관리, 이슈 관리, 영역별 담당자 관리, 유관 조직간 커뮤니케이션
AS-IS 분석 서비스 분석 AS-IS 웹 시스템 현황 분석 전환 대상 웹 시스템 사용자 대상, 사용자 수, 업무 성격, URL 등 확인
OS 및 N/W 분석 AS-IS OS 환경, 계정 분석 OS 구성 분석, 서비스 및 응용 계정 별 profile, crontab 확인 분석, 특이사항 식별
AS-IS N/W 구성 분석 N/W 구성 분석, 특이사항 식별
AS-IS 방화벽 Rule 분석 Client → L4 → WEB (HTTP/HTTPS) → WAS (HTTP/AJP) → DB 간 방화벽 Rule 분석
DB 분석 AS-IS DB 종류 및 크기 분석 몇 개의 DB와 연결하고 있고, 각 운영/개발 DB의 크기 분석
전환 테스트를 위한 DB 사용 결정 전환 테스트를 위하여 기존 DB 사용 혹은 운영 Clone DB 생성 필요성 확인
WEB/WAS 분석 AS-IS WEB/WAS 분석을 위한 파일 이관 WEB/WAS 의 엔진, 인스턴스 등 전체적인 구성 분석을 위한 엔진 이하 파일 이관
제공된 AS-IS WEB/WAS 분석 JRE/JDK 종류/버전/bit, WEB/WAS 구성 분석 및 특이사항 식별
응용 분석 응용 소스 코드 보유 여부 확인 소스 코드 보유 여부 확인
DB 연결 방식 확인 DB 연결 설정이 WAS, Framework, 소스 코드 중 어디에 있는지 확인 분석
응용 분석 JEE Spec 분석, Framework 종류/버전, 적용 솔루션 (Java/Native) 등 분석
솔루션 분석 적용 솔루션 분석 및 TO-BE 플랫폼 지원 여부, 업체 존재 여부, 라이선스 재구매 필요 여부 분석
연계 분석 SSO, I/F 등 연계 요소 식별 및 TO-BE 플랫폼 지원 여부, 소스 코드 보유 여부 분석
WEB/WAS 이외 응용 프포그램 분석 WEB/WAS 장비 내 WEB/WAS 이외 배치 프로그램, 3rd-party 솔루션 등 기타 응용 프로그램 식별, 용도 및 담당자 확인
TO-BE 설계 신규 아키텍처 설계 TO-BE 아키텍처 설계 신규 아키텍처 설계 (전체 구성도, N/W, OS, S/W 내 IP, Port 등)
방화벽 Rule 설계 T0-BE 방화벽 Rule 설계 Client → L4 → WEB (HTTP/HTTPS) → WAS (HTTP/AJP) → DB 간 방화벽 Rule 설계, 방화벽 오픈 신청
시스템 영역 신규 OS 영역 작업 OS 계정 생성 WEB/WAS 및 응용 관리 계정 생성, AS-IS 계정 환경 분석에 따른 특이사항 반영
crontab 이관 OS 계정 내 crontab 확인, 이관
파일 시스템 구성 WEB/WAS OS 내 파일 시스템 구성 (엔진, 로그, 소스, NAS 등)
백업 구성 WEB/WAS OS 백업 환경 구성
파일 이관 응용 파일 이관 기존 운영 장비 내 응용 관련 파일을 전환 서버로 이관
WEB/WAS 이외 응용 프로그램 이관 배치 프로그램, 3rd-party 솔루션 등 WEB/WAS 이외 응용 프로그램을 전환 서버로 이관
DB 영역 전환용 DB 생성 전환 테스트 DB 식별 기존 개발 DB를 이용하여 전환 테스트를 진행할 수 있는지 여부 확인
전환 테스트 DB 생성 기존 개발 DB를 이용하여 테스트 하기 어려울 경우 별도 테스트 용 DB 생성
전환 테스트 DB 정보제공 테스트용 DB 정보 제공 (DB URL, 계정/패스워드 등)
WAS 영역 신규 WAS 영역 작업 JDK 설치 JDK 설치
S/W 설치 Apache/Tomcat 설치
인스턴스 구성 JVM, GC Policy, CLASSPATH, Java Property, 인코딩, Thread Pool, DataSource
배포 설정 이관된 응용 파일을 대상으로 Tomcat 내 배포 설정, JSP/Servlet 오토 리로드 설정
DB 연동 DB 버전에 따른 JDBC Driver 설치, DataSource/JNDI 정의, DB 계정/패스워드 설정, Connection Pool 설정
클러스터 설정 세션 클러스터 사용 시 Tomcat 세션 클러스터 설정, 세션 타임아웃 설정
모니터링 환경 구성 전환 테스트 시 이슈를 상세 분석할 수 있도록 모니터링 환경 구성
WEB 영역 신규 WEB 영역 작업 Apache 웹 서버 구성 서비스 URL 매핑, 사용자 요청 처리 설정, URL Rewrite (리다이렉션) 설정, SSL 인증서 설정 및 반영
Apache - Tomcat 연동 Tomcat worker 매핑, 확장자/패턴 기반 연동 설정, Connection Pool 설정
응용 영역 솔루션 솔루션 라이선스 재발급 IP 변경 등으로 인하여 WAS 에서 사용하고 있는 각종 솔루션 내 라이선스 확인 필요 시 재발급
SSL 인증서 SSL 인증서 재발급 웹 서버가 Apache 로 변경됨에 따라 SSL 인증서 재발급
응용 수정 DB 연결 수정 가이드 WebLogic 자체의 Oracle Driver 사용 시 표준 Oracle Driver 사용하도록 가이드, driverClass, JNDI Lookup 가이드
Framework 설정 수정 Framework 내 설정 수정, 파일 시스템 경로 변경에 따른 configuration 내 각종 경로 수정
소스 수정 식별 및 가이드, 수정 (가능 시) 테스트 중 발생한 이슈 F/U 를 통하여 수정 부분 식별 및 가이드, 수정 가능 시 소스 수정
소스 수정, 재 컴파일, 재 반영 이슈 해결을 위한 소스 수정, 재 컴파일, 재 반영
기능 테스트 테스트 일정관리 및 이슈 정리 각 업무 시스템의 테스트 일정관리 및 이슈 정리
테스트 SSO 환경 구성 SSO 를 사용하는 업무 시스템의 경우 SSO 를 통하여 테스트 할 수 있도록 환경 구성
기능 테스트 시나리오 작성 주요 업무 검증을 위한 테스트 시나리오 작성
전환 시스템 기능 테스트 테스트 시나리오에 따른 전환 시스템 테스트
이중화 구성 테스트 장비 중지, 웹 서버 중지, WAS 서버 중지 등 케이스 별로 이중화 아키텍처에 대한 기능 테스트
세션 클러스터 테스트 세션 클러스터 사용 시 세션 유지 여부 테스트
성능 테스트 성능 테스트  성능 테스트 수행
이슈 이슈 해결 각종 기능 오류, 성능 저하 등
실 오픈 실 전환 오픈 오픈 일정 수립 및 공지 각 업무 시스템 별 실 오픈 일정 수립 및 관련자 대상 공지
오픈 작업 각 업무 시스템 별 실 오픈 작업, 구 시스템 중지, 모니터링, DNS 변경
오픈 이후 후속 인프라 작업 모니터링 설정, 인벤토리 관리, 운영 매뉴얼 업데이트
DR 재구성 운영 환경 변경에 따른 DR 재구성