AWS 람다 워크로드를 OCI Functions로 마이그레이션하기

AWS Lambda 기능은 대용량 애플리케이션 및 통합 워크플로에 자주 내장되어 있습니다.

성공적인 마이그레이션은 플랫폼 간에 코드를 이동하는 것 이상을 필요로 합니다. OCI Functions는 AWS Lambda 마이그레이션 이니셔티브의 기본 대상입니다. OCI 함수를 대상으로 선택하기 전에 각 함수의 호출 방법, 함수가 상호 작용하는 서비스, 이 함수가 의존하는 운영 동작, 보존해야 하는 동작을 식별합니다.

이 인벤토리에는 트리거 유형, 최대 기간, 메모리 사용, 페이로드 크기, 동시성, 재시도 및 실패 동작, 종속성, IAM 권한, 네트워크 경로, 로깅, 모니터링 및 복구 기대치 수집이 포함됩니다. 이러한 특성은 OCI Functions 또는 다른 OCI 서비스가 더 나은 대상인지 여부를 결정합니다.

평가 중에 OCI Functions에서 워크로드의 호출, 페이로드, 시간 초과, 메모리, 동시성, 네트워킹, 종속성 및 통합 요구 사항을 지원할 수 있는지 검증합니다.

OCI Functions가 문서화된 요구사항을 충족할 수 없는 경우 비함수 아키텍처를 제안하기 전에 마이그레이션을 일시 중지하고 예외 검토를 완료하십시오. 예외에는 기술 제약 조건, 개정된 총 비용 모델, 마이그레이션 작업, 운영 영향 및 개정된 접근 방식의 명시적 승인이 포함되어야 합니다.

수행할 작업

  • Lambda 구성, 트리거, 종속성, 권한, 트래픽, 장애 및 운영 신호에 대한 증거 기반 인벤토리를 생성합니다.
  • 소스 동작과 OCI Functions 제한, 호출 모드, 트리거 패턴, 보안, 종속성 패키징, 네트워킹 및 관찰 가능성을 비교합니다.
  • 제공자별 이벤트 구문 분석, ID, SDK 호출, 배포 패키징, 로깅, 암호, 재시도 및 운영 코드와 이식 가능한 비즈니스 로직을 분리합니다.
  • OCI Functions 컨테이너 이미지로 기능을 배포하고 컷오버 전에 출력, 오류, 부작용, 대기 시간, 용량, 재시도, 보안, 관찰 가능성 및 롤백 준비 상태를 검증합니다.

이 플레이북 사용 방법

이 가이드는 평가 및 구현 가이드입니다.

큰 람다 부동산의 경우 모든 기능을 수동으로 평가하는 것으로 시작하지 마십시오. 기본 런타임, 트리거, 종속성, 트래픽 프로파일 및 업무 중요도 레벨을 다루는 대표 샘플로 시작합니다.

샘플을 사용하여 다음을 수행할 수 있습니다.

  1. 대표적인 워크로드에 대한 OCI Functions 마이그레이션 접근 방식을 확인합니다.
  2. 필요한 어댑터 및 대상 코드 변경 사항을 식별합니다.
  3. 필요한 보안, 네트워킹, 배포 및 운영 변경 사항 식별
  4. 마이그레이션 작업, 위험 및 재사용 가능한 패턴을 예측할 수 있습니다.
  5. 작업 중인 마이그레이션 파일럿에 대한 대표 작업 로드를 선택합니다.

Lambda 코드를 자동으로 변환하거나 모든 필수 통합을 생성하지는 않습니다.

구조

이 재사용 가능 패턴은 소스 평가를 대상 구현과 분리합니다.

Lambda 함수, 트리거 및 해당 작동 동작을 먼저 인벤토리합니다. 그런 다음 제공자별 어댑터에서 이식 가능한 업무 논리를 분리합니다. 대상 구현은 OCI Functions 애플리케이션에서 실행되고, 컨테이너 레지스트리에 저장된 컨테이너 이미지에서 배포되고, 런타임 액세스를 위해 OCI IAM 및 리소스 주체를 사용하고, OCI Vault와 같은 승인된 암호 저장소에서 암호를 검색하고, 필요한 경우 OCI 로깅, 모니터링, 알람 및 APM을 통해 운영 신호를 내보냅니다.

AWS 람다 대 OCI 함수 관계 맵

OCI 함수를 중심으로 재생성할 작업 로드 봉투에 대한 그룹화된 뷰입니다.


다음은 migrate-lambda-functions-arch.png에 대한 설명입니다.
migrate-lambda-functions-arch.png 그림에 대한 설명

이전-람다-함수-arch-oracle.zip#GUID-B6E215FE-1619-4CDD-B055-0194D46ADBF8

아키텍처 원칙

  • 먼저 평가한 다음 마이그레이션합니다. 트리거, 페이로드, 재시도, 계층, 권한, 네트워킹 및 운영 동작은 다를 수 있습니다.
  • 트리거 마이그레이션을 동작 마이그레이션으로 처리합니다. 이벤트 구성, 인증, 재시도, 주문, 일괄 처리, 중복 전달, 필터링, 데드레터 또는 실패 대상, 독 메시지 처리를 비교합니다.
  • 소스 작업 로드를 측정합니다. 호출 속도, 최대 동시성, 기간 백분위수, 최대 기간, 메모리 사용, 콜드 스타트 감지 경로, 페이로드 크기, 오류 속도, 스로틀 속도, DLQ 또는 실패 횟수, 백로그 및 다운스트림 제한을 캡처합니다.
  • 업무 논리를 이식 가능한 상태로 유지합니다. 이벤트 구문 분석, ID, SDK 호출, 객체 또는 메시지 액세스, 로깅, 구성, 암호 및 재시도 동작을 위한 어댑터를 분리합니다.
  • 마이그레이션의 작업을 수행합니다. 컷오버 전에 로그, 측정항목, 알람, 대시보드, 추적, 런북, 롤백 트리거 및 실패 테스트가 존재해야 합니다.

