다음을 통해 공유


Azure Linux VM의 Oracle Database에 대한 백업 전략

적용 대상: ✔️ Linux VM

데이터베이스 백업은 스토리지 구성 요소 오류 및 데이터 센터 오류로 인한 데이터 손실로부터 데이터베이스를 보호하는 데 도움이 됩니다. 또한 사용자 오류에서 복구하는 수단 및 개발 또는 테스트 목적으로 데이터베이스를 복제하는 방법으로 사용할 수도 있습니다.

Azure에서는 모든 스토리지가 고도로 중복됩니다. 하나 이상의 디스크가 손실되는 것은 데이터베이스 중단으로 이어지지 않습니다. 백업은 인간의 오류로부터 보호하거나, 복제 작업을 용이하게 하거나, 규제 준수를 위해 데이터를 보존하는 목적으로 가장 많이 사용됩니다.

또한 백업은 DataGuard와 같은 재해 복구 기술이 사용되지 않는 경우 지역 중단으로부터 보호하는 데 도움이 됩니다. 이 경우 백업은 지역 중복 복제를 통해 다른 Azure 지역에 저장되어야 하므로 주 데이터베이스 지역 외부에서 사용할 수 있습니다.

Azure Storage

Azure Storage 서비스는 최신 데이터 스토리지 시나리오를 위한 Microsoft의 클라우드 솔루션입니다. Azure Storage는 외부 스토리지를 Oracle Database 인스턴스의 백업 미디어로 적합한 Azure Linux VM(가상 머신)에 탑재하는 데 사용되는 서비스를 제공합니다. Oracle RMAN(Recovery Manager)과 같은 백업 도구는 백업 또는 복원 작업을 시작하고 백업을 Azure Storage로 또는 그 반대로 복사하는 데 필요합니다.

Azure Storage 서비스에서 다음과 같은 이점을 제공합니다.

  • 내구성 및 고가용성. 중복성은 일시적인 하드웨어 오류가 발생할 때 데이터를 안전하게 보호하는 데 도움이 됩니다. 모든 스토리지는 기본적으로 3중으로 미러링됩니다. 또한 로컬 재해 또는 자연 재해로부터 추가 보호를 위해 데이터 센터 또는 지리적 영역에서 데이터를 복제하도록 선택할 수도 있습니다. 이러한 방식으로 복제된 데이터는 예기치 않은 중단이 발생할 경우 고가용성 상태로 유지됩니다.

  • 보안: Azure Storage는 스토리지 계정에 기록된 모든 데이터를 암호화합니다. Azure Storage는 데이터에 액세스할 수 있는 사용자를 세밀하게 제어할 수 있습니다.

  • 확장성: Azure Storage는 확장성이 매우 뛰어나기 때문에 최신 애플리케이션의 데이터 스토리지 및 성능 요구 사항을 충족합니다.

  • 관리형 서비스: 하드웨어 유지 관리, 업데이트 및 중요한 문제를 Azure가 처리합니다.

  • 접근성: 전 세계 어디에서나 HTTP 또는 HTTPS를 통해 Azure Storage의 데이터에 액세스할 수 있습니다. Microsoft는 .NET, Java, Node.js, Python, PHP, Ruby 및 Go를 비롯한 다양한 언어로 Azure Storage용 클라이언트 라이브러리를 제공합니다. 또한 Microsoft는 완성도 높은 REST API를 제공합니다.

    Azure Storage는 Azure PowerShell 또는 Azure CLI에서 스크립트를 지원합니다. Azure Portal 및 Azure Storage Explorer는 데이터 작업을 위한 시각적 솔루션을 제공합니다.

