메인프레임 애플리케이션 마이그레이션 전략

대부분의 팀은 기본프레임 환경에서 Azure로 애플리케이션을 마이그레이션하는 경우 일반적으로 가능한 경우 어디서나 재사용하는 실용적인 접근 방식을 따릅니다. 그런 다음 애플리케이션을 다시 작성하거나 교체하는 단계별 배포를 시작합니다.

애플리케이션 마이그레이션에서는 대개 다음 전략을 하나 이상 사용합니다.

  • 다시 호스팅: 기본프레임에서 기존 코드, 프로그램 및 애플리케이션을 이동합니다. 클라우드 인스턴스에서 호스트되는 기본프레임 에뮬레이터에서 실행되도록 코드를 다시 컴파일합니다. 이 방법은 일반적으로 애플리케이션을 클라우드 기반 에뮬레이터로 이동한 다음, 데이터베이스를 클라우드 기반 데이터베이스로 마이그레이션하는 것부터 시작합니다. 데이터 및 파일 변환과 함께 이 전략에는 일부 엔지니어링 및 리팩터링이 필요합니다.

    또는 기존 호스팅 공급자를 사용하여 다시 호스트할 수 있습니다. 클라우드의 주요 이점 중 하나는 인프라 관리를 아웃소싱하는 것입니다. 기본프레임 워크로드를 호스트하는 데이터 센터 공급자를 찾습니다. 이 모델은 일정 시간을 구입하고 공급업체 잠금을 줄이며 중간 비용을 절감할 수 있습니다.

  • 사용 중지: 마이그레이션 전에 더 이상 필요하지 않은 애플리케이션을 사용 중지합니다.

  • 다시 빌드: 일부 조직에서는 최신 기술을 사용하여 프로그램을 완전히 다시 작성하기로 선택합니다. 비용과 복잡한 작업이 추가로 발생하는 이 접근 방식은 리프트 앤 시프트 접근 방식처럼 흔히 사용되지는 않습니다. 이러한 유형의 마이그레이션 후에는 코드 변환 엔진을 사용하여 모듈 및 코드 바꾸기를 시작하는 것이 좋습니다.

  • 교체: 이 접근 방식에서는 메인프레임 기능을 클라우드의 동일 기능으로 교체합니다. SaaS(Software as a Service)는 한 가지 옵션입니다. Saas를 사용하면 재무, 인적 자원, 제조 또는 엔터프라이즈 리소스 계획과 같은 엔터프라이즈 문제를 위해 특별히 만든 솔루션을 사용합니다. 또한 사용자 지정 기본프레임 솔루션이 이전에 해결한 문제를 해결하는 데 많은 산업별 애플리케이션을 사용할 수 있습니다.

먼저 처음에 마이그레이션하려는 워크로드를 계획한 다음 연결된 애플리케이션, 레거시 코드 베이스 및 데이터베이스를 이동하기 위한 요구 사항을 결정합니다.

Azure의 메인프레임 에뮬레이션

Azure 서비스는 기존 기본프레임 환경을 에뮬레이트할 수 있습니다. 그런 다음 기존 기본프레임 코드 및 애플리케이션을 다시 사용할 수 있습니다. OLTP(온라인 트랜잭션 처리), 일괄 처리 및 데이터 수집 시스템과 같은 일반적인 서버 구성 요소를 에뮬레이트할 수 있습니다.

OLTP 시스템

많은 기본 프레임에는 많은 수의 사용자에 대해 수천 또는 수백만 개의 업데이트를 처리하는 OLTP 시스템이 있습니다. 이러한 애플리케이션은 대개 CICS(고객 정보 제어 시스템), IMS(정보 관리 시스템), TIP(터미널 인터페이스 프로세서)와 같은 트랜잭션 처리 및 화면 양식 처리 소프트웨어를 사용합니다.

