Google Cloud에서 SAP NetWeaver용 고가용성 계획 가이드

이 가이드에서는 Google Cloud에서 고가용성(HA) SAP NetWeaver 시스템을 배포하기 전에 알고 있어야 하는 옵션, 권장사항, 일반 개념을 간략하게 설명합니다.

여기서는 사용자가 SAP NetWeaver 고가용성 시스템을 구현하는 데 일반적으로 필요한 개념과 사례를 이미 이해하고 있다고 가정합니다. 따라서 주로 Google Cloud에서 이러한 시스템을 구현하는 데 필요한 정보에 중점을 둡니다.

SAP NetWeaver HA 시스템을 구현하는 데 필요한 일반적인 개념과 실행에 대한 자세한 내용은 다음을 참조하세요.

이 계획 가이드에서는 SAP NetWeaver용 HA에만 중점을 두며 데이터베이스 시스템용 HA를 다루지 않습니다. SAP HANA용 HA에 대한 자세한 내용은 SAP HANA 고가용성 계획 가이드를 참조하세요.

배포 아키텍처

다음 다이어그램은 Pacemaker 클러스터 소프트웨어를 사용하는 기본 Linux HA 클러스터를 보여줍니다.

클러스터에는 기본 호스트와 보조 호스트 등 호스트 두 개가 있습니다. 각 호스트는 같은 리전의 서로 다른 영역에 있습니다.

기본 호스트에는 활성 Central Services 인스턴스와 비활성 Enqueue Replication Server(ERS) 인스턴스가 있습니다. 보조 호스트에는 활성 ERS 인스턴스와 비활성 Central Services 인스턴스가 있습니다. 각 Central Services 및 ERS 쌍에는 자체 가상 IP 주소(VIP)가 있습니다. 다이어그램에서 'Central Services'는 ABAP SAP Central Services를 나타내거나 자바 스택의 경우에는 SAP Central Services를 나타냅니다.

Google Cloud에서 호스트 두 개가 각각 다른 영역에 있는 SAP NetWeaver용 기본 HA 설정

Google Cloud 인프라의 고가용성

Google Cloud는 서로 독립적으로 설계된 영역이 포함된 전 세계 데이터 센터의 중복 인프라를 통해 높은 가용성을 제공하도록 설계되었습니다. 영역에는 일반적으로 다른 영역과 격리된 전원, 냉각 장치, 네트워킹, 제어 장치가 있습니다. 단일 장애 이벤트가 발생하면 대부분의 경우 단일 영역만 영향을 받습니다.

경우에 따라 하드웨어, 스토리지, 네트워킹 장애에 대한 기존의 온프레미스 보호 기능을 모두 구현하지 않고도 가용성 요구사항을 충족시킬 수 있으므로 시간과 비용을 절감할 수 있습니다.

Google Cloud에서 고가용성 전략을 설계 및 구현하기 전에 Google Cloud 서비스수준계약을 살펴보세요.

Google Cloud의 신뢰성, 개인정보 보호, 보안에 대한 일반적인 정보는 신뢰할 수 있는 인프라를 참조하세요.

Google Cloud의 SAP 시스템용 HA 클러스터링 옵션

온프레미스 설치에서 사용할 수 있는 유형과 동일한 유형의 타사 HA 클러스터 소프트웨어를 사용하여 Google Cloud에서 SAP NetWeaver용 고가용성(HA) 클러스터를 정의합니다. HA 클러스터 소프트웨어는 시스템 상태를 모니터링하고 문제가 발생하면 장애 조치를 관리합니다.

다음과 같은 다양한 HA 클러스터 소프트웨어 솔루션을 사용할 수 있습니다.

  • SAP 솔루션용 Red Hat Enterprise Linux(RHEL)
  • SAP 애플리케이션용 SUSE Linux Enterprise Server(SLES)
  • Windows Server 장애 조치 클러스터링

Linux HA 클러스터링 소프트웨어

최신 버전의 RHEL 및 SLES에는 Google Cloud용으로 특별히 사용 설정된 통합 HA 지원 기능이 포함되어 있습니다. Linux 버전에 Google Cloud 사용 설정 HA 지원이 포함되어 있는지 확인하려면 Google Cloud의 SAP NetWeaver용 운영체제 지원의 표에서 'GCP-HA'를 찾습니다.