Azure Storage 플랫폼에는 Oracle Database용 백업 미디어로 사용하기에 적합한 다음과 같은 데이터 서비스가 포함되어 있습니다.

  • Azure Blob Storage: 텍스트 및 이진 데이터를 저장하는 개체 저장소입니다. Azure Data Lake Storage Gen2를 통한 빅 데이터 분석도 지원합니다.

  • Azure NetApp Files: 스냅샷 만들기, 복제 및 데이터베이스 볼륨 복제를 위한 고급 데이터 관리 기능을 포함하는 네트워크 스토리지 솔루션을 완료합니다.

  • Azure Files: 클라우드 또는 온-프레미스 배포에 대한 관리되는 파일 공유입니다.

  • Azure Disk Storage: Azure VM용 블록 수준 스토리지 볼륨입니다.

지역 간 스토리지 탑재

모든 지역의 백업 스토리지에 액세스하는 기능은 BCDR(비즈니스 연속성 및 재해 복구)의 중요한 측면입니다. 백업의 데이터베이스를 여러 지리적 지역으로 복제하는 데에도 유용합니다. Azure 클라우드 스토리지는 5개 수준의 중복성을 제공합니다.

BLOB 및 파일 스토리지:

SMB(서버 메시지 블록) 프로토콜 또는 NFS(네트워크 파일 시스템) 4.1 프로토콜과 함께 Azure Files를 사용하여 백업 스토리지로 탑재하는 경우 Azure Files는 RA-GRS 또는 RA-GZRS를 지원하지 않습니다.

Azure Files 백업 스토리지는 LRS, GRS 및 GZRS 중복 옵션을 지원하여 100TiB까지 스케일 업할 수 있습니다.

NFS 3.0 프로토콜을 통해 탑재된 Azure Blob Storage는 현재 LRS 및 ZRS 중복성만 지원합니다. 모든 중복성 옵션으로 구성된 Azure Blob Storage는 Blobfuse를 통해 탑재할 수 있습니다.

Recovery Services 자격 증명 모음

Recovery Services 자격 증명 모음은 시간이 지나면서 만들어진 복구 지점을 저장하는 관리 엔터티입니다. Recovery Services 자격 증명 모음은 백업 관련 작업을 수행하는 인터페이스를 제공합니다. 이러한 작업에는 주문형 백업 수행, 복원 수행 및 백업 정책 만들기가 포함됩니다.

Azure Backup은 자격 증명 모음에 대한 스토리지를 자동으로 처리합니다. 스토리지를 만들 때 스토리지 복제 방법을 지정해야 합니다. 항목을 자격 증명 모음에서 보호하기 시작한 이후에는 복제를 변경할 수 없습니다. 지역 중복도의 경우 지역 중복 설정을 선택하십시오.

보조 Azure 쌍을 이루는 지역으로 복원하려는 경우 지역 간 복원 기능을 사용하도록 설정해야 합니다. 지역 간 복원을 사용하도록 설정하면 백업 스토리지가 GRS에서 RA-GRS로 이동됩니다.

Azure Blob Storage

Azure Blob Storage는 대량의 비정형 데이터를 저장하는 클라우드 기반 서비스이며 Oracle Database 백업에 적합합니다. Blobfuse(Linux FUSE) 또는 NFS v3.0 프로토콜을 사용하여 Azure Linux VM에 Azure Blob Storage를 탑재할 수 있습니다.

Blobfuse

Blobfuse는 Azure Blob Storage에서 지원되는 가상 파일 시스템을 제공하는 오픈 소스 프로젝트입니다. Blobfuse는 libfuse 오픈 소스 라이브러리를 사용하여 Linux FUSE 커널 모듈과 통신합니다. Blobfuse는 Azure Blob Storage REST API를 사용하여 파일 시스템 작업을 구현합니다.

Blobfuse는 현재 Ubuntu 및 RedHat 배포판에 사용할 수 있습니다. 또한 CSI 드라이버를 통해 Kubernetes에도 사용할 수 있습니다.

Blobfuse는 모든 Azure 지역에 존재하며 범용 v1/v2 및 Azure Data Lake Storage Gen2를 비롯한 모든 유형의 스토리지 계정에서 작동합니다. 그러나 수행되지 않고 대체 프로토콜을 수행합니다. 데이터베이스 백업 미디어로 사용하기에 적합하도록 SMB 또는 NFS 프로토콜을 사용하여 Azure Blob Storage를 탑재하는 것이 좋습니다.

