콘텐츠로 이동하기
SAP on Google Cloud

고가용성이 우선순위일 때 Google Cloud에서 SAP를 실행하는 방법

2022년 8월 29일
Osmar Vinci

Customer Engineer, SAP Solutions

Joe Darlak

Head of SAP Solution Management

GCP 사용해 보기

$300의 무료 크레딧과 20개 이상의 항상 무료인 제품으로 Google Cloud 사용을 시작해보세요.

무료 체험

* 본 아티클의 원문은 2022년 7월 16일 Google Cloud 블로그(영문)에 게재되었습니다. 


지난 2~3년간 업종을 불문하고 많은 기업이 엔터프라이즈 IT 시스템의 안전성, 보안, 사용자 가용성을 유지하는 데 있어 예상치 못한 어려움을 겪었습니다. 그중 다수가 제품과 서비스의 수요가 급증하거나 급감하는 경험을 했고 대다수가 지금도 하이브리드 업무 환경을 운영하는 중입니다. 이처럼 환경이 변화하는 가운데 비즈니스 요구사항과 기대가 지속적으로 달라지면서 IT 시스템의 서비스 수준 목표(SLO)와 서비스수준계약(SLA)을 주기적으로 재점검하고 비즈니스 니즈에 부합하는지 확인하는 과정이 권장되고 있습니다.

온프레미스 환경에서 SAP 엔터프라이즈 애플리케이션을 실행하는 기업이 이 같은 새로운 요구사항에 적응하기란 특히 복잡한 일일 수 있습니다. 조직이 비즈니스에 중요한 SAP 인스턴스를 실행하는 데 따르는 복잡성과 높은 유지보수 비용으로 인해 이미 어려움을 겪고 있을 가능성도 높습니다. 이러한 기업은 시스템에 대한 사용자의 의존성과 예기치 않은 서비스 중단이 초래할 수 있는 불편을 잘 알고 있기 때문에 온프레미스 환경을 사용하면서 고가용성(HA) 시스템과 인프라에 대한 많은 투자로 뒷받침하는 것을 필수 애플리케이션의 보안과 가용성을 보장하는 최선의 방법으로 보고 있습니다. 온프레미스 SAP 환경을 실행할 수밖에 없는 IT 조직은 계속 증가하는 기타 비즈니스 핵심 애플리케이션을 관리하는 동시에 더 적은 리소스로 더 많은 작업을 해내야 하는 압박을 받는 경우가 많습니다.

많은 조직이 이런 방식으로는 지속할 수 없다고 느끼고 있습니다. 실제로 HA 솔루션의 트렌드를 조사한 SIOS 연구에 따르면 조사 당시 이미 많은 기업에서 온프레미스 애플리케이션의 가용성을 유지하는 데 어려움을 겪고 있는 것으로 나타났습니다.

  • 조사에 참여한 기업 중 95%는 애플리케이션을 지원하는 HA 서비스에서 비정기적인 오류 이상의 오류가 발생한다고 응답했습니다.
  • 98%는 애플리케이션 성능 문제를 정기적 또는 비정기적으로 경험한 적이 있으며 71%는 그 횟수가 한 달에 1~2회에 달한다고 응답했습니다.
  • 조사에 참여한 기업이 HA 애플리케이션 문제가 발생했을 때 문제를 파악하고 해결하는 데 걸린다고 응답한 시간은 평균 3~5시간이었습니다.
한 기업에 녹록지 않은 방향으로 흘러가고 있습니다. 오늘날의 IT 환경에는 위험, 불확실성, 긴축 상황에 대한 전망이 우세합니다. 동시에 기업의 핵심 소프트웨어인 SAP 애플리케이션의 보안, 생산성, 가용성을 유지하는 것이 비즈니스에 특히 중요한 상황입니다.

Google Cloud에서는 SAP 환경의 고가용성과 관련된 어려움을 해결하고자 많은 고민을 했습니다. Google은 이를 고객의 사활이 걸린 문제로 보고 해결책을 제시하는 것을 우선순위로 삼고 있습니다. 즉 고가용성과 성능을 제공하도록 설계된 클라우드 플랫폼에서 안정적이고 확장 가능하며 비용 효과적인 SAP 환경을 구축하기 위해 노력하고 있습니다.