Windows HA 클러스터링 소프트웨어

Windows Server에서 Windows Server 장애 조치 클러스터링(WSFC)을 사용하여 Windows Server 장애 조치 클러스터링 실행의 설명대로 HA 클러스터를 만듭니다.

Google Cloud에서는 Cloud Load Balancing이 들어오는 트래픽을 WSFC 클러스터의 활성 노드로 라우팅하는 것을 관리하므로 별칭 IP 또는 정적 경로 VIP 구현이 필요 없습니다.

Cloud Load Balancing은 상태 확인을 사용하여 활성 노드를 파악합니다.

Google Cloud 영역, 리전, SAP NetWeaver HA 배포

같은 리전의 Compute Engine 영역 두 개 이상에 HA 클러스터 노드를 배포합니다. 서로 다른 영역에 노드를 배포하면 노드가 서로 다른 물리적 머신에 있을 뿐만 아니라 매우 드물게 발생하는 영역 장애를 방지할 수 있습니다.

같은 리전에 영역을 유지하면 노드가 서로 지리적으로 충분히 가깝게 위치하므로 고가용성 시스템의 SAP 지연 시간 요구사항이 충족됩니다.

Compute Engine 가상 머신 및 SAP NetWeaver HA 배포

고가용성을 지원하기 위해 Compute Engine VM에는 라이브 마이그레이션과 자동 다시 시작이 지원됩니다.

Compute Engine 라이브 마이그레이션

Compute Engine은 기본 인프라 상태를 모니터링합니다. 인프라 유지보수 이벤트가 발생하면 Compute Engine은 자동으로 인스턴스를 이벤트로부터 마이그레이션하며 가능한 경우 마이그레이션이 진행되는 동안 인스턴스를 실행 상태로 유지합니다. 사용자가 개입할 필요가 없습니다.

주요 가동 중단 발생 시에는 인스턴스가 중단된 후 다시 사용 가능해질 때까지 약간의 지연이 있을 수 있습니다.

대부분의 경우 HA 클러스터에 영향을 주지 않고 라이브 마이그레이션이 수행됩니다. 그러나 특히 HA 클러스터 모니터가 낮은 장애 조치 임계값으로 구성된 경우에는 HA 클러스터를 설정하고 시스템을 실행한 후에는 활성 호스트의 라이브 마이그레이션을 시뮬레이션하여 HA 클러스터를 테스트해야 합니다. 라이브 마이그레이션 이벤트를 시뮬레이션하는 방법에 대한 자세한 내용은 가용성 정책 테스트를 참조하세요.

마이그레이션된 인스턴스는 인스턴스 ID, 비공개 IP 주소, 모든 인스턴스 메타데이터와 스토리지 등에서 원본 인스턴스와 동일합니다.

기본적으로 표준 인스턴스는 라이브 마이그레이션을 할 수 있도록 설정됩니다. 이 설정을 변경하지 않는 것이 좋습니다.

자세한 내용은 라이브 마이그레이션을 참조하세요.

Compute Engine 자동 다시 시작

유지보수 이벤트가 있을 때 인스턴스가 종료되도록 설정되거나 기본 하드웨어 문제 발생 시 인스턴스가 충돌하는 경우, Compute Engine이 인스턴스를 자동으로 다시 시작하도록 설정할 수 있습니다. 기본적으로 인스턴스는 자동으로 다시 시작되도록 설정되어 있습니다. 이 설정을 변경하지 않는 것이 좋습니다.

자동 다시 시작에 대한 자세한 내용은 자동 다시 시작을 참조하세요.

Google Cloud의 HA SAP 시스템용 스토리지 옵션

SAP NetWeaver 전역 파일 시스템은 HA 시스템의 모든 SAP NetWeaver 인스턴스에서 사용할 수 있어야 하는 단일 장애점입니다. Google Cloud에서 전역 파일 시스템의 가용성을 보장하려면 가용성이 높은 공유 스토리지 또는 복제된 영역 영구 디스크를 사용하면 됩니다.

