주:
- 이 자습서에서는 Oracle Cloud에 액세스해야 합니다. 무료 계정에 등록하려면 Oracle Cloud Infrastructure Free Tier 시작하기를 참조하십시오.
- Oracle Cloud Infrastructure 자격 증명, 테넌시 및 구획에 예제 값을 사용합니다. 실습을 완료했으면 이러한 값을 자신의 클라우드 환경과 관련된 값으로 대체하십시오.
Oracle Analytics Cloud로 Oracle Cloud Guard 이벤트 캡처
소개
이 사용지침서에서는 Oracle Cloud Guard 이벤트를 Oracle Autonomous JSON Database(AJD)로 전달하고 Oracle Analytics Cloud에서 캡처하는 과정을 안내합니다. Oracle Analytics Cloud에서 Cloud Guard 이벤트를 분석하고 표시하는 후속 사용지침서가 제공됩니다.
-
Oracle Cloud Guard: Oracle Cloud Guard는 고객이 리전 전반의 리소스를 모니터링 및 감지할 수 있도록 지원하는 네이티브 Oracle Cloud Infrastructure(OCI) 서비스로, OCI 테넌시를 안전하게 유지하기 위해 클라우드 보안 상태를 유지할 수 있습니다. 자세한 내용은 Oracle Cloud Guard를 참조하십시오.
-
Oracle Analytics Cloud: Oracle Analytics Cloud는 완전한 플랫폼으로 설계된 완전 관리형 클라우드 기반 BI(Business Intelligence) 및 분석 플랫폼으로, 비즈니스 사용자와 분석가가 데이터 기반 의사결정을 내릴 수 있도록 인사이트와 트렌드를 파악할 수 있도록 지원합니다. 자세한 내용은 Oracle Analytics Cloud를 참조하십시오.
상위 아키텍처
목표
- Oracle Cloud Guard 이벤트를 Oracle Analytics Cloud로 캡처합니다.
필요 조건
-
OCI, OCI 이벤트 서비스 및 Oracle Cloud Guard에 대한 높은 수준의 이해.
-
Oracle Autonomous Database 및 ORDS(Oracle REST Data Services)에 대한 지식을 프로비저닝합니다.
-
OCI 함수 및 보안에 대한 기본 지식
작업 1: 클라우드 이벤트를 트리거하도록 Oracle Cloud Guard 구성
감지기 레시피에 응답하도록 Oracle Cloud Guard를 구성합니다. 응답기 규칙은 다음 이미지와 같이 Oracle Cloud Guard 이벤트에 대한 상태가 사용으로 설정되었는지 확인해야 합니다.
작업 2: OCI 이벤트 서비스 규칙을 생성하여 Oracle Cloud Guard 문제 감지 및 OCI 함수 호출
-
OCI 이벤트 서비스를 사용하면 테넌시 전체에서 리소스의 상태 변경에 따라 자동화를 생성할 수 있습니다. 이벤트를 사용하면 리소스가 상태를 변경할 때 개발 팀이 자동으로 응답할 수 있습니다.
이벤트를 가져오려면 관찰 가능성 및 관리로 이동하고 이벤트 서비스를 누릅니다. 다음 이미지와 같이 새 규칙을 생성하고 함수에 기록될 이벤트 유형을 구성합니다.
-
줄임표 아이콘(세로 점 3개)을 눌러 Oracle Cloud Guard 이벤트를 편집하고 다음 이미지와 같이 함수로 전송합니다.
아래와 같이 Cloud Guard 이벤트를 함수로 전달할 작업을 추가합니다.
이벤트 유형 구성
작업 3: 이벤트를 AJD로 전달하는 함수 생성
-
OCI 콘솔로 이동하여 개발자 서비스로 이동하고 함수를 누릅니다.
-
기존 애플리케이션을 선택하거나 애플리케이션 생성을 누릅니다. 애플리케이션 내에 새 OCI 함수를 생성합니다. 자세한 내용은 Cloud Shell의 기능 QuickStart을 참조하십시오.
주: 필요 조건을 성공적으로 완료했다고 가정합니다.
-
다음 명령을 실행하여 응용 프로그램 목록에서 응용 프로그램을 확인합니다.
fn ls apps
-
먼저 보일러 플레이트 Python 함수를 만드는 것이 좋습니다.
fn init – runtime oci-event-to-db
명령은func.py
,func.yaml
및requirements.txt
라는 세 개의 파일이 있는oci-event-to-db
라는 폴더를 생성합니다. -
AJD 테이블이 존재하고 REST가 사용으로 설정되어 있어야 합니다. 아래 그림과 같이.
-
다음 코드로
func.py
파일 내용을 갱신합니다.import io import json import re import requests eventTable="https://mrj6p3vkk4ramuu-cgdata.adb.us-ashburn-1.oraclecloudapps.com/ords/cguser/event/" from fdk import response def handler(ctx, data: io.BytesIO=None): try: bodytxt = data.getvalue() body = json.loads(bodytxt) # print("event type: " + body["eventType"]) # print("compartment name: " + body["data"]["compartmentName"]) headers = {'Content-type': 'application/json', 'accept': 'application/json'} req = requests.post(eventTable, json={ "event": body }, headers=headers) except (Exception, ValueError) as ex: print('ERROR:', ex, flush=True) raise return response.Response( ctx, response_data=[ json.loads(req.text)["id"] ], # response_data=json.loads(req.text), headers={"Content-Type": "application/json"} )
-
다음 코드로
func.yaml
파일 내용을 갱신합니다.schema_version: 20180708 name: oci-event-to-db version: 0.0.44 runtime: python build_image: fnproject/python:3.11-dev run_image: fnproject/python:3.11 entrypoint: /python/bin/fdk /function/func.py handler memory: 256
-
다음 코드로
requirements.txt
파일 내용을 갱신합니다.Requests oci fdk
-
다음 명령을 실행하여 함수를 배치합니다.
fn -v deploy -app oci-event-to-db
작업 4: ORDS를 사용하여 데이터베이스 단순화
-
Oracle Cloud Guard 이벤트가 AJD에 저장되면 이벤트 테이블을 확인하여 데이터베이스에서 Oracle Cloud Guard 작업을 확인합니다. 다음 SQL 문을 실행하십시오.
SELECT * FROM EVENTS
-
Oracle Cloud Guard 이벤트는 JSON(Java Script Object Notation) 형식으로 저장되므로 데이터를 분석하려면 Oracle Analytics Cloud의 관계형 형식으로 단순화하거나 변환해야 합니다.
데이터베이스를 단순화하려면 다음 단계를 따르십시오.
-
이벤트 테이블에 인덱스를 생성하고 다음 SQL 문을 실행하여 단순화합니다.
Create search index event_idx on event (event) for JSON parameters ('DATAGUIDE ON');
-
뷰를 생성합니다.
exec dbms_json.create_view_on_path('flat_event', 'event', 'event', '$’);
-
-
다음 SQL 문을 실행하여 위 단계에서 생성한 열을 확인합니다.
SELECT COLUMN_NAME,DATA_TYPE FROM all_tab_columns where table_name ='FLAT_EVENT' order BY column_id;
다음 그림과 같이 데이터 유형과 함께 열이 표시되어야 합니다.
작업 5: Oracle Analytics Cloud에 연결합니다
-
데이터베이스가 JSON에서 관계형 형식으로 변환된 후 Oracle Analytics Cloud에 접속합니다. OCI 콘솔로 이동하여 AJD 인스턴스로 이동한 후 데이터베이스 접속을 눌러 인증서를 제공하고 다음 이미지와 같이 전자 지갑을 다운로드합니다.
-
Oracle Analytics Cloud에 로그인하고 새 접속 생성을 누르고 Oracle Autonomous Data Warehouse를 누르고 1단계에서 다운로드한 전자 지갑을 선택합니다.
-
연결이 설정되면 OAC는 다음과 같이 연결 아래에 표시됩니다.
-
접속을 두 번 눌러 OAC에서 새 데이터 집합을 생성하고 스키마를 확장하고 테이블을 캔버스로 끌어옵니다.
확인
-
Authors - Murtuza Madarwala(클라우드 솔루션 엔지니어), Phil Dolbow(클라우드 솔루션 엔지니어)
-
제공자 - Kevin Colwell(클라우드 솔루션 엔지니어)
추가 학습 자원
docs.oracle.com/learn에서 다른 실습을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 Oracle Learning Explorer가 되려면 education.oracle.com/learning-explorer을 방문하십시오.
제품 설명서는 Oracle Help Center를 참조하십시오.
Capture Oracle Cloud Guard Events into Oracle Analytics Cloud
G27474-01
February 2025
Copyright ©2025, Oracle and/or its affiliates.