Google Cloud 사용 시 제공되는 많은 서비스는 내결함성 또는 고가용성을 갖추도록 설계됩니다. 이러한 개념은 유사하지만 그 차이를 이해하면 아키텍처를 설계할 때 드는 시간과 노력을 절약할 수 있습니다.

Google은 내결함성 구성요소를 완전히 중복된 메커니즘으로, 즉, 구성요소에 장애가 발생하더라도 원활하게 시스템 가용성을 회복하도록 설계된 것으로 간주합니다. 스토리지(Google Cloud Storage, Persistent Disk)와 네트워크(Google 네트워크, Cloud DNS, Cloud 부하 분산기) 같은 구성요소가 여기에 해당됩니다.

이에 반해 가용성이 높은 서비스는 단일 장애점으로 알려진 모든 관련 아키텍처 구성요소의 자동 복구 메커니즘을 갖추어 복구 시간 목표(RTO)와 복구 지점 목표(RPO)를 최소화합니다. 일반적으로 구성요소를 복제하여 복제본 사이의 장애 조치 프로세스를 자동화하는 과정이 수반됩니다.

Google Cloud 환경에서 SAP 가용성을 높이는 4단계

SAP 고객에게 적합한 가용성 솔루션을 제공하는 방법을 이해하기 위해서는 먼저 각 고객이 목표로 하는 가용성 SLA가 서로 다르며 이러한 목표는 비즈니스 니즈, 예산, SAP 애플리케이션 용도, 기타 요인에 따라 달라진다는 사실을 인지해야 합니다. SAP 고가용성 환경의 인프라, 운영체제, 애플리케이션 가용성 구성요소를 살펴보고 SAP 시스템의 전반적인 가용성 전략에 고려해야 하는 사항을 알아보겠습니다.

1단계: 인프라

많은 고객이 온프레미스의 SAP 시스템을 Google Cloud로 이전하는 것만으로 시스템의 업타임이 늘어날 수 있다는 사실을 깨닫습니다. 기본적으로 가용성이 높은 보안, 네트워킹, 컴퓨팅, 스토리지 기능이 이 플랫폼에 내장되어 있어 활용 가능하기 때문입니다.

컴퓨팅 서비스

컴퓨팅 서비스의 경우 Google Cloud Compute Engine에서 기본 제공하는 3가지 기능이 특별히 중요한 역할을 하며 하드웨어 장애로 인한 애플리케이션 중단을 줄이거나 방지할 수 있습니다.

라이브 마이그레이션: 고객의 VM 인스턴스가 실행 중인 호스트 시스템에 정기적인 유지보수가 필요한 경우, 라이브 마이그레이션을 사용하면 VM 인스턴스를 다른 호스트로 이전하면서도 애플리케이션 재시작이나 중단이 발생하지 않습니다. 이것은 모든 Google Cloud 사용자가 추가 비용 없이 이용할 수 있는 기본 제공 기능이며 사용자 워크로드의 규모나 복잡성에 상관없이 원활하게 자동으로 작동합니다. Google Cloud에서 하드웨어 유지보수를 수행하고 하이퍼바이저 보안 패치와 업데이트를 전역에 매끄럽게 적용하는 동안 그 어떤 고객에게도 VM 재시작을 통보할 필요가 없습니다. 라이브 마이그레이션을 활용하는 유지보수는 실행 중인 애플리케이션에 아무런 영향을 미치지 않기 때문입니다.

메모리 포이즈닝 복구(MPR): 아무리 품질이 높은 하드웨어 인프라라 하더라도 어느 순간 고장이 날 수 있으며 메모리 오류는 가장 흔한 유형의 하드웨어 오작동입니다(메모리 안정성에 관한 Google Cloud 연구 참조). 최신 CPU 아키텍처에는 오류 정정 코드(ECC)와 같이 정정 가능한 오류가 발생한 호스트를 복구하는 기본 기능이 있습니다. 하지만 정정 불가능한 오류로 인해 호스트에 발생하는 장애와 전체 VM 재시작은 예기치 않은 다운타임으로 이어집니다.

HANA 데이터베이스가 있다면 데이터를 메모리에 로드하는 데 소요되는 시간도 고려해야 합니다. 이 경우 호스트 장애는 비즈니스에 필수적인 서비스에 몇 시간에 달하는 다운타임(데이터베이스 규모 따라 다름)을 초래할 수 있습니다.