고가용성 공유 스토리지 솔루션의 경우 NetApp Cloud Volumes와 같은 타사 파일 공유 솔루션을 사용할 수 있습니다. Google Cloud는 NFS 파일 서버 솔루션인 Filestore를 제공하지만 Filestore는 현재 여러 영역에서 가용성이 높은 파일 서버를 제공하지 않습니다.

Linux 시스템용 영역 영구 디스크 복제의 경우 Distributed Replicated Block Device(DRBD)를 사용하여 SAP 전역 파일 시스템을 포함하는 영구 디스크를 HA 클러스터의 노드 간에 복제할 수 있습니다.

Compute Engine 리전 영구 디스크는 영역 간에 동기식으로 복제된 블록 스토리지를 제공하지만 현재 SAP NetWeaver HA 시스템에서는 지원되지 않습니다.

Google Cloud의 스토리지 옵션에 대한 자세한 내용은 다음을 참조하세요.

HA SAP 시스템의 네트워킹 옵션

HA 클러스터용 네트워크를 설정할 때 네트워크 만들기의 단계 완료 이외에 다음과 같은 HA별 태스크를 완료해야 합니다.

  • 다음 섹션에서의 설명대로 Linux 시스템용 VIP 구현을 선택합니다. Windows 시스템에서는 Linux 시스템과 동일한 VIP 솔루션이 필요하지 않는 내부 부하 분산기를 사용합니다.
  • SAP Central Services 인스턴스와 Enqueue Replication Server 인스턴스 간의 통신 경로를 정의합니다.
  • 정의된 통신 경로를 지원하는 방화벽 규칙을 정의합니다.

Google Cloud에서 가상 IP 구현

고가용성 클러스터는 예기치 않은 장애가 발생하는 경우 또는 예정된 유지보수를 위해 유동 또는 가상 IP 주소(VIP)를 사용하여 클러스터 노드 간에 워크로드를 이동합니다. VIP의 IP 주소는 변경되지 않으므로 클라이언트 애플리케이션은 작업이 다른 노드에 의해 제공되고 있다는 것을 알지 못합니다.

VIP는 유동 IP 주소라고도 합니다.

Google Cloud에서 VIP는 온프레미스 설치 시와 약간 다른 방식으로 구현됩니다. 즉, 장애 조치 발생 시 Gratuitous ARP 요청을 사용하여 변경사항을 알릴 수 없습니다. 대신 다음 방법 중 하나를 사용하여 SAP HA 클러스터의 VIP 주소를 구현할 수 있습니다.

내부 TCP/UDP 부하 분산 VIP 구현

일반적으로 부하 분산기는 여러 활성 시스템에 워크로드를 분산하고 어느 한 인스턴스에서의 처리 속도 저하나 장애로부터 보호하기 위해 애플리케이션의 여러 인스턴스에 사용자 트래픽을 분산합니다.

또한 내부 TCP/UDP 부하 분산 서비스는 Compute Engine 상태 확인과 함께 사용하여 장애를 감지하고 장애 조치를 트리거하고 OS 기반 HA 클러스터의 새로운 기본 SAP 시스템으로 트래픽을 다시 라우팅할 수 있는 장애 조치 지원을 제공합니다.

내부 TCP/UDP 부하 분산 장애 조치 지원은 다음과 같은 다양한 이유로 권장되는 VIP 구현입니다.

  • Compute Engine의 부하 분산은 99.99% 가용성 SLA를 제공합니다.
  • 부하 분산은 예측 가능한 교차 영역 장애 조치 시간으로 영역 장애로부터 보호하는 다중 영역 고가용성 클러스터를 지원합니다.
  • 부하 분산을 사용하면 장애 조치를 감지하고 트리거하는 데 필요한 시간이 일반적으로 장애 발생 후 몇 초 이내로 줄어듭니다. 전체 장애 조치 시간은 호스트, 데이터베이스 시스템, 애플리케이션 시스템 등이 포함될 수 있는 HA 시스템에 있는 각 구성요소의 장애 조치 시간에 따라 달라집니다.
  • 부하 분산을 사용하면 클러스터 구성이 간소화되고 종속 항목이 줄어듭니다.
  • 경로를 사용하는 VIP 구현과 달리 부하 분산에서는 자체 VPC 네트워크의 IP 범위를 사용하여 필요에 따라 IP 범위를 예약하고 구성할 수 있습니다.
  • 예정된 유지보수 중단 시 부하 분산을 사용하여 트래픽을 보조 시스템으로 간단히 다시 라우팅할 수 있습니다.

