LzLabs SDM(Software Defined Mainframe)은 레거시 애플리케이션의 소스 코드를 찾고 수정하고 다시 컴파일할 필요가 없으므로 레거시 워크로드 다시 호스팅의 위험과 복잡성을 크게 줄입니다. 이 방법을 사용하면 z/Architecture 이진 실행 프로그램이 개방형 시스템 소프트웨어 스택을 실행하는 x86_64 아키텍처 컴퓨터에서 기본 속도로 작동하여 레거시 현대화의 경로를 열 수 있습니다.
아키텍처
이 아키텍처의 SVG 파일을 다운로드합니다.
워크플로
- LzLabs SDM 애플리케이션은 3270 터미널을 통해 일반 메인프레임 애플리케이션과 마찬가지로 액세스됩니다. 원하는 모든 터미널 에뮬레이터를 사용할 수 있습니다. 관리 및 기타 작업의 경우 LzWorkbench 클라이언트가 사용됩니다. 서버 구성 요소는 SDM VM에서 실행됩니다.
- 포트 액세스는 일반적으로 고객의 보안 요구 사항에 맞게 구성됩니다.
- SDM의 안전한 구현을 위해 다음으로 구성된 웹 서비스 프런트 엔드를 구현해야 합니다.
- 웹을 통해 액세스하는 모든 CICS API에 대한 Azure Application Gateway
- VM을 관리하기 위한 보안 액세스를 위한 Azure Bastion
- 및 Azure Load Balancer.
- 백업, DR(재해 복구) 및 보조 Azure 지역에 대한 VNet(가상 네트워크) 피어링을 사용하여 장애 조치(failover)를 위해 SDM을 구성할 수 있습니다. 이를 통해 초기 VM이 오프라인 상태가 될 경우 Azure에서 일관된 복제본을 유지하므로 프로덕션 워크로드에 대한 SDM의 가용성이 향상됩니다.
- 프로덕션 환경의 SDM 가상 머신은 Azure Site Recovery에 의해 장애 조치(failover) 지역에서 복제되고 동기화된 상태로 유지됩니다. 이 서비스는 프로덕션용 주 OS 디스크 및 연결된 디스크 이미지를 보조 지역 SDM과 동기화된 상태로 유지합니다. 인덱스 파일 처리를 담당하는 디스크를 제외한 모든 연결된 디스크에 대해 이 작업을 수행합니다(항목 10 참조). Site Recovery는 다른 모든 VM 이미지를 보조 지역과 동기화된 상태로 유지하는 데도 사용됩니다.
- 이 아키텍처의 데이터베이스는 PostgreSQL IaaS입니다. 현재 Azure PostgreSQL 서비스를 사용할 수 없으며 배포 시 SDM과 함께 PostgreSQL IaaS를 사용해야 합니다. 이는 UDT(사용자 정의 데이터 형식)를 처리하기 위한 Azure PostgreSQL의 제한 때문입니다. 보조 지역의 데이터베이스 인스턴스는 미리 쓰기 트랜잭션 로그를 사용하여 최신 상태로 유지됩니다. 이를 통해 지역 간 장애 조치(failover)가 가능합니다. 장애 조치(failover)가 발생하면 모드가 활성으로 설정됩니다. 프로덕션 지역 내에서 프로덕션 장애 조치(failover) 데이터베이스를 트랜잭션적으로 일관되게 유지하는 데도 동일한 프로세스가 사용됩니다. 미리 쓰기 트랜잭션 로그를 사용하여 이러한 두 복제본을 동기화 상태로 유지하면 데이터베이스 계층의 가용성이 높아집니다. 참고: 최상의 성능을 위해 데이터베이스 VM 및 SDM VM을 Azure 근접 배치 그룹에 배치해야 합니다.
- 시스템에 대한 보안 액세스를 유지하려면 DR 지역에 웹 서비스 프런트 엔드를 배포해야 합니다. 많은 메인프레임 워크로드에는 CICS 트랜잭션 및 DB2 데이터에 액세스하기 위한 API 웹 서비스 계층이 있습니다.
- Active Directory 확장을 사용하는 RACF 및 일급 비밀 ID 통합의 경우 LzVault는 메인프레임에서 마이그레이션된 보안 규칙에 대해 Azure에서 인증 및 권한 부여를 제공합니다.
- Barman 서버는 데이터 계층에서 구성됩니다. 프로덕션 지역 및 보조 지역 내에서 특정 시점 복구를 위해 PostgreSQL 데이터베이스의 스냅샷 복제본을 제공합니다.
- 항목 5에서 설명한 대로 SDM에 대한 인덱싱된 파일 처리를 유지하는 디스크는 데이터베이스 미러링 솔루션을 사용하여 지역 간에 동기화되어야 합니다. 이는 Azure Site Recovery가 데이터베이스에 필요한 트랜잭션 일관성을 보장할 수 없기 때문입니다. 인덱싱된 파일 처리가 PostgreSQL 내에 없으므로 이를 제공할 수 있는 솔루션을 사용해야 합니다.
- 일괄 처리 작업 처리 일정을 수용하려면 Azure Logic Apps 또는 SMA와 같은 스케줄러를 사용해야 합니다.
- 가용성을 제공하기 위해 Azure 가용성 집합에 두 개의 SDM VM이 배포됩니다. Azure Load Balancer는 두 VM에 부하 분산 서비스를 제공합니다. 상태는 Azure 공유 디스크를 사용하여 두 VM 간에 공유됩니다. 이는 DRDB를 통해 DR 인스턴스에 복제됩니다.
구성 요소
- Azure Virtual Machines는 Azure가 제공하는 여러 유형의 확장성 있는 주문형 컴퓨팅 리소스 중 하나입니다. Azure VM(가상 머신)은 가상화를 실행하는 물리적 하드웨어를 구입 및 유지 관리하지 않고도 가상화의 유연성을 제공합니다.
- VNet(가상 네트워크)은 Azure Virtual Network의 프라이빗 네트워크에 대한 기본 구성 요소입니다. Virtual Network를 사용하면 VM을 비롯한 다양한 유형의 Azure 리소스가 서로, 인터넷 및 온-프레미스 네트워크와 안전하게 통신할 수 있습니다. Virtual Network는 사용자 고유의 데이터 센터에서 작동하는 기존 네트워크와 유사하지만 크기 조정, 가용성 및 격리와 같은 Azure 인프라의 추가 혜택이 있습니다.
- Azure Virtual Network 인터페이스 는 Azure VM이 인터넷, Azure의 다른 리소스 및 온-프레미스 리소스와 통신할 수 있도록 하는 NIC(네트워크 인터페이스 컨트롤러)입니다. 이 아키텍처에 표시된 것처럼 Solaris 자식 VM이 고유한 전용 네트워크 인터페이스 디바이스 및 IP 주소를 가질 수 있도록 동일한 VM에 더 많은 NIC를 추가할 수 있습니다.
- Azure SSD 관리 디스크는 Azure에서 관리되고 Azure Virtual Machines와 함께 사용되는 블록 수준 스토리지 볼륨입니다. 사용 가능한 디스크 유형은 Ultra Disk, 프리미엄 SSD, 표준 SSD 및 표준 HDD(하드 디스크 드라이브)입니다. 이 아키텍처의 경우 프리미엄 SSD 또는 Ultra Disk SSD를 사용하는 것이 좋습니다.
- Azure Storage 및 Azure Files는 산업 표준 SMB(서버 메시지 블록) 프로토콜을 통해 액세스할 수 있는, 클라우드에서 완전히 관리되는 파일 공유를 제공합니다. Azure File 공유는 Windows, Linux 및 macOS의 클라우드 또는 온-프레미스 배포를 통해 동시에 탑재될 수 있습니다.
- Azure ExpressRoute를 사용하면 연결 공급자가 지원하는 프라이빗 연결을 통해 온-프레미스 네트워크를 Microsoft 클라우드로 확장할 수 있습니다. ExpressRoute를 사용하면 Microsoft Azure 및 Office 365와 같은 Microsoft 클라우드 서비스에 대한 연결을 설정할 수 있습니다.
- Azure SQL Database는 사용자의 개입 없이도 업그레이드, 패치, 백업 및 모니터링과 같은 데이터베이스 관리 기능 대부분을 처리하는 완전 관리형 PaaS(Platform as a Service) 데이터베이스 엔진입니다. Azure SQL Database는 안정적인 최신 SQL Server 데이터베이스 엔진 및 패치가 적용된 OS 버전에서 실행되며 99.99%의 가용성을 제공합니다. Azure SQL Database에 기본 제공되는 PaaS 기능 덕분에 비즈니스에 중요한 도메인 특정 데이터베이스 관리 및 최적화 활동에 집중할 수 있습니다.
시나리오 정보
LzLabs SDM(소프트웨어 정의 메인프레임)은 워크로드 다시 호스팅 및 메인프레임 애플리케이션 현대화 플랫폼입니다. SDM을 사용하면 소스 코드 변경, 다시 컴파일 또는 데이터 형식 변환에 대한 요구 사항 없이 오픈 시스템에서 메인프레임 레거시 애플리케이션을 실행할 수 있습니다. 또한 SDM에는 시스템 전체의 무결성 또는 작동을 손상시키지 않고 레거시 애플리케이션을 최신 언어 및 구현으로 정상적으로 현대화할 수 있는 기능이 있습니다.
SDM은 레거시 애플리케이션의 소스 코드를 찾고 수정하고 다시 컴파일할 필요가 없으므로 레거시 워크로드 다시 호스팅의 위험과 복잡성을 크게 줄입니다. 이 방법을 사용하면 z/Architecture 이진 실행 프로그램이 개방형 시스템 소프트웨어 스택을 실행하는 x86_64 아키텍처 컴퓨터에서 기본 속도로 작동하여 레거시 현대화의 경로를 열 수 있습니다.
잠재적인 사용 사례
- 소스 코드가 없는 경우. LzLabs는 메인프레임 워크로드가 있지만 실행 중인 애플리케이션에 대한 소스 코드가 없는 고객을 위한 솔루션입니다. 이 문제는 솔루션이 IP에 대한 소스 코드가 아닌 독립 소프트웨어 공급업체에서 구매한 사용자 지정 가능한 COTS(기성 솔루션)인 경우에 발생할 수 있습니다. 또한 이러한 COBOL 기반 애플리케이션의 대부분은 오래 전에 작성되었으므로 소스 코드가 손실되거나 잘못 배치되었을 수 있습니다. LzLabs는 SDM에서 실행하기 위한 로드 모듈(이진 파일)만 필요하기 때문에 이 문제를 해결합니다.
- 고객에게 소스 코드가 있으며 다시 호스팅하려고 합니다. 고객은 여전히 소스 코드를 가지고 있으며, 비용을 절감하고 Azure와 같은 클라우드 플랫폼의 이점을 누리기 위해 메인프레임 워크로드를 다시 호스팅하려고 할 수 있습니다. COBOL 코드는 최신 DevOps 환경의 SDM에서 유지 관리할 수 있습니다.
- 장애 조치(failover). 작동 시간을 늘리고 비즈니스 연속성의 잠재적인 중단을 방지하기 위해 고객은 장애 조치(failover) 환경에 LzLabs SDM을 사용할 수 있습니다. 이 경우 부하 모듈은 SDM에 로드되고 프로덕션 환경을 사용할 수 없게 되면 보조 환경으로 사용됩니다.
고려 사항
이러한 고려 사항은 워크로드의 품질을 개선하는 데 사용할 수 있는 지침 원칙 집합인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework
신뢰도
안정성을 통해 애플리케이션이 고객에 대한 약속을 충족할 수 있습니다. 자세한 내용은 안정성대한
애플리케이션 계층에 대한 복구는 다이어그램에 표시된 대로 Site Recovery와 함께 제공됩니다.
LzLabs SDM은 데이터베이스 계층에 PostgreSQL을 활용하므로 미리 쓰기 트랜잭션 로그와 함께 가용성이 제공됩니다. 이를 통해 보조 데이터베이스가 프로덕션 데이터베이스와 트랜잭션적으로 일관됩니다.
보안
보안은 의도적인 공격 및 중요한 데이터 및 시스템의 남용에 대한 보증을 제공합니다. 자세한 내용은 보안대한
Azure 자산에 대한 액세스는 Azure Portal 및/또는 Azure Resource Manager를 통해 관리됩니다.
SDM에 대한 보안은 SDM의 자격 증명 모음 구성 요소를 사용하여 관리됩니다. 그러면 RACF 또는 일급 비밀의 보안 및 사용 권한을 Azure에서 관리하기 위한 LDAP 기반 환경으로 마이그레이션하게 됩니다.
비용 최적화
비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 개선하는 방법을 모색하는 것입니다. 자세한 내용은 비용 최적화대한
Azure 제품 및 구성의 비용을 예측하려면 Azure 가격 계산기를 방문하세요.
LzLabs 소프트웨어 정의 메인프레임 제품 및 관련 서비스의 가격 책정에 대해 자세히 알아보려면 LzLabs 웹 사이트를 방문하세요.
운영 우수성
운영 우수성은 애플리케이션을 배포하고 프로덕션 환경에서 계속 실행하는 운영 프로세스를 다룹니다. 자세한 내용은 운영 우수성대한
다이어그램의 Azure 환경은 Azure Portal 또는 Azure Resource Manager 템플릿 및 스크립트를 사용하여 관리됩니다. 그러면 자산(예: 크기 조정)을 관리하고 보안 및 액세스를 관리할 수 있습니다.
실제 SDM 환경 관리는 LzWorkbench 관리 도구를 통해 제공됩니다. 이를 통해 SDM에서 실행 환경을 만들고 관리할 수 있습니다.
성능 효율성
성능 효율성은 워크로드의 크기를 조정하여 사용자가 효율적인 방식으로 요구 사항을 충족하는 기능입니다. 자세한 내용은 성능 효율성대한
메인프레임 워크로드를 Azure로 마이그레이션할 때 vCPU당 MIPS 비율 범위는 vCPU당 50~150MIPS입니다. 이는 워크로드 유형에 따라 달라질 수 있습니다. 온라인 및 일괄 처리 환경에 대한 메인프레임 워크로드를 프로파일한 다음 그에 따라 리소스 크기를 조정해야 합니다.
현재 SDM 크기를 조정하는 솔루션은 vCPU 및 메모리를 더 추가하여 가상 머신을 스케일 업하는 것입니다.
참가자
Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.
보안 주체 작성자:
- Jonathon Frost | 수석 소프트웨어 엔지니어
비공개 LinkedIn 프로필을 보려면 LinkedIn에 로그인하세요.
다음 단계
- 자세한 내용은 legacy2azure@microsoft.com에 문의하세요.
LzLabs의 다음 리소스를 참조하세요.
Microsoft의 다음 설명서를 참조하세요.
- Azure의 가상 머신
- Azure Virtual Network 설명서
- Azure Resource Manager 템플릿 설명서
- Azure ExpressRoute 설명서
- 메인프레임에서 Azure로 마이그레이션 쉽게 설명하기 백서
- Azure 메인프레임 마이그레이션 센터
- 메인프레임 마이그레이션 개요
- Azure에서 지원되는 메인프레임 워크로드
- Azure 가상 머신의 메인프레임 재호스팅
관련 리소스
Azure 아키텍처 센터에서 다음 관련 문서를 참조하세요.