Oracle Cloud Infrastructure에서 온-프레미스 로그 저장 및 분석

Oracle Cloud Infrastructure Data Flow는 대량의 로그 파일을 처리하는 데 이상적인 완전 관리형 Apache Spark(tm) 서비스입니다.

항상 로그 파일이 생성됩니다. 하드웨어, 운영 체제, 네트워크 장치, 웹 서비스 및 응용 프로그램의 모든 항목은 지속적으로 로그를 생성합니다. 이 로그 데이터를 분석하면 문제 해결 및 진단, 예측 복구, 침입 탐지, 웹 액세스 패턴 등에 도움이 됩니다.

데이터 플로우를 통해 Oracle Cloud Infrastructure Object Storage에서 로그 데이터를 중앙 집중식으로 저장할 수 있습니다. Apache Spark 애플리케이션을 한 번 생성한 다음 오브젝트 스토리지에 도착하는 새 로그 파일에서 실행하여 데이터를 분석할 수 있습니다. 그런 다음 쿼리 및 보고를 위해 이 분석의 출력을 Autonomous Data Warehouse에 로드할 수 있습니다. 이 모든 작업은 클러스터 또는 소프트웨어 설치 프로비전과 같은 오버헤드 없이 수행됩니다.

구조

이 구조는 오브젝트 스토리지에 접속하는 데이터 플로우를 보여주고, 로그 파일을 분석하고, 보고를 위해 결과를 Autonomous Data Warehouse에 저장합니다.

다음 다이어그램은 이 참조 아키텍처를 보여 줍니다.

아래 링크를 누르면 Architecture-analyze-logs.png에 대한 설명을 볼 수 있습니다.
그림 Architecture-analyze-logs.png에 대한 설명

아키텍처에는 다음과 같은 구성 요소가 있습니다:

  • 지역

    Oracle Cloud Infrastructure 지역은 가용성 도메인이라는 하나 이상의 데이터 센터를 포함하는 지역화된 지역입니다. 지역은 다른 지역과 독립적이며 방대한 거리는 국가 또는 대륙에서 분리할 수 있습니다.

  • 가용성 도메인

    가용성 도메인은 영역 내의 독립적인 독립형 데이터 센터입니다. 각 가용성 도메인의 물리적 리소스는 결함 허용 한도를 제공하는 다른 가용성 도메인의 리소스와 격리됩니다. 가용성 도메인은 전원, 냉각 또는 내부 가용성 도메인 네트워크와 같은 인프라를 공유하지 않습니다. 따라서 한 가용성 도메인의 실패는 영역의 다른 가용성 도메인에 영향을 주지 않을 수 있습니다.

  • 결함 도메인

    결함 도메인은 가용성 도메인 내의 하드웨어와 기반구조를 그룹화한 것입니다. 각 가용성 도메인에는 독립적인 전원 및 하드웨어를 사용하는 세 개의 결함 도메인이 있습니다. 여러 결함 도메인에 리소스를 배포할 때 응용 프로그램은 결함 도메인 내에서 물리적 서버 오류, 시스템 유지 관리 및 전원 오류를 허용할 수 있습니다.

  • VCN(가상 클라우드 네트워크) 및 서브넷

    VCN는 Oracle Cloud Infrastructure 지역에서 설정하는 사용자정의 가능한 소프트웨어 정의 네트워크입니다. VCN은 기존의 데이터 센터 네트워크와 마찬가지로 네트워크 환경을 완벽하게 제어할 수 있습니다. VCN 에는 VCN를 생성한 후 변경할 수 있는 겹치지 않는 CIDR 블록이 여러 개 있을 수 있습니다. 영역 또는 가용성 도메인으로 범위를 지정할 수 있는 서브넷으로 VCN를 세그먼트화할 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속적인 주소 범위로 구성됩니다. 서브넷을 생성한 후 서브넷 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.

  • 객체 스토리지

    오브젝트 스토리지를 사용하면 데이터베이스 백업, 분석 데이터, 이미지 및 비디오와 같은 풍부한 컨텐츠 등 모든 컨텐츠 유형의 대량의 정형 및 비정형 데이터에 빠르게 액세스할 수 있습니다. 신속하고 즉시 자주 액세스해야 하는 "핫" 스토리지에 표준 스토리지를 사용합니다. 오랫동안 보존하고 거의 또는 거의 액세스하지 않는 "콜드" 스토리지에 아카이브 스토리지를 사용합니다.

  • Autonomous Data Warehouse

    Oracle Autonomous Data Warehouse는 데이터 웨어하우징 작업 로드에 최적화된 자율 구동, 자율 보안, 자율 복구 데이터베이스 서비스입니다. 하드웨어를 구성 또는 관리하거나 소프트웨어를 설치할 필요가 없습니다. Oracle Cloud Infrastructure는 데이터베이스 생성뿐만 아니라 데이터베이스 백업, 패치 적용, 업그레이드 및 튜닝도 처리합니다.

  • 데이터 흐름

    Oracle Cloud Infrastructure Data Flow는 Apache Spark(tm) 응용 프로그램을 실행하기 위한 전담 관리 서비스입니다. 개발자는 이를 통해 자신의 응용 프로그램에 집중하고 쉽게 런타임 환경을 실행할 수 있습니다. 애플리케이션 및 워크플로우와의 통합을 위한 API 지원과 간단하고 간편한 사용자 인터페이스를 제공합니다. 기본 인프라, 클러스터 프로비저닝 또는 소프트웨어 설치에는 언제든지 지출할 필요가 없습니다.

