메인프레임에서 Azure로 전환Make the switch from mainframes to Azure

기존 메인프레임 애플리케이션 실행을 위한 대체 플랫폼인 Azure는 가용성이 뛰어난 환경에서 하이퍼스케일 컴퓨팅 및 스토리지를 제공합니다.As an alternative platform for running traditional mainframe applications, Azure offers hyperscale compute and storage in a high availability environment. 따라서 메인프레임 환경과 연관된 비용을 지출하지 않고도 최신 클라우드 기반 플랫폼의 유용한 기능과 빠른 속도를 활용할 수 있습니다.You get the value and agility of a modern, cloud-based platform without the costs associated with a mainframe environment.

이 섹션에서는 메인프레임 플랫폼에서 Azure로 전환하는 방법과 관련한 기술 지침을 제공합니다.This section provides technical guidance for making the switch from a mainframe platform to Azure.

메인프레임 및 Azure

MIPS와 vCPU 비교MIPS vs. vCPUs

메인프레임 워크 로드를 실행 하는 데 필요한 vCPUs (가상 중앙 처리 단위) 수를 결정 하는 데 필요한 범용 매핑 수식은 없습니다.There is no universal mapping formula that exists for determining the number of virtual central processing units (vCPUs) needed to run mainframe workloads. 그러나 Azure에서는 MIPS(Millions of Instructions Per Second) 메트릭이 vCPU 수에 매핑되는 경우가 많습니다.However, the metric of a million instructions per second (MIPS) is often mapped to vCPUs on Azure. MPIS는 지정된 컴퓨터에 대해 초당 주기 수의 상수 값을 제공하는 방식으로 메인프레임의 전반적인 컴퓨팅 능력을 측정합니다.MIPS measures the overall compute power of a mainframe by providing a constant value of the number of cycles per second for a given machine.

소규모 조직의 경우 500MIPS 미만의 값이 필요할 수도 있지만 대규모 조직은 대개 5,000MIPS를 초과하는 명령을 사용합니다.A small organization might require less than 500 MIPS, while a large organization typically uses more than 5,000 MIPS. MIPS 1개당 비용이 1,000달러라고 가정하면 대규모 조직은 MIPS가 5,000인 인프라를 배포하는 데 매년 약 5백만 달러를 지출하게 됩니다.At $1,000 per single MIPS, a large organization spends approximately $5 million annually to deploy a 5,000-MIPS infrastructure. 이러한 규모의 일반적인 Azure 배포에 대한 연간 예상 비용은 MIPS 인프라 비용의 1/10 정도에 불과합니다.The annual cost estimate for a typical Azure deployment of this scale is approximately one-tenth the cost of a MIPS infrastructure. 자세한 내용은 메인프레임에서 Azure로의 마이그레이션 설명 백서의 표 4를 참조하세요.For details, see Table 4 in the Demystifying Mainframe-to-Azure Migration white paper.

Azure를 사용하는 경우 MIPS에 해당하는 vCPU 수의 정확한 계산 결과는 vCPU의 유형과 실행 중인 정확한 워크로드에 따라 달라집니다.An accurate calculation of MIPS to vCPUs with Azure depends on the type of vCPU and the exact workload you are running. 그러나 벤치마크 연구 결과를 참조하면 필요한 vCPU 수와 유형을 비교적 정확하게 예측할 수 있습니다.However, benchmark studies provide a good basis for estimating the number and type of vCPUs you will need. 최근 HPE zRef 벤치 마크는 다음과 같은 예상치를 제공 합니다.A recent HPE zRef benchmark provides the following estimates:

  • HPE 프로라이언트 servers for online (CICS) 작업에서 실행 되는 Intel 기반 코어 당 MIPS 288.288 MIPS per Intel-based core running on HPE ProLiant servers for online (CICS) jobs.

  • COBOL 일괄 작업용 Intel 코어당 MIPS - 170170 MIPS per Intel core for COBOL batch jobs.

이 가이드에서는 온라인 처리의 vCPU당 MIPS는 200이고 일괄 처리의 vCPU당 MIPS는 100이라고 가정합니다.This guide estimates 200 MIPS per vCPU for online processing and 100 MIPS per vCPU for batch processing.

참고

이러한 예상치는 Azure에서 새로운 VM(가상 머신) 시리즈가 제공되면 변경될 수 있습니다.These estimates are subject to change as new virtual machine (VM) series become available in Azure.

고가용성 및 장애 조치(failover)High availability and failover