VIP의 부하 분산기 구현에 대한 상태 확인을 만들 때 호스트 상태를 확인하기 위해 상태 확인이 검색하는 호스트 포트를 지정합니다. SAP HA 클러스터의 경우 다른 서비스와 충돌하지 않도록 비공개 범위인 49152~65535에서 대상 호스트 포트를 지정합니다. 호스트 VM에서 socat 유틸리티 또는 HAProxy와 같은 보조 도우미 서비스로 대상 포트를 구성합니다.

보조 대기 시스템이 온라인 상태로 유지되는 데이터베이스 클러스터의 경우, 부하 분산은 상태 확인 및 도우미 서비스를 통해 현재 클러스터의 기본 시스템 역할을 하는 온라인 시스템으로 트래픽을 전달할 수 있습니다.

도우미 서비스와 포트 리디렉션을 사용하면 SAP 시스템에서 계획된 소프트웨어 유지보수를 위해 장애 조치를 트리거할 수 있습니다.

클러스터의 각 노드에 있는 로컬 Linux OS 라우팅 테이블에서 VIP를 삭제하여 HA 클러스터 노드의 기본 라우팅 동작을 변경할 수 있습니다. 항목을 삭제하면 클러스터 노드에서 VIP로 전송된 메시지가 먼저 기본 게이트웨이로 전달된 후 VIP로 전달됩니다. 그런 다음 부하 분산기는 다른 프런트엔드 트래픽과 마찬가지로 메시지를 처리하여 현재 활성 기본 시스템으로 호스팅하는 노드로 전달합니다.

내부 TCP/UDP 부하 분산의 장애 조치 지원에 대한 자세한 내용은 내부 TCP/UDP 부하 분산의 장애 조치 구성을 참조하세요.

부하 분산기 VIP 구현을 포함한 HA 클러스터를 배포하려면 다음을 참조하세요.

정적 경로 VIP 구현

정적 경로 구현도 영역 장애에 대한 보호를 제공하지만 VM이 상주하는 기존 VPC 서브넷의 IP 범위 밖에서 VIP를 사용해야 합니다. 따라서 VIP가 확장 네트워크의 외부 IP 주소와 충돌하지 않도록 해야 합니다.

호스트 프로젝트로 네트워크 구성을 분리하기 위한 공유 VPC 구성과 함께 정적 경로 구현을 사용하면 복잡해질 수 있습니다.

VIP에 정적 경로 구현을 사용하는 경우 네트워크 관리자에게 문의하여 정적 경로 구현에 적합한 IP 주소를 결정하세요.

별칭 IP VIP 구현

다중 영역 HA 배포에는 별칭 IP VIP 구현이 권장되지 않습니다. 영역에 장애가 발생할 경우 다른 영역의 노드로의 별칭 IP 재할당이 지연될 수 있기 때문입니다. 대신 장애 조치를 지원하는 내부 TCP/UDP 부하 분산을 사용하여 VIP를 구현하세요.

SAP HA 클러스터의 모든 노드를 같은 영역에 배포하는 경우 별칭 IP를 사용하여 HA 클러스터의 VIP를 구현할 수 있습니다.

VIP에 별칭 IP 구현을 사용하는 기존 다중 영역 SAP HA 클러스터가 있는 경우 VIP 주소 변경 없이 내부 TCP/UDP 부하 분산 구현으로 마이그레이션할 수 있습니다. 별칭 IP와 내부 TCP/UDP 부하 분산 모두 VPC 네트워크의 IP 범위를 사용합니다.

다중 영역 HA 클러스터의 VIP 구현에는 별칭 IP 주소가 권장되지 않지만 SAP 배포에는 다른 사용 사례가 있습니다. 예를 들어 SAP Landscape Management에서 관리하는 것과 같은 유연한 SAP 배포를 위한 논리적 호스트 이름과 IP 할당을 제공하는 데 사용할 수 있습니다.

Google Cloud에서의 일반적인 VIP 권장사항

Google Cloud의 VIP에 대한 자세한 내용은 유동 IP 주소 권장사항을 참조하세요.