NFS v3.0

Azure는 NFS v3.0 프로토콜을 지원합니다. NFS를 지원하므로 Windows 및 Linux 클라이언트에서 Azure Blob Storage 컨테이너를 Azure VM에 탑재할 수 있습니다.

네트워크 보안을 유지하려면 NFS 탑재에 사용하는 스토리지 계정이 가상 네트워크 안에 있어야 합니다. Microsoft Entra ACL(보안 및 ACL)은 NFS 3.0 프로토콜 지원을 사용하도록 설정된 계정에서 아직 지원되지 않습니다.

Azure 파일

Azure Files는 클라우드 기반의 완전 관리형 분산 파일 시스템입니다. 온-프레미스 또는 클라우드 기반 Windows, Linux 또는 macOS 클라이언트에 탑재할 수 있습니다.

Azure Files는 SMB 및 NFS 프로토콜을 통해 액세스할 수 있는 완전 관리형 플랫폼 간 파일 공유를 클라우드에 제공합니다. Azure Files는 현재 다중 프로토콜 액세스를 지원하지 않으므로, NFS 공유 또는 SMB 공유 중 하나만 사용하여 공유할 수 있습니다. Azure 파일 공유를 만들기 전에, 어느 프로토콜이 요구 사항에 가장 적합한지 결정하는 것이 좋습니다.

Recovery Services 자격 증명 모음에 Azure Backup을 사용하여 Azure 파일 공유를 보호할 수도 있습니다. 이 방법은 Oracle RMAN 백업에 또 다른 보호 계층을 제공합니다.

Azure Files와 NFS v4.1

Linux 배포판에서 NFS v4.1 프로토콜을 사용하여 Azure 파일 공유를 탑재할 수 있습니다. 지원되는 기능이 제한됩니다. 자세한 내용은 Azure Storage 기능 지원을 참조하세요.

Azure NFS 파일 공유는 프리미엄 파일 스토리지를 지원하는 모든 지역에서 지원됩니다.

최신 목록은 지역별로 사용 가능한 Azure 제품 페이지에서 Premium Files Storage 엔터티를 참조하세요.

Azure Files와 SMB 3.0

Linux 배포판에서 SMB 커널 클라이언트를 사용하여 Azure 파일 공유를 탑재할 수 있습니다. Linux 배포판에서 사용할 수 있는 CIFS(Common Internet File System) 프로토콜은 SMB 언어입니다. SMB를 사용하여 Linux VM에 Azure 파일 공유를 탑재하면 CIFS 형식 파일 시스템으로 탑재되고 CIFS 패키지를 설치해야 합니다.

SMB를 통해 Azure 파일 공유를 탑재하는 기능은 일반적으로 모든 Azure 지역에서 사용할 수 있습니다. NFS v3.0 및 v4.1 프로토콜과 동일한 성능 특성을 보이므로, 현재 Azure Linux VM에 백업 스토리지 미디어를 제공하는 방법으로 추천합니다.

지원되는 두 가지 SMB 버전은 SMB 2.1 및 SMB 3.0입니다. 전송 중 암호화를 지원하는 SMB 3.0을 사용하는 것이 좋습니다. 그러나 Linux 커널 버전은 SMB 2.1 및 3.0에 대한 지원이 다릅니다. 애플리케이션에서 SMB 3.0을 지원하려면 Linux에서 SMB Azure 파일 공유 탑재를 참조하세요.

Azure Files는 다중 사용자 파일 공유 서비스이므로 백업 스토리지 미디어로 사용하기에 더 적합하도록 만들려면 특정 특성을 튜닝해야 합니다. 캐싱을 끄고, 만들어진 파일의 사용자 및 그룹 ID를 설정하는 것이 좋습니다.

