다음을 통해 공유


Azure Virtual Machines의 데이터베이스를 갖춘 Oracle 애플리케이션용 아키텍처

이 문서에서는 Oracle 데이터베이스가 상주하거나 공동 배치된 Azure IaaS에 Oracle 애플리케이션을 배포하는 참조 아키텍처를 제공합니다.

Oracle 워크로드는 Oracle 데이터베이스뿐만 아니라 Siebel, 사람소프트, JD Edwards, E-Business Suite 또는 사용자 지정된 WebLogic 서버 애플리케이션과 같은 Oracle 자사 애플리케이션으로 구성됩니다. IaaS(Azure Infrastructure as a Service)에 Oracle 애플리케이션을 배포하는 것은 Oracle 데이터베이스함께 Oracle 워크로드에 클라우드를 사용하려는 조직에 일반적인 시나리오입니다. Microsoft는 이 프로세스를 용이하게 하기 위한 참조 아키텍처 및 모범 사례를 제공합니다.

일반 애플리케이션 마이그레이션 지침

Oracle 애플리케이션이 Azure IaaS에서 이동함에 따라 애플리케이션 유형에 관계없이 따라야 하는 일반적인 디자인 고려 사항이 있습니다. 일부 고려 사항은 애플리케이션과 관련이 있습니다. 이 섹션에서는 모든 애플리케이션에 대한 일반적인 디자인 고려 사항을 나열하고, 애플리케이션 관련 고려 사항은 각 애플리케이션에서 다룹니다.

네트워크 및 보안

Azure의 Oracle 애플리케이션에 대한 제공된 네트워크 설정은 네트워크 및 보안 고려 사항의 다양한 측면을 다룹니다. 권장되는 네트워크 설정에 대한 분석은 다음과 같습니다.

  • Microsoft Entra ID 및 SAML을 사용하는 SSO(Single Sign-On): SAML(Security Assertions Markup Language) 프로토콜을 사용하여 SSO(Single Sign-On)에 Microsoft Entra ID를 사용합니다. 이 SSO를 사용하면 사용자가 한 번 인증하고 여러 서비스에 원활하게 액세스할 수 있습니다.

  • Microsoft Entra 애플리케이션 프록시: 특히 원격 사용자에 대해 Microsoft Entra 애플리케이션 프록시를 사용하는 것이 좋습니다. 이 프록시를 사용하면 네트워크 외부에서 온-프레미스 애플리케이션에 안전하게 액세스할 수 있습니다.

  • ExpressRoute를 통해 내부 사용자 라우팅: 내부 사용자의 경우 Azure 서비스에 대한 전용 프라이빗 연결을 위해 Azure ExpressRoute를 통해 트래픽을 라우팅하여 대기 시간이 짧고 안전한 통신을 보장합니다.

  • Azure Firewall: 필요한 경우 보안 강화를 위해 애플리케이션 앞에서 Azure Firewall을 구성할 수 있습니다. Azure Firewall은 무단 액세스 및 위협으로부터 리소스를 보호하는 데 도움이 됩니다.

  • 외부 사용자용 Application Gateway: 외부 사용자가 애플리케이션에 액세스해야 하는 경우 Azure 애플리케이션 Gateway를 사용하는 것이 좋습니다. 웹 애플리케이션을 보호하기 위한 WAF(웹 애플리케이션 방화벽) 기능과 트래픽을 분산하는 계층 7 부하 분산 기능을 제공합니다.

  • NSG(네트워크 보안 그룹): NSG(네트워크 보안 그룹)를 사용하여 서브넷을 보호합니다. NSG를 사용하면 보안 규칙을 정의하여 네트워크 인터페이스, Virtual Machines 및 서브넷에 대한 인바운드 및 아웃바운드 트래픽을 제어할 수 있습니다.

  • RBAC(역할 기반 액세스 제어): 특정 개인 또는 역할에 대한 액세스 권한을 부여하려면 Azure RBAC(역할 기반 액세스 제어)를 사용합니다. RBAC 는 역할 및 권한에 따라 Azure 리소스에 대한 세분화된 액세스 제어를 제공합니다.

  • SSH 액세스용 Bastion 호스트: Bastion 호스트점프 상자로 사용하여 SSH 액세스에 대한 보안을 강화합니다. Bastion 호스트는 관리자가 가상 네트워크의 Virtual Machines에 액세스할 수 있는 보안 게이트웨이 역할을 합니다. 이 호스트는 추가된 보안 계층을 제공합니다.

  • 추가 고려 사항:

    • 데이터 암호화: 미사용 데이터와 전송 중인 데이터가 암호화되었는지 확인합니다. Azure는 이 목적을 위해 Azure Disk Encryption 및 SSL/TLS와 같은 도구를 제공합니다.
    • 패치 관리: 알려진 취약성으로부터 보호하기 위해 EBS 환경을 정기적으로 업데이트하고 패치합니다.
    • 모니터링 및 로깅: 보안을 위해 Azure MonitorAzure Defender를 구현하여 보안 위협 및 변칙에 대한 환경을 지속적으로 검사. 감사 및 포렌식 분석을 위한 로깅을 설정합니다.
  • 요약하자면, 이러한 네트워크 및 보안 설정은 Azure IaaS에서 Oracle 애플리케이션을 호스트하기 위한 강력하고 안전한 환경을 제공하는 것을 목표로 합니다. 내부 및 외부 사용자를 위한 인증, 액세스 제어 및 네트워크 보안에 대한 모범 사례를 통합합니다. 또한 애플리케이션 서버에 대한 SSH 액세스의 필요성을 고려합니다. 이러한 권장 사항은 Azure IaaS에서 Oracle 애플리케이션 배포를 위한 완성도 높은 보안 태세를 설정하는 데 도움이 될 수 있습니다.