Google Cloud는 메모리 오류로 인한 장애와 다운타임을 줄이기 위해 CPU 기반 오류 처리 기능, SAP HANA, Google Cloud 기능을 통합하는 솔루션을 개발했습니다. MPR은 정정 불가능한 메모리 오류를 감지하고 라이브 마이그레이션을 통해 문제가 발생한 호스트에서 VM을 이전할 수 있을 때까지 해당 오류를 격리합니다.

빠른 재시작 기능이 사용 설정된 상태에서 SAP HANA를 호스팅하는 VM에 정정 불가능한 오류가 발견된 경우 Google Cloud MPR은 SAP HANA에 신호를 보내 문제가 발생한 메모리만 디스크에서 다시 로드하므로 대부분의 경우 다운타임 없이 문제를 해결할 수 있습니다. 이후 문제가 발생한 호스트의 모든 VM이 라이브 마이그레이션을 통해 정상 작동 호스트로 마이그레이션되어 해당 VM에서 실행 중인 고객 애플리케이션에 다운타임이나 장애가 발생하는 것을 방지합니다.

자동 다시 시작: 드물지만 예기치 않은 종료를 방지할 수 없는 경우, 이 기능이 작동하면서 자동으로 다른 호스트의 VM 인스턴스를 재시작합니다. 필요하다면 사용자가 정의해 놓은 시작 스크립트를 호출하여 VM에서 실행 중인 애플리케이션이 동시에 재시작되도록 만듭니다. 이 기능의 목표는 예기치 않은 중단이 발생할 때 복구 시간을 최대한 앞당기고, 가능한 한 사용자가 이 프로세스를 간편하고 안정적으로 사용하도록 만드는 것입니다.

단일 노드의 업타임을 늘리는 것이 이러한 서비스의 목표이지만 중요성이 높은 워크로드는 완전한 영역 서비스 중단을 비롯한 컴퓨팅 관련 장애에 대비해 복원성을 확보해야 합니다. 이를 위해 Google Cloud Compute Engine은 여러 영역에 분산된 인스턴스에 대해 99.99%의 월별 업타임 비율 SLA를 제공합니다.

네트워크 파일 시스템 스토리지(NFS)

가용성이 높은 SAP 인프라의 또 다른 중요한 구성요소는 네트워크 파일 시스템 스토리지(NFS)입니다. NFS는 인터페이스 디렉터리 및 전송 관리 같은 SAP 공유 파일에 사용됩니다. Google Cloud는 여러 파일 공유 솔루션을 제공합니다. 자사 솔루션으로는 Filestore Enterprise가 있고 타사 솔루션으로는 NetApp CVS-Performance 같은 제품이 있으며 모두 99.99% 가용성 SLA를 제공합니다. Google Cloud 기반 NFS 솔루션 비교 정보를 자세히 살펴보려면 제공된 문서를 참고하세요.

2단계: 운영체제

운영체제 수준의 컴퓨팅 구성요소를 클러스터링하는 것은 장애 조치 메커니즘에서 중요한 부분입니다. 이로써 구성요소의 장애를 신속하게 감지하고 장애 조치 절차를 트리거하여 애플리케이션 다운타임을 최소화할 수 있습니다.

Google Cloud의 OS 수준 클러스터링은 온프렘의 클러스터링 방식과 매우 유사하지만 몇 가지 기능이 추가로 개선되었습니다.

SUSE Enterprise Linux(SLES)와 Red Hat Enterprise Linux(RHEL)는 둘 다 클러스터링 리소스 관리자로 Pacemaker를 구현하고 Google Cloud용으로 설계된 클러스터 에이전트를 제공하기 때문에 STONITH 펜싱, VIP 경로, 스토리지 작업 같은 함수와 기능을 원활하게 관리할 수 있습니다. Google Cloud에 OS 클러스터를 배포할 때 고객이 HA/DR 제공업체 후크를 활용하면 SAP HANA가 알림을 발송할 수 있어 데이터 손실 없이 성공적으로 장애 조치를 취할 수 있습니다. 자세한 내용은 SAP 고가용성 배포 가이드에서 RHEL SLES에서 HA 클러스터를 구성하는 방법을 자세히 다룬 문서를 참조하세요.

Windows 기반 워크로드의 경우 Microsoft 장애 조치 클러스터링 기술을 사용하며 Google Cloud에서도 클러스터를 사용 설정하고 구성할 수 있는 특별한 기능이 있습니다. 여기에서 자세한 내용이 담긴 문서를 찾을 수 있습니다.