OLTP 애플리케이션을 Azure로 이동하면 기본프레임 TP(트랜잭션 처리) 모니터용 에뮬레이터가 Azure에서 VM(가상 머신)을 사용하여 IaaS(Infrastructure as a Service)로 실행됩니다. 웹 서버는 화면 처리 및 양식 기능을 구현할 수도 있습니다. 이 접근 방식을 ADO(ActiveX Data Objects), ODBC(Open Database 커넥트ivity), 데이터 액세스 및 트랜잭션을 위한 JDBC(Java Database 커넥트ivity)와 같은 데이터베이스 API와 결합합니다.

시간 제약이 있는 일괄 업데이트

많은 기본프레임 시스템은 은행, 보험 및 정부에 사용되는 것과 같이 수백만 개의 계정 레코드에 대한 월별 또는 연간 업데이트를 수행합니다. 메인프레임은 처리량이 높은 데이터 처리 시스템을 제공하여 이러한 유형의 워크로드를 처리합니다. 메인프레임 일괄 처리 작업은 일반적으로 본질적으로 직렬이며 성능을 위해 기본프레임 백본에서 제공하는 IOPS(초당 입력 및 출력 작업)에 따라 달라집니다.

클라우드 기반 일괄 처리 환경은 성능을 위해 병렬 컴퓨팅 및 고속 네트워크를 사용합니다. 일괄 처리 성능을 최적화하려는 고객은 Azure를 통해 다양한 컴퓨팅, 스토리지 및 네트워킹 옵션을 이용할 수 있습니다.

데이터 수집 시스템

메인프레임은 소매, 금융 서비스, 제조 및 기타 처리 솔루션에서 대량의 데이터를 수집합니다. Azure를 사용하면 AzCopy와 같은 간단한 명령줄 유틸리티를 사용하여 스토리지 위치 간 데이터를 복사할 수 있습니다. Azure Data Factory 서비스를 사용하여 서로 다른 데이터 저장소에서 데이터를 수집하고 데이터 기반 워크플로를 만들고 예약할 수도 있습니다.

Azure 이용 고객은 에뮬레이션 환경 외에 기존 메인프레임 환경을 개선할 수 있는 PaaS(Platform as a Service) 및 분석 서비스도 이용할 수 있습니다.

OLTP 워크로드를 Azure로 마이그레이션

리프트 앤 시프트 접근 방식은 기존 애플리케이션을 Azure로 빠르게 마이그레이션할 수 있는 코드 없는 옵션입니다. 각 애플리케이션은 그대로 마이그레이션되므로 코드 변경의 위험이나 비용 없이 클라우드의 이점을 제공합니다. 이 방법은 Azure 지원 TP(기본프레임 트랜잭션 처리) 모니터에 에뮬레이터를 사용합니다.

TP 모니터는 다양한 공급업체에서 사용할 수 있으며 Azure의 IaaS(Infrastructure as a Service) 옵션인 가상 머신에서 실행됩니다. 다음 다이어그램은 IBM z/OS 기본frame에서 DBMS(관계형 데이터베이스 관리 시스템)인 IBM DB2에서 지원되는 온라인 애플리케이션의 전후를 보여 줍니다. z/OS용 DB2는 VSAM(가상 스토리지 액세스 방법) 파일을 사용하여 플랫 파일용 ISAM(Indexed Sequential Access Method) 및 데이터를 저장합니다. 또한 이 아키텍처는 트랜잭션 모니터링에 CICS를 사용합니다.

Diagram of a

Azure에서 에뮬레이션 환경은 TP 관리자와 JCL을 사용하는 일괄 처리 작업을 실행합니다. 데이터 계층에서 DB2는 Azure SQL Database대체되지만 Microsoft SQL Server, DB2 LUW 또는 Oracle Database를 사용할 수도 있습니다. 에뮬레이터는 IMS, VSAM 및 SEQ를 지원합니다. 메인프레임의 시스템 관리 도구는 Azure 서비스 및 VM에서 실행되는 타 공급업체의 소프트웨어로 교체됩니다.