웹 계층: 웹 계층은 요청 부하를 분산하고 애플리케이션 계층, 데이터베이스 계층 및/또는 백업에 따라 요청을 보냅니다.

애플리케이션 계층: 애플리케이션 계층에는 일반적으로 애플리케이션 서버 및 공유 파일 시스템이 포함됩니다.

자동 크기 조정의 경우 Virtual Machine Scale Sets 는 워크로드에 맞게 사용자 지정 크기 조정 규칙을 사용하여 수요에 따라 여러 Virtual Machines를 스케일 아웃하는 데 적합할 수 있습니다.

Azure SEM(주체 전문가)과 협력하여 아키텍처에 대한 철저한 평가를 수행합니다. 성능, 가용성 및 확장성을 포함하여 특정 요구 사항에 따라 가장 적합한 Azure 서비스를 결정하는 데 도움이 될 수 있습니다. 아키텍처를 디자인할 때 비용, 데이터 보안, 규정 준수 및 재해 복구와 같은 요소를 고려해야 합니다.

또한 효율성과 비용 효율성을 보장하기 위해 Azure 리소스를 지속적으로 검사 최적화해야 합니다.

부하 분산 및 처리량: 애플리케이션 서버의 워크로드 특성을 평가하는 것이 중요합니다. 일부 서버는 더 많은 작업을 처리하고 다른 서버보다 더 높은 처리량을 만듭니다. 이 정보는 리소스가 효과적으로 할당되도록 Azure Virtual Machine Scale Sets 및 부하 분산 구성을 디자인할 때 중요합니다.

데이터베이스 계층: AZURE IaaS의 Oracle Data Guard for Oracle에서 HA 아키텍처를 사용하는 것이 좋습니다. 애플리케이션에는 특정 유형의 HA 설정이 필요하며 각 애플리케이션 아래에 나열됩니다.

Backup - 백업은 애플리케이션 계층 및 데이터베이스 계층에서 전송됩니다. 이러한 두 계층을 두 개의 서로 다른 공급업체로 구분해서는 안 되는 여러 이유 중 하나일 뿐입니다. 데이터베이스의 백업은 프리미엄 파일의 Azure Backup 볼륨 스냅샷을 통해 보조 지역으로 수행됩니다.