메인프레임 시스템은 메인프레임 커플링 및 Parallel Sysplex 사용 시 99.999%의 가용성을 제공하는 경우가 많습니다.Mainframe systems often offer five 9s availability (99.999 percent) when mainframe coupling and Parallel Sysplex are used. 하지만 시스템 운영자는 유지 관리 및 IPL(시작 프로그램 로드)을 위한 가동 중지 시간을 예약해야 합니다.Yet system operators still need to schedule downtime for maintenance and initial program loads (IPLs). 실제 가용성은 높은 최종 Intel 기반 서버와 비교할 수 있는 두 개 또는 세 가지 9 접근 방식입니다.The actual availability approaches two or three 9s, comparable to high end, Intel-based servers.

비교 하 여 Azure는 약정 기반 Sla (서비스 수준 계약)를 제공 합니다. 이러한 Sla는 로컬 또는 지역 기반 서비스 복제를 사용 하 여 최적화 된 여러 9 가용성이 기본값입니다.By comparison, Azure offers commitment-based service-level agreements (SLAs), where multiple 9s availability is the default, optimized with local or geo-based replication of services.

Azure는 여러 스토리지 디바이스의 데이터를 로컬로 또는 다른 지역에 복제하는 방식을 통해 더욱 높은 가용성을 제공합니다.Azure provides additional availability by replicating data from multiple storage devices, either locally or in other geographic regions. Azure 기반 장애가 발생하는 경우 컴퓨팅 리소스는 로컬 또는 지역 수준에서 복제된 데이터에 액세스할 수 있습니다.In the event of an Azure-based failure, compute resources can access the replicated data on either the local or regional level.

Azure PaaS (platform as a service) 리소스 (예: Azure SQL DatabaseAzure Cosmos DB)를 사용 하는 경우 azure에서 장애 조치 (failover)를 자동으로 처리할 수 있습니다.When you use Azure platform as a service (PaaS) resources, such as Azure SQL Database and Azure Cosmos DB, Azure can automatically handle failovers. Azure IaaS (infrastructure as a service)를 사용 하는 경우 장애 조치 (failover)는 SQL Server Always On 기능, 장애 조치 (failover) 클러스터링 인스턴스 및 가용성 그룹 등의 특정 시스템 기능에 의존 합니다.When you use Azure infrastructure as a service (IaaS), failover relies on specific system functionality, such as SQL Server Always On features, failover clustering instances, and availability groups.

확장성Scalability

일반적으로 메인프레임은 규모를 강화 하는 반면, 클라우드 환경 규모는 확장 됩니다. 메인프레임은 CF (결합 기능)를 사용 하 여 확장할 수 있지만 하드웨어 및 저장소의 높은 비용으로 인해 규모를 확장할 수 있습니다.Mainframes typically scale up, while cloud environments scale out. Mainframes can scale out with the use of a coupling facility (CF), but the high cost of hardware and storage makes mainframes expensive to scale out.

또한 CF는 긴밀 하 게 결합 된 계산을 제공 하지만 Azure의 스케일 아웃 기능은 느슨하게 결합 되어 있습니다.A CF also offers tightly coupled compute, whereas the scale-out features of Azure are loosely coupled. 즉, 클라우드는 정확한 사용자 사양에 맞게 강화하거나 규모를 축소할 수 있으며 사용량 기반 청구 모델에 따라 주문형으로 컴퓨팅 기능/스토리지/서비스를 확장할 수 있습니다.The cloud can scale up or down to match exact user specifications, with compute power, storage, and services scaling on demand under a usage-based billing model.

Backup 및 복구Backup and recovery

메인프레임 고객은 일반적으로 재해 복구 사이트를 유지 관리하거나 재해 대응을 위해 독립 메인프레임 공급자의 서비스를 이용합니다.Mainframe customers typically maintain disaster recovery sites or make use or an independent mainframe provider for disaster contingencies. 그리고 대개 오프라인 데이터 복사본을 사용하여 재해 복구 사이트와의 동기화를 수행합니다.Synchronization with a disaster recovery site is usually done through offline copies of data. 이 두 옵션은 모두 비용이 많이 듭니다.Both options incur high costs.

자동화 된 지역 중복은 메인프레임 결합 기능을 통해 사용할 수도 있습니다.Automated geo-redundancy is also available through the mainframe coupling facility. 이 방법은 비용이 많이 들고 일반적으로 중요 업무용 시스템에 예약 되어 있습니다.This approach is expensive and is typically reserved for mission-critical systems. 반면 Azure에는 쉽게 구현할 수 있는 경제적인 백업, 복구백업 옵션이 포함되어 있습니다. 로컬/지역 수준에서 또는 지리적 중복 기능을 통해 이러한 옵션을 사용할 수 있습니다.In contrast, Azure has easy-to-implement and cost-effective options for backup, recovery, and redundancy at local or regional levels, or via geo-redundancy.

스토리지Storage