핵심 구성요소

이 아키텍처에는 일반적으로 소스 람다 워크로드, 마이그레이션 레코드, OCI 호출 계층, OCI Functions 애플리케이션 및 이미지, 지원 보안, 네트워킹 및 운영 서비스가 포함됩니다. 소스를 직접 청사진이 아닌 증거로 취급하고, 필요한 동작 및 검증 결과에서 OCI 구성요소를 선택합니다.

AWS Lambda 및 OCI 동등 개념

평가 중 이 키를 사용합니다.

이 키는 일대일 동등성에 대한 약속이 아니라 번역 가이드로 사용됩니다. 각 행에 대해 소스 동작과 대상 OCI 동작을 비교하고 이전 레코드에 증거를 유지합니다.

AWS 람다 개념 OCI 개념 또는 패턴 비교 또는 검증 대상
함수 및 처리기 Fn FDK 처리기가 포함된 OCI 함수 런타임, 아키텍처, 처리기 시작점, 이벤트 구문 분석기, 응답 객체, 오류 동작, 로컬 테스트 경로 및 런타임 관련 라이브러리 지원
ZIP 패키지, 계층, 확장 컨테이너 이미지 또는 공유 기본 이미지 종속성 버전, 네이티브 라이브러리, 이미지 크기, 시작 동작, 확장 동작, 내장된 SDK 가정 및 기능 간에 종속성을 공유해야 하는지 여부.
실행 롤 및 리소스 정책 OCI Identity and Access Management(IAM) 정책, 동적 그룹 및 리소스 주체 런타임 작업, 컴파트먼트 및 리소스 범위, 계정 간 또는 구획 간 액세스, 암호 읽기, 객체 또는 대기열 액세스, 거부된 경로 테스트가 포함됩니다.
API 게이트웨이 및 람다 OCI API GatewayOCI Functions 인증, 경로 지정 및 메소드, 헤더, 질의 문자열, 본문 스키마, 상태 코드, 응답 헤더, 시간 초과, 페이로드 크기, 대기 시간 및 오류 본문.
S3 객체 이벤트 OCI 이벤트를 통한 OCI Object Storage 이벤트 이벤트 스키마, 객체 메타데이터, 네임스페이스, 버킷 및 접두어 필터, 생성/업데이트/삭제 동작, 재시도, 중복, 멱등성, 입/출력 루프 방지 등과 같은 주요 영역이 포함되어 있습니다.
SQS, 스트림, SNS, EventBridge, 로그 구독 OCI 대기열, OCI Streaming, OCI Notifications, OCI Events, OCI Connector Hub 또는 재설계된 흐름 배치 크기, 주문, 재시도, 부분 실패, 데드 레터 또는 실패 대상, 가시성 또는 재시도 창, 백 압력, 독 메시지, 팬아웃, 필터 및 중복 배달.
동기 또는 비동기 호출 동기화 또는 분리된 호출 호출자 응답 의미, 결과 처리, 호출 시간 초과, 실행 시간 초과, 분리된 완료 처리, 성공/실패 대상 및 재시도 경로입니다.
메모리, 시간 초과, 페이로드, 임시 가정 OCI Functions 메모리, 시간 초과, 요청, 응답, 이미지 및 런타임 설정 p95/p99 및 최대 기간, 시간 초과 수, 메모리 헤드룸, 요청/응답 페이로드 크기, 임시 스토리지 가정, 대용량 페이로드 오프로드 설계 및 종속성 로드 시간.
예약/프로비저닝된 동시성 및 이벤트 소스 크기 조정 OCI 서비스 제한, 애플리케이션 동시성, 프로비저닝된 동시성, 트리거 제어 및 다운스트림 보호 현재 및 최대 동시성, 콜드 스타트 민감도, 스로틀 또는 429, 대기열 수명 또는 백로그, 재시도 스톰, 다운스트림 용량 제한 및 소스 설정이 용량을 예약하는지 여부, 트래픽 상한값 또는 대기 시간 감소.
CloudWatch 로그, 측정지표, 알람, X-레이 필요한 경우 OCI 로깅, OCI 모니터링, 알람, 대시보드 및 Oracle Application Performance Monitoring(APM) 필수 로그 필드, 상관 ID, 호출 수, 기간, 오류 비율, 시간 초과 수, 알람 임계값, 추적, 대시보드, 실행서 및 인시던트 응답 소유권.
Secrets Manager, 매개변수 저장소, KMS, VPC 네트워킹 OCI Vault, 키, VCN, 서브넷, 게이트웨이, 프라이빗 엔드포인트, DNS 및 보안 규칙 암호 교체, 누수 검사, 경로 규칙, 송신, DNS, 허용 목록, 개인 액세스, 무단 경로 차단 및 다운스트림 연결 제한.