Azure에서 AIX 워크로드 다시 배치

Azure Application Gateway
Azure 파일
Azure Virtual Machines
Azure Communication Services
Azure App Service

이 문서에서는 AIX 워크로드를 클라우드로 다시 배치하는 마이그레이션 방법을 설명합니다. 서버리스 아키텍처에 Azure Functions를 사용하거나 Azure Virtual Machines를 사용하여 서버 풀 모델을 유지할 수 있습니다.

레거시 애플리케이션을 Azure로 마이그레이션할 때 ROI(투자 수익률)를 최대화하기 위해 AIX 워크로드에 대한 마이그레이션 전략을 다시 배치하는 것이 좋습니다. 마이그레이션을 다시 배치하려면 최소한의 변경이 필요하지만 리팩터링 마이그레이션과 유사한 클라우드 네이티브 이점을 제공합니다.

재배치 마이그레이션의 이점은 다음과 같습니다.

  • TCO(총 소유 비용) 절감
  • 향상된 비즈니스 민첩성.
  • 운영 복원력이 향상되었습니다.

아키텍처(재구성됨)

재구성된 아키텍처의 다이어그램.

이 아키텍처의 Visio 파일을 다운로드합니다.

워크플로

이 워크플로는 이전 아키텍처에 해당합니다.

  1. 사용자 요청 및 인바운드 API 통합은 WAF(웹 애플리케이션 방화벽) 기능을 제공하는 TCP/443(HTTPS)의 Azure 애플리케이션 Gateway로 전송됩니다. Application Gateway는 요청을 역방향 프록시 요청으로 Red Hat JBoss EAP(Enterprise Application Platform)에서 호스트되는 다양한 서비스로 보냅니다.

  2. Java Web Services는 Oracle 데이터베이스(TCP/1521)를 심문합니다. 동기 웹 요청 응답 시간은 50밀리초(밀리초) 미만입니다.

  3. 일괄 처리 작업 예약과 같은 비동기 요청은 애플리케이션 계층 내의 큐 역할을 하는 레코드를 데이터베이스 테이블에 배치합니다.

    참고 항목

    나중에 Azure Queue Storage는 데이터베이스 테이블을 대체하므로 항상 실행 중인 분석 작업에 액세스할 수 있습니다.

  4. KornShell(ksh) 스크립트로 작성된 cron 작업은 Bash로 이식되고 Azure Virtual Machine Scale Sets의 별도의 RHEL(Red Hat Enterprise Linux) 서버에서 실행됩니다. cron 작업은 시스템 시작 시를 포함하여 15분마다 실행되어 Oracle 데이터베이스의 큐를 쿼리합니다. 작업은 호스트당 한 번에 하나씩 실행됩니다. Virtual Machine Scale Sets는 장기 실행 분석 작업을 병렬화합니다. 이 솔루션은 업무 시간 동안 시스템 성능에 미치는 영향을 제한하기 위해 사용량이 많은 일괄 처리가 필요하지 않습니다.

  5. Azure Communication Services는 Azure CLI 도구(문서)를 통해 이메일 경고를 보냅니다. Azure 시스템 할당 관리 ID(예: az login --identityVM(가상 머신)를 인증합니다.

  6. 분석 작업 결과는 시스템 할당 관리 ID를 사용하는 보안 SMBv3(TCP/445)을 통해 Azure Files 공유로 이동합니다.

구성 요소

  • Microsoft Entra ID 는 네트워크 기반 트러스트를 제거하고 시스템 할당 관리 ID를 제공하여 보안을 향상시킵니다.

  • Azure 앱 Service는 운영 체제 및 서버를 관리할 필요가 없으므로 운영 효율성과 비즈니스 민첩성이 향상됩니다.

  • Application Gateway 는 웹 애플리케이션 방화벽 및 역방향 프록시 기능을 제공하는 완전히 관리되고 확장 가능한 서비스입니다.

  • Azure Files 는 관리되는 서비스를 통해 게시되는 데이터 보고서를 제공합니다.

  • Azure Functions 는 지정된 프로그래밍 언어로 코드를 효율적으로 개발하는 데 사용되는 이벤트 기반 서버리스 컴퓨팅 플랫폼입니다.

  • Azure VM은 Oracle 데이터베이스 및 SAS 분석 노드에서 사용됩니다.

  • Azure Compute Gallery 는 Oracle 데이터베이스 및 SAS 분석 노드에 대한 이미지를 빌드하고 저장합니다. 두 개의 갤러리가 있습니다. 하나는 주 지역에 있고 다른 하나는 재해 복구 지역에 있습니다.

  • Communication Services는 CLI 유틸리티를 사용하여 이메일을 보냅니다. 이 서비스는 AIX의 mailx 명령을 대체합니다.

대안

대안은 모든 미들웨어 구성 요소를 있는 그대로 유지하는 완전한 서버 풀 아키텍처입니다.

이 솔루션은 많은 IT 조직이 운영하는 것과 같은 위임을 수행하는 원래 아키텍처와 유사합니다. 또한 이 대체 솔루션의 비용은 원래 아키텍처와 거의 동일하지만, 재구성된 아키텍처에서 제공하는 이점은 제공하지 않습니다. 예시:

  • 라이선스 절감: 대체 솔루션은 WebSphere를 유지하고 RHEL 노드를 더 추가합니다.

  • 운영 효율성: 대체 솔루션은 기본 얻을 수 있는 동일한 수의 서버를 유지합니다.

  • 비즈니스 민첩성: 대체 솔루션을 사용하면 자동 크기 조정 기반 하루 종일 분석 없이 야간에만 다시 기본 보고할 수 있습니다.

시나리오 정보

기존 애플리케이션의 이식성 및 팀의 워크플로 기본 설정 및 기술 로드맵에 따라 서버리스 또는 서버 풀 모델을 선택합니다.

원래 아키텍처와 마찬가지로, 다시 배치된 아키텍처에는 Oracle 데이터베이스가 있지만 Azure Virtual Machines의 RHEL 운영 체제로 다시 배치됩니다. 다시 배치된 아키텍처에서 완전히 관리되는 Azure 앱 서비스의 경우 Red Hat JBoss EAP가 WebSphere Java 애플리케이션을 대체합니다.

아키텍처(원래)

원래 아키텍처의 다이어그램입니다.

이 아키텍처의 Visio 파일을 다운로드합니다.

워크플로

이 워크플로는 이전 아키텍처에 해당합니다.

  1. 사용자 요청 및 인바운드 API 통합은 TCP/443(HTTPS)의 온-프레미스 F5 부하 분산 장치로 전송된 다음, 다양한 IBM WebSphere 호스팅 Java 웹 서비스로 역방향 프록시를 전송합니다.

  2. Java Web Services는 TCP/1521을 통해 Oracle 데이터베이스를 심문합니다. 대부분의 경우 동기 웹 요청 응답 시간은 1초 미만이지만 테스트 및 웹 로그 분석에 따라 300ms를 초과합니다.

  3. 일괄 처리 작업 예약과 같은 비동기 요청은 애플리케이션 계층 내의 큐 역할을 하는 Oracle 데이터베이스 테이블에 레코드를 배치합니다.

  4. ksh 스크립트로 작성된 cron 작업은 Oracle 데이터베이스의 큐를 쿼리하고 실행할 SAS 분석 작업을 선택합니다. 고객은 업무 시간 동안 시스템 성능에 미치는 영향을 제한하기 위해 야간에 일괄 처리를 수행해야 합니다.

  5. 이메일 경고는 SMTP(TCP/25)를 통해 사용자와 관리자에게 작업 시작 및 완료 시간 및 성공 또는 실패 결과를 알립니다.

  6. 분석 작업 결과는 SMBv3(TCP/445)를 통해 수집하기 위해 NFS(TCP+UDP/111,2049)를 통해 공유 드라이브로 이동합니다.

시나리오 정보

이 원래 아키텍처는 IBM WebSphere에서 실행되는 모놀리식 Java 애플리케이션을 평가하고 ksh 스크립트가 오케스트레이션하는 SAS에서 일괄 처리를 평가합니다. 별도의 AIX 호스트에서 실행되는 Oracle 데이터베이스는 두 애플리케이션 워크로드를 모두 지원합니다.

AIX에서 실행되는 원래 워크로드를 고려하여 마이그레이션 예산에 맞는 마이그레이션 전략을 다시 배치할지 확인합니다. 원하는 결과에서 뒤로 작업하여 클라우드에 대한 변환적이고 애플리케이션 중심적인 마이그레이션 경로를 결정합니다. 대부분의 애플리케이션 코드가 서버리스 아키텍처 및 컨테이너 오케스트레이터와 같은 클라우드 네이티브 서비스가 지원하는 언어로 작성되었는지 확인합니다.

이 시나리오 에서 Tidal Accelerator 는 Java 애플리케이션 코드를 분석하고 JBoss EAP와의 호환성을 결정했습니다. 프로젝트 초기에 Azure Pipelines 또는 GitHub Actions는 애플리케이션을 파일럿으로 다시 빌드하는 데 사용됩니다. 그런 다음 고객은 Azure 앱 Service와 같은 관리되는 서비스의 CI/CD(지속적인 통합 및 지속적인 업데이트) 파이프라인에서 민첩성을 설정할 수 있습니다. 고객은 온-프레미스 WebSphere 환경에서 이 기능을 가져올 수 없습니다.

이 예제에서는 분석 단계에서 Tidal Accelerator가 검색한 PL/SQL의 양 때문에 이 단계에서 Oracle 데이터베이스를 유지합니다. 고객의 향후 노력에는 RHEL의 Oracle 데이터베이스에서 완전히 관리되는 Azure Database for PostgreSQL 데이터베이스로 마이그레이션, Azure Queue Storage 채택, 완전 주문형 SAS 작업 실행 등이 포함됩니다. 이러한 노력은 고객의 기술 로드맵, 개발 주기 및 애플리케이션 소유자 인터뷰에서 결정된 비즈니스 방향에 부합합니다. 다음 스크린샷은 타이달 액셀러레이터의 인터뷰를 보여줍니다.

타이달 액셀러레이터의 인터뷰 스크린샷.

잠재적인 사용 사례

데이터 분석, CRM(고객 관계 관리), 하이브리드 클라우드 구성의 통합 계층 기본프레임 및 인벤토리 및 웨어하우스 관리 시나리오의 기타 사용자 지정 소프트웨어 솔루션을 포함하는 AIX에서 Azure로의 마이그레이션에 이 아키텍처를 사용할 수 있습니다.

다음과 같은 기술을 사용하여 기존 애플리케이션 워크로드에 이 아키텍처를 사용할 수 있습니다.

  • Oracle Siebel
  • Oracle E-Business Suite
  • SAS
  • IBM BPM

고려 사항

이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일단의 지침 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

안정성

안정성은 애플리케이션이 고객에 대한 약속을 충족할 수 있도록 합니다. 자세한 내용은 디자인 검토 검사 안정성 목록을 참조하세요.

이 아키텍처는 Azure Site Recovery를 사용하여 전체 Azure 지역이 실패하는 경우 빠른 장애 조치(failover) 및 재해 복구를 위해 보조 Azure 지역에 데이터베이스 Azure VM을 미러. 마찬가지로 Azure Files는 지역 중복 스토리지를 사용합니다.

데이터 처리 노드는 RA-ZRS(영역 중복) 관리 디스크를 사용하여 영역 중단 시 복원력을 제공합니다. 전체 지역 중단 중에 중복 Azure Compute 갤러리 내의 VM 이미지와 다른 지역의 데이터 처리 노드를 다시 프로비전할 수 있습니다.

보안

우수한 보안은 중요한 데이터 및 시스템에 대한 고의적인 공격과 악용을 방어합니다. 자세한 내용은 보안에 대한 디자인 검토 검사 목록을 참조하세요.

이 아키텍처는 애플리케이션 배포에 변경할 수 없는 인프라 접근 방식을 채택하고 Azure 파이프라인의 코드를 사전에 검사하여 프로덕션 환경에서 중요한 데이터를 보호합니다. 보안 검사를 위한 왼쪽 이동 방식을 통합하고 CI/CD 파이프라인 지원 배포를 자주 실행하여 소프트웨어의 현재 준수를 개선하고 기술 문제를 줄입니다.

비용 최적화

비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 높이는 방법을 찾는 것입니다. 자세한 내용은 디자인 검토 검사 비용 최적화 목록을 참조하세요.

이 솔루션은 가능한 한 많은 서버 풀 구성 요소를 제거하여 운영 비용을 70% 이상 줄입니다. 이 아키텍처는 컴퓨팅 및 소프트웨어 라이선스 비용을 줄입니다.

운영 우수성

운영 우수성은 애플리케이션을 배포하고 프로덕션에서 계속 실행하는 운영 프로세스를 다룹니다. 자세한 내용은 운영 우수성에 대한 디자인 검토 검사 목록을 참조하세요.

제품 팀은 Azure에서 자신을 지원하여 보고된 인시던트 티켓의 해결 시간을 줄입니다. 또한 한 제품 팀이 Azure에서 전체 애플리케이션 스택을 지원하므로 티켓의 반송 횟수 또는 한 그룹에서 다른 그룹으로 할당된 티켓 수는 0입니다.

성능 효율성

성능 효율성은 사용자가 배치된 요구 사항을 효율적인 방식으로 충족하기 위해 워크로드의 크기를 조정할 수 있는 기능입니다. 자세한 내용은 성능 효율성에 대한 디자인 검토 검사 목록을 참조하세요.

고객은 가능한 경우 Azure 앱 서비스를 채택하여 애플리케이션 수요에 맞게 컴퓨팅 요구 사항을 자동으로 확장하고 확장할 수 있습니다. 이러한 탄력성은 사용량이 많은 시간 동안 일관된 애플리케이션 성능을 보장합니다. 이 방법도 비용 효율적입니다.

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

보안 주체 작성자:

Richard Berry | Sr. Program Manager

비공개 LinkedIn 프로필을 보려면 LinkedIn에 로그인합니다.

다음 단계

조수 가속기 솔루션 사용에 대한 자세한 내용은 Microsoft Tidal Cloud 팀에 문의하세요.

Azure 로 마이그레이션하는 방법에 대한 자세한 내용은 레거시 마이그레이션 엔지니어링 팀에 문의하세요.