메인프레임 작동 방식을 이해하는 과정에서는 의미가 비슷한 여러 용어를 파악해야 합니다.Part of understanding how mainframes work involves decoding various overlapping terms. 예를 들어 중앙 스토리지, 실제 메모리, 실제 스토리지, 주 스토리지 등의 용어는 대개 모두 메인프레임 프로세서에 직접 연결된 스토리지를 지칭합니다.For example, central storage, real memory, real storage, and main storage all generally refer to storage attached directly to the mainframe processor.

메인프레임 하드웨어에는 프로세서 및 기타 많은 장치 (DASDs (직접 액세스 저장 장치), 자기 테이프 드라이브 및 여러 유형의 사용자 콘솔)가 포함 됩니다.Mainframe hardware includes processors and many other devices, such as direct-access storage devices (DASDs), magnetic tape drives, and several types of user consoles. 테이프 및 DASD는 시스템 기능과 사용자 프로그램에 사용됩니다.Tapes and DASDs are used for system functions and by user programs.

메인프레임용 실제 스토리지 유형은 다음과 같습니다.Types of physical storage for mainframes include:

  • 중앙 저장소: 메인프레임 프로세서에 직접 배치 된이를 프로세서 또는 실제 저장소 라고도 합니다.Central storage: Located directly on the mainframe processor, this is also known as processor or real storage.
  • 보조 저장소: 메인프레임에서 별도로 배치 된이 형식에는 DASDs의 저장소가 포함 되며 페이징 저장소 라고도 합니다.Auxiliary storage: Located separately from the mainframe, this type includes storage on DASDs and is also known as paging storage.

클라우드에서는 확장 가능한 유동적인 옵션을 폭넓게 제공하며, 필요한 옵션의 비용만 결제하면 됩니다.The cloud offers a range of flexible, scalable options, and you will pay only for those options that you need. Azure Storage는 데이터 개체용으로 대폭 확장 가능한 개체 저장소, 클라우드용 파일 시스템 서비스, 안정적인 메시징 저장소 및 NoSQL 저장소를 제공합니다.Azure Storage offers a massively scalable object store for data objects, a file system service for the cloud, a reliable messaging store, and a NoSQL store. VM의 경우에는 관리형 디스크와 비관리형 디스크에서 안전한 영구 디스크 스토리지가 제공됩니다.For VMs, managed and unmanaged disks provide persistent, secure disk storage.

메인프레임 개발 및 테스트Mainframe development and testing

메인프레임 마이그레이션 프로젝트를 진행하는 중요한 요인 중 하나는 애플리케이션 개발 방식의 변화입니다.A major driver in mainframe migration projects is the changing face of application development. 조직에서는 개발 환경의 속도와 비즈니스 요구에 대한 대응 능력을 개선하고자 합니다.Organizations want their development environment to be more agile and responsive to business needs.

메인프레임에는 일반적으로 QA 및 준비 LPAR(논리 파티션)과 같은 개발 및 테스트용의 별도 LPAR가 있습니다.Mainframes typically have separate logical partitions (LPARs) for development and testing, such as QA and staging LPARs. 메인프레임 개발 솔루션에는 컴파일러(COBOL, PL/I, 어셈블러) 및 편집기가 포함됩니다.Mainframe development solutions include compilers (COBOL, PL/I, Assembler) and editors. 가장 흔히 사용되는 솔루션은 IBM 메인프레임에서 실행되는 z/OS 운영 체제용 ISPF(Interactive System Productivity Facility)입니다.The most common is the Interactive System Productivity Facility (ISPF) for the z/OS operating system that runs on IBM mainframes. 그 외에 RPF(ROSCOE Programming Facility) 및 Computer Associates 도구(예: CA Librarian, CA-Panvalet) 등도 있습니다.Others include ROSCOE Programming Facility (RPF) and Computer Associates tools, such as CA Librarian and CA-Panvalet.

에뮬레이션 환경 및 컴파일러는 x86 플랫폼에서 사용 가능하기 때문에 일반적으로는 메인프레임에서 Azure로 마이그레이션할 때 처음으로 수행하는 워크플로에 개발 및 테스트를 포함할 수 있습니다.Emulation environments and compilers are available on x86 platforms, so development and testing can typically be among the first workloads to migrate from a mainframe to Azure. Azure의 DevOps 도구는 가용성이 뛰어나며 폭넓게 활용 가능하므로 개발 및 테스트 환경 마이그레이션을 신속하게 진행할 수 있습니다.The availability and widespread use of DevOps tools in Azure is accelerating the migration of development and testing environments.

Azure에서 솔루션을 개발/테스트하여 메인프레임으로 배포할 준비가 되면 코드를 메인프레임에 복사하여 메인프레임에서 컴파일해야 합니다.When solutions are developed and tested on Azure and are ready for deployment to the mainframe, you will need to copy the code to the mainframe and compile it there.

다음 단계Next steps