웹 서버는 일반적으로 데이터 액세스 및 트랜잭션을 위해 ADO, ODBC 및 JDBC와 같은 데이터베이스 API와 결합할 수 있는 화면 처리 및 양식 입력 기능을 구현합니다. 사용할 Azure IaaS 구성 요소의 정확한 라인업은 원하는 운영 체제에 따라 달라집니다. 예시:

  • Windows 기반 VM: IIS(Internet Information Server) + 화면 처리 및 비즈니스 논리용 ASP.NET. 데이터 액세스 및 트랜잭션에 ADO.NET 사용합니다.

  • Linux 기반 VM: Java 기반 애플리케이션 서버(예: Apache Tomcat 프로세스 화면 처리 및 Java 기반 비즈니스 기능). 데이터 액세스 및 트랜잭션에는 JDBC를 사용합니다.

일괄 처리 워크로드를 Azure로 마이그레이션

Azure의 일괄 처리 작업은 기본프레임의 일반적인 일괄 처리 환경과 다릅니다. 메인프레임 일괄 처리 작업은 일반적으로 본질적으로 직렬이며 성능을 위해 기본프레임 백본에서 제공하는 IOPS에 따라 달라집니다. 클라우드 기반 일괄 처리 환경은 성능을 위해 병렬 컴퓨팅 및 고속 네트워크를 사용합니다.

Azure를 사용하여 일괄 처리 성능을 최적화하려면 다음과 같이 컴퓨팅, 스토리지, 네트워킹모니터링 옵션을 고려합니다.

컴퓨팅

다음 사용:

  • 클록 속도가 가장 빠른 VM. 메인프레임 애플리케이션은 종종 단일 스레드이며 기본프레임 CPU는 클록 속도가 높습니다.

  • 메모리 용량이 큰 VM은 데이터 및 애플리케이션 작업 영역의 캐싱을 허용합니다.

  • 애플리케이션이 여러 스레드를 지원하는 경우 다중 스레드 처리를 활용할 수 있도록 vCPU의 밀도가 높은 VM.

  • 병렬 처리는 Azure가 병렬 처리를 위해 쉽게 확장됨에 따라 일괄 처리 실행에 더 많은 컴퓨팅 성능을 제공합니다.

스토리지

다음 사용:

  • Azure 프리미엄 SSD 또는 Azure Ultra Disk Storage(사용 가능한 최대 IOPS용).

  • 스토리지 크기당 더 많은 IOPS를 위해 여러 디스크를 사용하여 스트라이프합니다.

  • 스토리지 분할(여러 Azure Storage 디바이스로 I/O 분산)

네트워킹

모니터링

  • 모니터링 도구, Azure Monitor, Application Insights 및 Azure 로그를 사용합니다. 이러한 도구를 사용하면 과잉 수행 일괄 처리를 모니터링하고 병목 상태를 줄일 수 있습니다.

개발 환경 마이그레이션

클라우드의 분산 아키텍처는 최신 사례 및 프로그래밍 언어의 이점을 제공하는 다양한 개발 도구 세트를 사용합니다. 이러한 전환을 용이하게 하려면 IBM z/OS 환경을 에뮬레이트하도록 설계된 다른 도구와 함께 개발 환경을 사용합니다. 다음 목록에서는 Microsoft 및 기타 공급업체의 옵션을 보여 줍니다.

구성 요소 Azure 옵션
z/OS Windows, Linux 또는 Unix
CICS Micro Focus, Oracle, GT Software(Fujitsu), TmaxSoft, Raincode 및 NTT DATA에서 제공하는 Azure 서비스 또는 Kubernetes를 사용하여 다시 작성
IMS Micro Focus 및 Oracle에서 제공하는 Azure 서비스
어셈블러 Raincode 및 TmaxSoft의 Azure 서비스 또는 COBOL, C 또는 Java 또는 운영 체제 함수에 매핑
Jcl JCL, PowerShell 또는 기타 스크립팅 도구 사용
Cobol COBOL, C 또는 Java
자연 Natural, COBOL, C 또는 Java
Fortran 및 PL/I Fortran, PL/I, COBOL, C 또는 Java
REXX 및 PL/I REXX, PowerShell 또는 기타 스크립팅 도구