권장 사항

요구 사항은 여기에 설명된 아키텍처와 다를 수 있습니다. 다음 권장 사항을 시작점으로 사용하십시오.

  • VCN

    VCN를 생성할 때 VCN의 서브넷에 연결할 리소스 수에 따라 필요한 CIDR 블록 수 및 각 블록 크기를 결정합니다. 표준 전용 IP 주소 공간 내에 있는 CIDR 블록을 사용합니다.

    전용 접속을 설정하려는 다른 네트워크(Oracle Cloud Infrastructure, 온-프레미스 데이터 센터 또는 다른 클라우드 제공자) 와 겹치지 않는 CIDR 블록을 선택합니다.

    VCN를 생성한 후 CIDR 블록을 변경, 추가 및 제거할 수 있습니다.

    서브넷을 설계할 때 트래픽 흐름 및 보안 요구사항을 고려하십시오. 특정 계층 또는 역할 내의 모든 리소스를 동일한 서브넷에 연결합니다. 이 서브넷은 보안 경계 역할을 할 수 있습니다.

  • 오브젝트 스토리지

    모든 로그 파일을 Oracle Cloud Infrastructure Object Storage에 수집합니다. 비즈니스 요구사항에 따라 적절한 뱃치 크기를 결정하고 데이터 플로우 애플리케이션을 실행하여 파일을 처리합니다.

  • 데이터 흐름

    특별한 구성은 필요하지 않습니다. 그러나 응용 프로그램을 실행할 때마다 처리되는 로그 데이터의 양에 따라 Spark 드라이버 및 실행기에 대해 더 큰 VM 구성을 사용하는 것이 좋습니다.

  • Oracle Autonomous Data Warehouse

    데이터 웨어하우스에 액세스하는 데 필요한 전자 지갑이 보안 위치에 저장되고 인증된 사용자만 액세스할 수 있는지 확인하십시오. Autonomous Data Warehouse 배치의 한 가지 고려 사항은 VCN에서 전용 끝점으로 생성하는 것입니다.

  • 보안

    Oracle Cloud Infrastructure Identity and Access Management 솔루션을 사용하여 정책을 적용하고 사용자, 그룹 및 리소스에 대한 액세스를 제공할 수 있습니다. Spark 애플리케이션에서 로그 파일을 읽으려면 버킷에 액세스해야 합니다. Vault 서비스를 사용하여 Autonomous Data Warehouse에 액세스하는 데 필요한 비밀번호를 저장합니다.

고려 사항

  • 빈도

    응용 프로그램 실행 빈도는 수신 로그 파일의 볼륨 및 빈도에 따라 다릅니다. 이 수신 데이터 뱃치를 처리할 수 있도록 적절한 논리를 사용하여 Spark 애플리케이션을 작성해야 합니다. 일반 지침은 각 일괄 처리를 처리하는 데 걸린 시간을 처리된 출력을 소비하는 다운스트림 서비스에서 Autonomous Data Warehouse에 필요한 새로고침 빈도와 정렬해야 합니다.

  • 성능

    여러 요인이 성능에 영향을 주지만 수신 로그 파일의 데이터 분배 및 분할이 가장 중요합니다. 필요에 따라 OCPU 및 메모리 리소스와 병렬로 각 분할 영역에 대해 Spark 애플리케이션을 실행할 수 있습니다. Oracle Cloud Infrastructure Data Flow는 각 애플리케이션 실행에 필요한 리소스를 관리할 수 있는 완벽한 탄력성을 제공합니다.

  • 보안

    정책을 사용하여 Oracle Cloud Infrastructure 리소스에 액세스할 수 있는 사용자 및 정도를 제한합니다. IAM(Oracle Cloud Infrastructure Identity and Access Management) 를 사용하여 데이터 플로우데이터 플로우 내의 실행 관리 모두에 대해 특정 사용자와 사용자 그룹에 권한을 지정할 수 있습니다.

    암호화는 기본적으로 Oracle Cloud Infrastructure Object Storage에 대해 사용으로 설정되며 해제할 수 없습니다.

  • 비용

    Oracle Cloud Infrastructure Data Flow는 사용당 지불되므로 데이터 플로우 애플리케이션을 실행할 때만 지불하고 생성할 때는 지불하지 않습니다. 객체 저장소( "핫" 스토리지) 및 아카이브 저장소( "콜드" 스토리지) 와 같은 사용 가능한 여러 계층을 사용하여 로그를 저장하는 것이 좋습니다. 그런 다음 처리된 데이터를 Autonomous Data Warehouse에 저장할 수 있습니다.

배치

이 참조 아키텍처에 대한 Terraform 코드는 GitHub에서 사용할 수 있습니다.

  1. GitHub로 이동합니다.
  2. 저장소를 로컬 컴퓨터에 복제하거나 다운로드합니다.
  3. README 문서의 지침을 따릅니다.

변경 로그

이 로그에는 중요한 변경사항만 나열됩니다:

6월 2, 2021년 자습서에 대한 링크를 추가하고 [배치] 섹션을 추가했습니다.