3단계: 데이터베이스

모든 SAP 환경은 중앙 데이터베이스 시스템을 활용해 비즈니스에 필수적인 데이터를 저장하고 관리합니다. SAP 고가용성 솔루션이라면 당연히 이 데이터베이스 레이어의 가용성과 무결성을 유지할 방법을 고려해야 합니다. 게다가 SAP 시스템에서 지원하는 다양한 데이터베이스 시스템 중 많은 수가 고가용성 성능을 달성하기 위해 여러 메커니즘을 사용합니다. Google Cloud는 SAP HANA, MaxDB, SAP ASE, IBM Db2, Microsoft SQL Server, Oracle 워크로드(이 경우 베어메탈 솔루션을 사용해 HA 인증 하드웨어를 사용하고 Oracle RAC 솔루션도 설치할 수 있음)에 HA 아키텍처를 사용하는 방법을 지원하고 문서화하는 방식으로 고객에게 SAP 데이터베이스의 HA 비용과 이점을 절충하는 방법을 결정할 수 있는 자유를 줍니다.

SAP HANA 시스템 복제(HSR)는 SAP HANA 시스템의 고가용성을 보장하는 데 가장 중요한 역할을 하는 애플리케이션 기반 기술 중 하나입니다. 이 기능은 기본 시스템의 데이터를 지속적으로 하나 이상의 보조 시스템에 복제하는 방식으로 작동하며 재해가 발생하는 경우 이 데이터를 메모리로 미리 로드하여 신속하게 장애 조치할 수 있습니다.

Google Cloud는 동일한 리전의 임의 영역에 상주하는 SAP 인스턴스에 동기식 복제를 사용할 수 있도록 지원하여 HSR을 지원하고 보완합니다. 즉 사용자는 기본 인스턴스와 보조 인스턴스를 각각 다른 영역에 배치하여 한 영역에 단일 장애점이 발생하는 것을 방지할 수 있습니다.

SAP ASE 또는 IBM Db2 같은 다른 데이터베이스 시스템 역시 Google Cloud 인프라에서 실행할 수 있는 유사한 기능을 제공합니다. 같은 리전 내 영역 간 네트워크 지연 시간이 짧은 데다 자동 배포용 도구까지 지원되므로 기업은 다양한 데이터베이스 HA 옵션을 현재 비즈니스 니즈에 맞게 선택할 수 있습니다. 지원되는 데이터베이스 시스템 및 참조 아키텍처의 최근 목록은 최신 문서에서 참고하세요.

4단계: 애플리케이션 서버

SAP의 NetWeaver 아키텍처는 사용자가 HA 업타임 요구사항에 위협이 될 수 있는 앱-서버 병목 현상을 피하는 데 도움이 됩니다. Google Cloud는 고객이 동기화를 통해 데이터 손실을 방지하고 SAP NetWeaver의 안정성과 성능을 최대한 활용하는 데 필요한 고가용성 컴퓨팅 및 네트워킹 기능을 제공함으로써 이 아키텍처의 장점을 활용합니다. 이 아키텍처는 하나의 OS 수준 클러스터(SLES 또는 RHEL)에 ABAP SAP Central Services(ASCS) 및 Enqueue Replication Server(ERS)를 위한 Pacemaker 클러스터 리소스 관리자와 STONITH 펜싱을 갖추고 있으며 각각 가상 IP용 자체 내부 부하 분산기(ILB)를 포함하고 있습니다. NetWeaver 고가용성 계획 가이드에서 RHEL SLES에 HA 클러스터를 배포하고 구성하는 방법을 자세히 설명한 문서를 참조하세요.

애플리케이션 서버 인스턴스를 같은 리전의 여러 영역에 분산시키면 최종 사용자에게 계속 우수한 성능을 제공하면서도 영역 단위 장애를 가장 효과적으로 방지할 수 있습니다. IT팀은 자동 배포를 통해 수요 변동에 신속하게 대응하고 트래픽이 가장 많은 상황에도 SAP 시스템이 계속 실행되도록 수시로 추가 인스턴스를 구동할 수 있습니다.

Google Cloud가 고가용성 SAP 시스템을 지원하는 그 밖의 방법

매우 어려운 상황에서도 Google Cloud가 SAP 애플리케이션 업타임을 최대로 늘릴 수 있는 방법이 그 외에도 많습니다. 몇 가지 사례를 들어 규모를 막론하고 기업에서 유사한 기능을 저렴한 비용으로 구현하는 것이 얼마나 힘든 일인지 생각해 보세요.