재해 복구 - 선택할 수 있는 다양한 솔루션이 있습니다. 그것은 매우 당신의 요구 사항에 따라 달라집니다. 아키텍처는 고가용성으로 빌드되었습니다. 애플리케이션 계층을 복제본(replica) 경우 Azure Site Recovery를 사용할 수 있습니다. 선택할 수 있는 또 다른 솔루션은 관리 디스크에 대한 중복 옵션입니다. 두 솔루션 모두 데이터를 복제본(replica). 관리 디스크에 대한 중복 옵션은 아키텍처를 간소화할 수 있는 솔루션이지만 몇 가지 제한 사항도 함께 제공됩니다.

Azure의 Siebel

Oracle Siebel CRM은 많은 기업에서 선호하는 엔터프라이즈급 CRM 솔루션입니다. Oracle 포트폴리오에서 가장 복잡한 애플리케이션 중 하나로, 고객 연결 작업을 관리하기 위한 트랜잭션, 분석 및 계약 기능의 조합을 제공합니다.

다음은 Azure Virtual Machines for Innovation Pack 16 이하에서 Siebel 애플리케이션 배포의 권장 아키텍처입니다.

Diagram showing the recommended architecture of a Siebel application deployment on Azure Virtual Machines for Innovation Pack 16 and earlier.

다음 다이어그램은 Azure Virtual Machines for Innovation Pack 17 이하의 Siebel 애플리케이션 배포 아키텍처입니다.

Diagram showing the recommended architecture of a Siebel application deployment on Azure Virtual Machines for Innovation Pack 17 and earlier.

Oracle Siebel 디자인 고려 사항

  • 네트워크 및 보안: 일반적인 네트워크 및 보안 고려 사항을 따르는 데 필요한 Azure의 Oracle Siebel에 대한 네트워크 설정입니다.

  • 마이그레이션은 Siebel 도구 서브넷을 사용하여 수행해야 합니다.

애플리케이션 계층

  • 버전 17 이상 – 애플리케이션 및 데이터베이스의 특정 서버 및 유틸리티 구성이 필요합니다.

데이터베이스 계층

Azure의 E-Business 제품군

Oracle EBS(E-Business Suite)는 SCM(공급망 관리) 및 CRM(고객 관계 관리)을 비롯한 애플리케이션 제품군입니다. EBS는 SCM 및 CRM 시스템이므로 일반적으로 타사 시스템에 대한 많은 인터페이스가 있습니다. 아래 아키텍처는 한 지역 내에서 고가용성으로 빌드되었습니다.

다음 다이어그램에서는 외부 사용자가 회사 네트워크를 교차하지 않는다고 가정합니다.

Diagram showing on-premises network where external users don't cross the corporate network.

Oracle EBS 디자인 고려 사항

데이터베이스 계층 - 주 및 보조 데이터베이스는 하나의 데이터 센터 내에 있어야 하며 동기 구성을 사용해야 합니다. 데이터 센터에 애플리케이션을 설치하는 경우 비동기 모드에서 Data Guard를 구성해야 합니다.

Azure의 JD Edwards

Oracle의 JD Edwards는 포괄적인 엔터프라이즈 리소스 계획 소프트웨어의 통합 애플리케이션 제품군입니다. 공급망, 웨어하우스 관리, 물류, 제조 리소스 계획 등에 사용되는 JDE를 보았습니다. 애플리케이션을 사용하기 때문에 다른 시스템에 대한 인터페이스도 중요하다는 것을 알 수 있습니다.

다음 아키텍처는 고가용성으로 빌드됩니다. 외부 사용자가 회사 네트워크를 통해 액세스하지 않는 것으로 가정했습니다. 외부 사용자가 회사 네트워크를 사용하여 애플리케이션에 액세스하는 경우 다음과 같이 네트워킹에서 아키텍처를 간소화할 수 있습니다. Diagram showing on-premises network and external users.

JD Edwards 디자인 고려 사항

