주:
- 이 자습서에서는 Oracle Cloud에 액세스해야 합니다. 무료 계정에 등록하려면 Oracle Cloud Infrastructure Free Tier 시작하기를 참조하십시오.
- Oracle Cloud Infrastructure 자격 증명, 테넌시 및 구획에 예제 값을 사용합니다. 실습을 완료했으면 이러한 값을 자신의 클라우드 환경과 관련된 값으로 대체하십시오.
Oracle API Gateway에서 Oracle Cloud Infrastructure API Gateway로 API 마이그레이션
소개
Oracle API Gateway는 과거에 웹, 모바일 또는 클라이언트-서버 애플리케이션과의 통합을 위해 API를 통해 레거시 시스템을 노출하려고 했던 회사에서 사용하는 광범위한 온프레미스 플랫폼입니다.
이 사용지침서에서는 Oracle API Gateway에 구현된 API를 클라우드 네이티브 표준 내에서 보다 현대적이고 확장 가능한 기술로 마이그레이션하고 하이브리드 환경(클라우드 또는 온프레미스)에서 사용할 수 있는 방법에 대해 설명합니다. 이 제안은 Oracle Cloud Infrastructure API Gateway(OCI API Gateway)로의 마이그레이션을 가속화하는 것입니다.
OCI API 게이트웨이 서비스를 사용하면 액세스 가능한 프라이빗 끝점이 있는 API를 네트워크에 게시할 수 있으며, 인터넷 트래픽을 허용하려는 경우 퍼블릭 IP 주소로 노출할 수 있습니다. 엔드포인트는 API 검증, 요청 및 응답 변환, CORS, 인증 및 권한 부여, 요청 제한을 지원합니다.
OCI API 게이트웨이 서비스를 사용하면 지역 서브넷에 API 게이트웨이를 하나 이상 생성하여 API 클라이언트 트래픽을 처리하고 이를 백엔드 서비스로 라우팅할 수 있습니다. 단일 API 게이트웨이를 사용하여 여러 백엔드 서비스(예: OCI 로드 밸런서, OCI 컴퓨트 인스턴스 및 OCI 함수)를 단일 통합 API 엔드포인트에 연결할 수 있습니다. OCI API Gateway 서비스에 액세스하여 OCI 콘솔 및 REST API를 사용하여 API 게이트웨이 및 API 배포를 정의할 수 있습니다.
OCI API Gateway 서비스는 Oracle Cloud Infrastructure Identity and Access Management(OCI IAM)와 통합되어 기본 OCI ID 기능을 통해 손쉽게 인증할 수 있습니다.
이 사용지침서에서는 OCI API Gateway로의 마이그레이션을 위한 아티팩트를 준비할 수 있으며, 다른 사용지침서인 OCI API Gateway에 OpenAPI 사양을 배포하기 위한 자동화 구현과 함께 사용해야 합니다.
참고:
해당 아티팩트는 다음을 수행합니다.
Oracle API Gateway XML 익스포트 파일에서 자동으로 Swagger 사양을 생성합니다.
OCI API Gateway가 생성된 Swagger 사양에서 자동으로 임포트하도록 허용합니다.
Oracle Integration에서 구현하고 OCI API Gateway와 통합해야 하는 프로세스 및 통합관리를 확인해 보세요.
이 아티팩트는 Oracle API Gateway에서 OCI API Gateway로의 마이그레이션을 현재 상태로 완료하지 않습니다. 단계 통합관리를 위해 몇 가지 통합을 구현해야 합니다. 때때로 API의 컨텍스트를 분석하면 애플리케이션을 최신 접근 방식과 더 많은 클라우드 네이티브 환경으로 전환할 수 있습니다.
Oracle API Gateway에서 OCI API Gateway로 마이그레이션하기 위한 전략
이 전략은 약간 다른 기술이므로 OCI API Gateway로 직접 마이그레이션하는 것을 허용하지 않습니다. Oracle API Gateway는 경로와 해당 정책 간의 매핑을 생성하여 권한 부여/인증, HEADER, 비즈니스 규칙 및 기타 복잡한 API로 통합관리를 호출하기 위한 복잡한 처리 규칙을 생성하는 메커니즘을 갖추고 있지만, OCI API 게이트웨이는 API 게이트웨이로만 작동하므로 일부 HEADER 처리가 가능하여 시간 초과 및 스로틀링 원칙을 수립할 수 있지만 큰 복잡성은 없습니다. 이 도구는 다른 기능을 보완하는 다양한 서비스의 일부이기 때문에 더 단순하고 기능을 정확하게 구분하는 것을 목표로합니다.
목표
-
Oracle API Gateway에서 OCI API Gateway로 API를 마이그레이션합니다.
-
OCI API Gateway에 대한 API 라우팅과 Oracle Integration에 대한 복잡성 및 통합관리 규칙을 구분합니다.
작업 1: Oracle API Gateway API 익스포트
Oracle API Gateway는 XML 파일의 모든 정의를 익스포트할 수 있습니다. 이 아티팩트를 사용하여 이전 프로세스를 가속화합니다. Oracle API Gateway에서 API 정의를 익스포트하는 방법에 대한 자세한 내용은 API 게이트웨이 구성 익스포트를 참조하십시오.
모든 API 정의를 포함할 XML 파일이 표시됩니다.
작업 2: Oracle API Gateway XML을 Swagger 사양으로 변환
Oracle API Gateway XML 파일을 사용하여 YAML Swagger 파일로 변환합니다.
-
변수 파일 이름을 익스포트된 Oracle API Gateway XML 파일로 변경하고 generate_swagger.py Python 파일을 실행합니다.
확장자가 YAML인 파일을 받게 됩니다. 각 파일은 Oracle API Gateway에 정의된 API에 대한 Swagger 정의입니다.
일부 행은 Swagger 정의에서 주석 처리됩니다. 해당 라인은 각 API의 Oracle API Gateway 통합관리를 나타냅니다. 그러면 Oracle Integration에서 조정을 계획하고 구성하는 데 도움이 됩니다.
-
Oracle API Gateway XML 정의 파일과 출력 매핑 정의에 대한 파일 이름을 포함하도록 map_details.py Python 파일을 변경합니다.
이 Python 코드를 실행하면 Swagger에 언급된 각 통합관리 단계에 대해 보다 자세한 정의를 얻을 수 있습니다.
작업 3: Swagger를 OCI API Gateway에 배포
Swagger 파일을 사용하면 자동화 프로세스를 통해 OCI API Gateway로 임포트할 수 있습니다. Python 코드로 생성된 모든 YAML 파일은 이 프로젝트를 사용하여 OCI API Gateway에 배포할 수 있습니다. 자세한 내용은 OCI API Gateway에 OpenAPI 사양을 배포하기 위한 자동화 구현을 참고하세요.
이 프로젝트는 여기에서 생성된 Swagger 사양을 임포트하고 사용할 API를 배치합니다. 이 설명서의 일부로 백엔드를 수동으로 조정해야 합니다.
작업 4: Oracle Integration에서 통합관리 구현
이 태스크에서는 사례별로 사례를 분석하고 통합관리, 비즈니스 규칙 및 검증을 구현해야 합니다.
우선 Oracle API Gateway에서 API의 각 단계를 분석해야 합니다. 일부 단계는 비즈니스 규칙 및 통합관리이며 Oracle Integration의 구현에 포함되어야 합니다. 이 구현은 OCI API Gateway에 노출될 수 있습니다. 따라서 Oracle API Gateway에서 실행되는 동일한 프로세스를 따라야 합니다.
그러나 Oracle Integration 내에서 구현할 필요가 없는 몇 가지 단계는 다음과 같습니다.
- 인증 및 권한 부여.
- HEADERs, QUERY 매개 변수 및 BODY의 치료.
- 라우팅 경로.
인증 및 권한 부여 프로세스는 OCI API Gateway 계층에서 구현할 수도 있고 구현할 수도 있습니다. 여러 가지 방법으로 JWT, OAuth2를 통해 이를 구현할 수 있습니다. 사용자정의를 허용하는 것 외에 권한 부여자 함수에 토큰을 전달하여 인증 및 권한 부여를 API 배치에 추가를 참조하십시오.
HEADER(QUERY 매개변수 및 BODY) 처리는 OCI API Gateway 자체에서 수행할 수 있습니다. REQUEST 및 RESPONSE에서 처리가 가능합니다.
로그는 OCI API 게이트웨이에서 처리할 수도 있지만 항상 전체 회로를 기록하는 것이 좋습니다. 즉, Oracle Integration에 구현이 있는 경우 로그도 구현해 보십시오.
관련 링크
확인
- 작성자 - Cristiano Hoshikawa(Oracle LAD A-Team 솔루션 엔지니어)
추가 학습 자원
docs.oracle.com/learn에서 다른 실습을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 Oracle Learning Explorer가 되려면 education.oracle.com/learning-explorer을 방문하십시오.
제품 설명서는 Oracle Help Center를 참조하십시오.
Migrate APIs from Oracle API Gateway to Oracle Cloud Infrastructure API Gateway
G27159-01
February 2025
Copyright ©2025, Oracle and/or its affiliates.