지리적 분포 및 중복성. Google Cloud는 현재 전 세계적으로 91개 영역과 140개가 넘는 접속 지점을 아우르는 30개 리전에서 입지를 다졌습니다. 대부분의 SAP 사용자는 핵심 Google Cloud 서비스를 한 리전 내 여러 영역에 분산시키는 방법으로 성능이나 경제성 저하 없이 가용성 목표를 달성할 수 있습니다.

강력한 성능과 다목적성을 겸비한 부하 분산 기능. 부하 분산과 지리적 분포를 SAP 애플리케이션의 가용성을 유지하는 또 다른 핵심 요인으로 생각하는 기업이 많습니다. Google Cloud는 사용자에게 가장 근접한 정상 작동 리전으로 트래픽을 유도할 수 있는 글로벌 부하 분산을 포함한 다양한 부하 분산 옵션으로 기업의 이러한 니즈를 충족합니다. Google Cloud Load Balancing은 사용자, 트래픽, 네트워크, 백엔드 상태, 기타 관련 조건의 변화에 즉각적으로 반응합니다. 또한 소프트웨어 정의 서비스 역할을 하므로 많은 기업이 실제 부하 분산 인프라를 사용할 때 겪는 확장성 및 관리 문제를 방지합니다. 내부 부하 분산기는 가용성이 높은 SAP 시스템에 중요한 역할을 하는 또 하나의 부하 분산기 서비스로서, 기본 시스템과 보조 시스템 간의 가상 IP(VIP) 구현 자동화를 지원합니다.

개발자의 업무 집중과 생산성을 유지해 주는 도구. Google Cloud의서버리스 플랫폼에는 기본 제공되는 중복성 및 부하 분산을 제공하는 관리형 컴퓨팅 및 데이터베이스 제품이 포함됩니다. 따라서 회사의 SAP 개발팀은 기본 인프라에 대해 걱정할 필요 없이 SAP 시스템에 확장 프로그램을 병렬식으로 배포할 수 있습니다. Apigee API 관리를 사용하는 기업은 SAP 시스템에 이러한 확장 프로그램의 확장 가능한 인터페이스를 제공하여 트래픽이 급증하거나 악의적인 공격이 있을 때도 백엔드 시스템을 보호할 수 있습니다. Google Cloud는 기본 도구 및 인기 있는 오픈소스 기술의 통합을 통해 CI/CD를 지원하고 최신 DevOps 조직에 소프트웨어를 보다 빠르고 안전하게 개발하는 데 필요한 도구를 제공합니다. 그뿐만 아니라 Google Cloud의 Cortex Framework는 SAP를 사용한 혁신 여정에 위험, 복잡성, 비용을 줄여주는 가속화 도구와 권장사항을 제공하고 Google Cloud 최고의 애널리틱스 기능을 원활하게 이용할 수 있는 환경을 구축해 비즈니스에 가치를 더합니다.

유연한 풀 스택 모니터링. 기업은 Google Cloud Monitoring을 통해 성능, 업타임, SAP 환경의 전반적인 상태를 자세히 파악할 수 있습니다. Google Cloud Monitoring은 Google Cloud, Amazon Web Services, 호스팅된 업타임 프로브, 애플리케이션 계측은 물론 Cassandra, Nginx, Apache Web Server, Elasticsearch 등의 애플리케이션 구성요소에서 측정항목, 이벤트, 메타데이터를 수집합니다. 또한 Cloud Monitoring이 SAP HANA용 커스텀 모니터링 에이전트 및 Cloud 운영의 운영 에이전트와 더불어 이 데이터를 사용하여 유연한 대시보드와 풍부한 시각화 도구를 지원하므로 SAP팀은 새로운 문제가 비즈니스에 영향을 미치기 전에 식별하고 수정할 수 있습니다.

HA 옵션 살펴보기

위에 기술된 내용은 Google Cloud가 SAP 인스턴스를 위해 HA를 지원하고 확장하는 여러 방식을 개괄적으로 살펴본 것에 불과합니다. 보다 자세한 내용은 Google Cloud 서비스를 사용해 SAP 환경을 위한 고가용성 아키텍처를 설정하는 방법을 기술적 측면에서 상세히 설명한 문서를 참고하세요.

게시 위치