데이터베이스 및 데이터 마이그레이션

애플리케이션 마이그레이션에는 일반적으로 데이터 계층을 다시 호스팅하는 작업이 포함됩니다. SQL Server, 오픈 소스 및 기타 관계형 데이터베이스를 Azure의 완전 관리형 솔루션으로 마이그레이션할 수 있습니다. Azure Database Migration Service에서 Azure SQL Managed Instance, Azure Database for PostgreSQLAzure Database for MySQL을 사용할 수 있습니다.

예를 들어 기본프레임 데이터 계층에서 다음을 사용하는 경우 마이그레이션할 수 있습니다.

  • IBM DB2 또는 IMS 데이터베이스를 사용하는 경우 Azure에서 Azure SQL Database, SQL Server, DB2 LUW, Oracle Database를 사용합니다.

  • VSAM 및 기타 플랫 파일을 사용하는 경우 Azure SQL Database, SQL Server, DB2 LUW 또는 Oracle용 ISAM(Indexed Sequential Access Method) 플랫 파일을 사용합니다.

  • GDG(Generation Date Group)를 사용하는 경우 Azure에서 GDG와 비슷한 기능을 제공하는 명명 규칙 및 파일 이름 확장을 사용하는 파일로 마이그레이션합니다.

IBM 데이터 계층에는 마이그레이션해야 하는 몇 가지 주요 구성 요소가 포함되어 있습니다. 예를 들어 데이터베이스를 마이그레이션하는 경우에는 풀에 포함된 데이터 컬렉션도 마이그레이션해야 합니다. 이러한 각 컬렉션에는 dbextent(z/OS VSAM 데이터 세트)가 포함됩니다. 마이그레이션에는 스토리지 풀의 데이터 위치를 식별하는 디렉터리가 포함되어야 합니다. 또한 마이그레이션 계획은 데이터베이스에서 수행된 작업 레코드를 포함하는 데이터베이스 로그를 고려해야 합니다. 데이터베이스에는 1개, 2개(이중 또는 대체) 또는 4개(이중 및 대체) 로그가 있을 수 있습니다.

데이터베이스 마이그레이션에는 다음 구성 요소도 포함됩니다.

  • 데이터베이스 관리자: 데이터베이스의 데이터에 대한 액세스를 제공합니다. 데이터베이스 관리자는 z/OS 환경의 자체 파티션에서 실행됩니다.
  • 애플리케이션 요청자: 애플리케이션의 요청을 애플리케이션 서버로 전달하기 전에 수락합니다.
  • 온라인 리소스 어댑터: CICS 트랜잭션에서 사용할 애플리케이션 요청자 구성 요소를 포함합니다.
  • 일괄 처리 리소스 어댑터: z/OS 일괄 처리 애플리케이션용으로 애플리케이션 요청자 구성 요소를 구현합니다.
  • ISQL(Interactive SQL): CICS 애플리케이션 및 인터페이스로 실행되며 사용자가 SQL 문 또는 연산자 명령을 입력할 수 있습니다.
  • CICS 애플리케이션: CICS의 사용 가능한 리소스와 데이터 원본을 사용하여 CICS의 제어 하에 실행됩니다.
  • 일괄 처리 애플리케이션: 사용자와의 대화형 통신 없이 프로세스 논리를 실행하여 대량 데이터 업데이트를 생성하거나 데이터베이스에서 보고서를 생성하는 등의 작업을 수행합니다.

Azure의 크기 조정 및 처리량 최적화

일반적으로 기본프레임은 확장되지만 클라우드는 확장됩니다. Azure에서 실행되는 기본프레임 스타일 애플리케이션의 규모와 처리량을 최적화하려면 기본프레임이 애플리케이션을 분리하고 격리하는 방법을 이해하는 것이 중요합니다. z/OS 메인프레임은 LPAR(논리 파티션) 기능을 사용하여 단일 인스턴스의 특정 애플리케이션용으로 리소스를 격리하고 관리합니다.