Azure NetApp Files

Azure NetApp Files 서비스는 Azure VM에서 Oracle Database를 사용하기 위한 완전한 스토리지 솔루션입니다. 요금제 파일 스토리지를 기반으로 하며, 모든 워크로드 유형을 지원하며, 기본적으로 고가용성입니다. Oracle Direct NFS 드라이버와 함께 Azure NetApp Files를 사용하면 Oracle Database에 고도로 최적화된 스토리지 계층을 제공합니다.

Azure NetApp Files는 기본 스토리지 시스템에서 쓰기 시 리디렉션 메커니즘을 사용하는 효율적인 스토리지 기반 스냅샷을 제공합니다. 스냅샷은 빠르게 만들고 복원할 수 있지만 방어의 최전선으로만 사용됩니다. 조직에 필요한 대부분의 복원 작업을 스냅샷으로 처리할 수 있으며, 이러한 작업은 인적 오류를 복구하는 작업인 경우가 많습니다.

그러나 스냅샷은 전체 백업이 아닙니다. 모든 백업 및 복원 요구 사항을 처리하려면 지역 가동 중단으로부터 보호할 수 있도록 지리적으로 멀리 떨어진 곳에 외부 스냅샷 복제본 및/또는 기타 백업 자격 증명 모음을 만들어야 합니다. Azure NetApp Files 스냅샷의 작동 방식에 대해 자세히 알아보세요.

데이터베이스 일치 스냅샷을 만들려면 데이터베이스와 스토리지 간에 백업 프로세스를 오케스트레이션해야 합니다. AzAcSnap(Azure 애플리케이션 일치 스냅샷 도구) 명령줄 도구를 사용하여 타사 데이터베이스의 데이터를 보호할 수 있습니다. 이 도구는 스토리지 스냅샷을 가져오기 전에 데이터베이스를 애플리케이션 일치 상태로 유지하는 데 필요한 모든 오케스트레이션을 처리합니다. 그 후 데이터베이스를 작동 상태로 되돌립니다. Oracle Database 인스턴스는 버전 5.1부터 AzAcSnap에서 지원됩니다.

Azure에서 Oracle Database용 Azure NetApp Files를 사용하는 방법에 대한 자세한 내용은 Azure NetApp Files를 사용하는 솔루션 아키텍처를 참조하세요.

Azure Backup 서비스

Azure Backup은 데이터를 백업하고 Microsoft Azure 클라우드에서 데이터를 복구할 수 있는 완전 관리형 PaaS(Platform as a Service) 솔루션입니다. Azure Backup은 온-프레미스 클라이언트, Azure VM 및 Azure 파일 공유를 백업하고 복원할 수 있습니다. Azure VM에서 SQL Server, Oracle, MySQL, PostgreSQL 및 SAP HANA 데이터베이스를 백업할 수도 있습니다.

Azure Backup은 실수로 데이터가 삭제되지 않도록 방지하기 위해 독립적이고 격리된 백업을 제공합니다. 백업은 복구 지점에 대한 기본 제공 관리를 사용하여 Recovery Services 자격 증명 모음에 저장됩니다.

Azure Backup은 유지 관리 또는 모니터링 오버헤드 없이 Azure 클라우드를 사용하여 고가용성을 제공합니다. Azure Backup은 전송하는 인바운드 또는 아웃바운드 데이터 양을 제한하지 않으며, 전송하는 데이터에 대한 요금을 부과하지 않습니다. 전송 중 데이터와 미사용 데이터가 안전하게 보호됩니다.

Azure Backup은 여러 가지 복제 유형을 제공하여 백업 데이터를 항상 사용 가능하게 유지합니다.

  • LRS는 데이터 센터의 스토리지 배율 단위로 데이터를 세 번 복제합니다(즉, 3개의 데이터 복사본 생성).
  • GRS는 기본값이며 권장 복제 옵션입니다. GRS는 데이터 원본의 기본 위치에서 수백 킬로미터 떨어진 보조 지역으로 데이터를 복제합니다.