웹 계층: 애플리케이션 웹 계층은 일반적으로 여러 애플리케이션 서버로 구성됩니다. JD Edwards에서 규칙은 종종 이러한 애플리케이션 웹 서버에 저장됩니다.

  • 프레젠테이션 계층: 프레젠테이션 계층의 각 인스턴스는 스토리지와 연결됩니다. 인스턴스 간의 종속성을 줄이면 대기 시간이 높아질 수 있으므로 신중하게 평가하는 것이 중요합니다.

  • 서버 성능 변형: 일부 서버는 더 많은 작업을 처리하고 다른 서버보다 더 높은 처리량을 만들 수 있습니다. 설계 단계에서는 인프라가 최대 워크로드를 효율적으로 처리할 수 있도록 이 처리량 변형을 평가해야 합니다.

  • 다시 설계: 자동 크기 조정에 Azure Virtual Machine Scale Sets를 사용하면 JD Edwards 설정의 다시 설계가 필요하지 않습니다. 애플리케이션 아키텍처를 크게 변경하지 않고 구현할 수 있는 확장 가능한 솔루션입니다.

데이터베이스 계층 - 기본 및 보조는 하나의 데이터 센터 내에 유지되며 동기 구성을 사용해야 합니다. 데이터 센터에 애플리케이션을 설치하는 경우 비동기 모드에서 Data Guard를 구성해야 합니다. 데이터베이스 계층의 데이터는 Azure Storage로 직접 전송됩니다. 스토리지는 현재 아키텍처 설정에 따라 달라집니다.

azure의 사람소프트

Oracle의 사람소프트 애플리케이션 제품군에는 인적 자원 및 재무 관리를 위한 소프트웨어가 포함되어 있습니다. 애플리케이션 제품군은 다중 계층이며, 애플리케이션에는 HRMS(인사 관리 시스템), CRM(고객 관계 관리), FSCM(재무 및 공급망 관리) 및 EPM(엔터프라이즈 성능 관리)이 포함됩니다.

Diagram showing on-premises network and internal users with expressroute.

사람소프트 디자인 고려 사항

애플리케이션 계층: 애플리케이션 계층에는 여러 작업 및 서버가 포함됩니다. 비즈니스 논리 및 프로세스를 실행하지만 데이터베이스에 대한 연결도 기본. 이 종속성이 끊어지는 즉시 대기 시간이 발생합니다.

  • 애플리케이션 및 데이터베이스 계층 간의 종속성: 애플리케이션과 데이터베이스 계층 간의 대기 시간을 최소화하는 것이 중요합니다. 애플리케이션 및 데이터베이스 계층을 동일한 클라우드 공급자(이 경우 Azure)에 배치하면 네트워크 대기 시간을 줄일 수 있습니다. Azure는 계층 간의 짧은 대기 시간 연결을 보장하기 위해 VNet(Virtual Network) 피어링 또는 ExpressRoute와 같은 다양한 네트워킹 옵션 및 서비스를 제공합니다.

  • 운영 체제 고려 사항: 프로세스 스케줄러에 특히 Windows 운영 체제가 필요한 경우 Azure Virtual Machines에서 실행할 수 있습니다. 다양한 Windows Server 버전을 Azure 지원 애플리케이션의 요구 사항을 충족하는 버전을 선택할 수 있습니다.

  • 아키텍처 평가: 확장성, 가용성 및 성능을 포함하여 아키텍처 요구 사항을 신중하게 평가합니다. 고가용성 및 확장성을 보장하기 위해 부하 분산된 구성에서 여러 애플리케이션 서버 인스턴스를 설정하는 것이 좋습니다.

데이터베이스 계층 - 보조 데이터베이스에 대한 기본 및 복제본(replica) 하나의 데이터 센터 내에 있어야 하며 동기 구성을 사용해야 합니다. 데이터 센터에 애플리케이션을 설치하는 경우 비동기 모드에서 Data Guard를 구성해야 합니다.

다음 단계 

Oracle Database에 대한 참조 아키텍처

Oracle 워크로드를 Azure Virtual Machines로 마이그레이션