예를 들어, 메인프레임은 연결된 COBOL 프로그램이 있는 CICS 영역에 대해 하나의 LPAR을 사용하고 DB2에 대해 별도의 LPAR을 사용할 수 있습니다. 다른 LPAR은 개발, 테스트 및 스테이징 환경에 자주 사용됩니다.

Azure에서는 보통 이러한 용도로 별도의 VM을 사용합니다. Azure 아키텍처는 일반적으로 애플리케이션 계층에 대한 VM, 데이터 계층에 대한 별도의 VM 집합, 개발을 위한 다른 집합 등을 배포합니다. 해당 환경에 가장 적합한 유형의 VM 및 기능을 사용하여 각 처리 계층을 최적화할 수 있습니다.

또한 각 계층에서 적절한 재해 복구 서비스를 제공할 수도 있습니다. 예를 들어 프로덕션 및 데이터베이스 VM에는 핫 또는 웜 복구가 필요할 수 있지만 개발 및 테스트 VM은 콜드 복구를 지원합니다.

다음 그림에서는 기본 사이트와 보조 사이트를 사용하여 가능한 Azure 배포를 보여 주세요. 기본 사이트에서는 프로덕션, 스테이징 및 테스트 VM이 고가용성으로 배포됩니다. 보조 사이트는 백업 및 재해 복구를 위한 것입니다.

Diagram of a possible Azure deployment using a primary and a secondary site.

Azure로 미리 구성된 마이그레이션 수행

기본프레임에서 Azure로 솔루션을 이동하려면 미리 구성된 마이그레이션이 포함될 수 있습니다. 일부 애플리케이션은 먼저 이동하지만 다른 애플리케이션은 기본프레임에서 일시적으로 또는 영구적으로 기본. 이 접근 방식을 사용하려면 일반적으로 애플리케이션과 데이터베이스가 기본프레임과 Azure 간에 상호 운용할 수 있는 시스템이 필요합니다.

일반적인 시나리오는 애플리케이션에서 사용하는 데이터를 기본프레임에 유지하면서 애플리케이션을 Azure로 이동하는 것입니다. 특정 소프트웨어를 사용하면 Azure의 애플리케이션이 기본 프레임의 데이터에 액세스할 수 있습니다. 다행히 광범위한 솔루션은 Azure와 기존 기본프레임 환경 간의 통합, 하이브리드 시나리오 지원 및 시간에 따른 마이그레이션을 제공합니다. Microsoft 파트너, 독립 소프트웨어 공급업체 및 시스템 통합업체가 여러분의 여정에 도움을 줄 수 있습니다.

한 가지 옵션은 Microsoft Host Integration Server입니다. 이 솔루션은 Azure의 애플리케이션에 필요한 DRDA(분산 관계형 데이터베이스 아키텍처)를 제공합니다. 이를 통해 애플리케이션은 기본 프레임에서 다시 기본 DB2의 데이터에 액세스할 수 있습니다. 메인프레임과 Azure 통합에 사용할 수 있는 기타 옵션으로는 IBM, Attunity, Codit 및 기타 공급업체에서 제공하는 솔루션과 오픈 소스 옵션 등이 있습니다.

파트너 솔루션

기본프레임 마이그레이션을 고려하는 경우 파트너 에코시스템이 도움이 될 수 있습니다.

Azure는 현재 기본프레임에서 실행되는 시스템에 대해 검증되고 고가용성이며 확장 가능한 인프라를 제공합니다. 일부 워크로드는 비교적 쉽게 마이그레이션할 수 있습니다. CICS 및 IMS와 같은 레거시 시스템 소프트웨어에 의존하는 다른 워크로드를 다시 호스팅할 수 있습니다. 파트너 솔루션을 사용하고 시간이 지남에 따라 Azure로 마이그레이션합니다. 선택한 항목에 관계없이 Microsoft와 파트너는 기본프레임 시스템 소프트웨어 기능을 기본 동안 Azure에 최적화하는 데 도움을 줄 수 있습니다.

자세한 정보

자세한 내용은 다음 리소스를 참조하세요.