GRS 중복으로 만든 자격 증명 모음에는 지역 간 복원 기능을 구성하는 옵션이 포함됩니다. 이 기능을 사용하여 보조 Azure 쌍을 이루는 지역에 데이터를 복원할 수 있습니다.

Azure Backup 서비스는 Oracle, MySQL, Mongo DB, SAP HANA, PostgreSQL 등의 다양한 애플리케이션에 대해 Windows 및 Linux VM을 백업하는 동안 애플리케이션 일치를 달성(애플리케이션 일치 스냅샷이라고 함)할 수 있는 프레임워크를 제공합니다. 이 프레임워크에는 디스크의 스냅샷을 만들기 전에 규범(애플리케이션 정지)을 호출하는 작업이 포함됩니다. 스냅샷이 완료된 후 포스트스크립트(애플리케이션을 고정 해제하는 명령)를 호출하여 애플리케이션을 일반 모드로 반환합니다.

GitHub에서 샘플 규범 및 포스트스크립트를 찾을 수 있지만, 이러한 스크립트를 만들고 유지 관리하는 작업은 사용자가 담당합니다. Oracle의 경우 온라인 백업을 허용하려면 데이터베이스가 보관 로그 모드여야 합니다. 규범 및 사후 스크립트에서 실행되는 적절한 데이터베이스 시작 및 종료 백업 명령을 만들고 유지 관리해야 합니다.

Azure Backup은 선택한 애플리케이션에 대해 패키지된 규범 및 사후 스크립트를 제공하는 향상된 사전 스크립트 및 사후 스크립트 프레임워크를 제공합니다. 애플리케이션 이름을 지정한 다음, Azure Backup은 관련 규범 및 포스트스크립트를 자동으로 호출합니다. Microsoft는 패키지된 규범 및 포스트스크립트를 관리하므로 이러한 스크립트의 지원, 소유권 및 유효성을 확신할 수 있습니다.

현재 향상된 프레임워크를 지원하는 애플리케이션은 Oracle 12.1 이상 및 MySQL입니다. 스냅샷은 증분 또는 쓰기 중 복사 스냅샷이 아니라 스토리지의 전체 복사본이므로 데이터베이스를 복원할 수 있는 효과적인 매체입니다.

VLDB 고려 사항

VLDB(초대형 데이터베이스)의 백업 전략은 그 크기 때문에 신중하게 고려해야 합니다. RMAN을 사용하여 Azure Blob Storage 또는 Azure Files에 백업하면 목표 시간 프레임 내에 VLDB를 백업하는 데 필요한 처리량이 제공되지 않을 수 있습니다.

RMAN 증분 백업을 사용하면 백업 크기를 줄일 수 있습니다. 이 방법을 사용하면 Azure Storage를 VLDB의 백업 미디어로 사용할 수 있습니다. 그러나 변경 내용이 많은 VLDB에는 효과적이지 않을 수 있습니다.

VLDB에는 Azure Backup 또는 Azure NetApp Files와 같은 스냅샷 기능을 제공하는 Azure 서비스를 사용하는 것이 좋습니다. 데이터베이스가 백업 모드에서 자동으로 배치되는 애플리케이션 일치 스냅샷은 데이터베이스 크기에 관계없이 만드는 데 몇 초밖에 걸리지 않습니다.

백업 전략을 조직이 Oracle Database에 사용하는 전체 스토리지 솔루션과 연계할 수도 있습니다. I/O 처리량이 매우 많은 데이터베이스 워크로드는 종종 Azure NetApp Files 또는 Silk과 같은 비 Microsoft Azure Marketplace 솔루션을 사용하여 데이터베이스 스토리지 처리량 및 IOPS 요구 사항을 뒷받침합니다. 그리고 이러한 솔루션은 데이터베이스를 빠르게 백업하고 복원할 수 있는 애플리케이션 일치 스냅샷을 제공합니다.

다음 단계