호스팅된 대상 개요

Apigee Edge 문서입니다.
Go to the Apigee X 문서로 이동합니다.
info

호스팅된 대상을 사용하면 Apigee에서 호스팅하는 기본 런타임 환경에서 Node.js 애플리케이션을 실행할 수 있습니다. 호스팅된 대상의 목표는 간단합니다. Edge API 프록시가 대상 서비스로 호출할 수 있는 기본적이고 안전하며 확장 가능하고 격리된 환경에서 애플리케이션을 배포할 수 있도록 하는 것입니다.

다음 그림과 같이 Edge API 프록시는 호스팅된 대상 환경에 배포된 Node.js 애플리케이션을 호출합니다. 호스팅된 대상 환경은 Apigee 조직:환경 내에서 범위가 지정됩니다.

Edge API 프록시가 올바르게 빌드되고 배포된 호스팅된 대상 애플리케이션과 통신하도록 하려면 프록시의 대상 엔드포인트에서 간단한 구성을 수행해야 합니다. 시작하려면 호스팅된 대상 튜토리얼로 이동하세요.

호스팅된 대상은 어떤 애플리케이션 런타임을 지원하나요?

현재 호스팅된 대상에 Node.js 앱만 배포할 수 있습니다.

호스팅된 대상 설치

호스팅된 대상은 모든 Edge 공개 클라우드 조직에서 사용할 수 있습니다. 호스팅된 대상을 사용하기 위해 아무것도 설치할 필요가 없습니다.

호스팅된 대상이 사용 설정되어 있는지 확인

조직에 호스팅된 대상이 사용 설정되어 있는지 확인하려면 조직 세부정보를 가져오고 features.isEdgeFunctionsEnabled속성이 true로 설정되어 있는지 확인합니다. 속성은 읽기 전용입니다.

예를 들면 다음과 같습니다.

https://api.enterprise.apigee.com/v1/organizations/myorg

  {
     "createdAt":1507572884047,
     "createdBy":"jdoe@apigee.com",
     "displayName":"myorg",
     "environments":[
        "prod",
        "dev",
        "test",
        "portal"
     ],
     "lastModifiedAt":1507578673194,
     "lastModifiedBy":"jdoe@apigee.com",
     "name":"jdoe",
     "properties":{
        "property":[
           {
              "name":"features.isSmbOrganization",
              "value":"false"
           },
           {
              "name":"self.service.virtual.host.enabled",
              "value":"true"
           },
           {
              "name":"features.isCpsEnabled",
              "value":"true"
           },
           {
              "name":"features.isEdgeFunctionsEnabled",
              "value":"true"
           }
        ]
     },
     "type":"paid"
  }
  

호스팅된 대상에 대해 알아야 할 사항

호스팅된 대상을 사용하면 Apigee 전용 런타임 기술에 의존하지 않는 기본 환경 에서 Node.js 애플리케이션을 실행할 수 있습니다. 배포하기 전에 앱을 로컬에서 디버그하고 테스트할 수 있으며 배포된 버전이 로컬에서와 똑같이 작동할 것이라고 확신할 수 있습니다. 배포 시 호스팅된 대상에서 애플리케이션을 실행할 애플리케이션 런타임 버전을 선택할 수 있습니다. 예를 들어 v8.10.0 환경에서 Node.js 앱을 실행하도록 구체적으로 선택할 수 있습니다.

한도

호스팅된 대상의 사용량 한도는 Apigee 제품 한도를 참조하세요.

따라야 할 기본 단계

Edge 프록시 개발에 익숙하다면 호스팅된 대상을 성공적으로 사용하기 위해 몇 가지 간단한 단계 만 배우면 됩니다. 기본적으로 호스팅된 대상의 Edge 프록시 를 다른 Apigee Edge 프록시와 마찬가지로 만들고 배포하고 관리합니다.

호스팅된 대상을 사용하려면 다음 작업을 실행해야 합니다. 튜토리얼 에서는 이러한 각 작업을 자세히 안내합니다.

  • 로컬에서 Node.js 애플리케이션을 개발하고 테스트합니다.
  • 애플리케이션 프로젝트의 루트 디렉터리에 매니페스트 파일 을 만듭니다. 매니페스트는 애플리케이션을 빌드하고 배포하는 데 필요한 정보를 지정하는 YAML 파일입니다.
  • 애플리케이션을 호스팅된 리소스 유형으로 Edge 프록시에 추가합니다.
  • 프록시의 대상 엔드포인트에서 빈 <HostedTarget/> 태그를 추가합니다. 이 태그 는 Edge에 Node.js 애플리케이션을 호스팅된 대상 환경에 배포하도록 지시합니다. 예를 들면 다음과 같습니다.
  • <?xml version="1.0" encoding="UTF-8"?>
    <TargetEndpoint name="default">
       <PreFlow name="PreFlow">
          <Request />
          <Response />
       </PreFlow>
       <PostFlow name="PostFlow">
          <Request />
          <Response />
       </PostFlow>
       <Flows />
       <HostedTarget />
    </TargetEndpoint>

호스팅된 대상 애플리케이션의 범위

호스팅된 대상 애플리케이션은 Edge 조직-환경으로 범위가 지정됩니다. 이 범위 지정은 모든 Edge 프록시와 동일합니다.

호스팅된 대상 애플리케이션이 프록시 데이터에 액세스할 수 있나요?

호스팅된 대상 앱은 현재 프록시 런타임 환경에 액세스할 수 없습니다. 즉, 호스팅된 대상 애플리케이션에서 흐름 변수, 캐시, 기타 항목에 직접 액세스할 수 없습니다.

삽입된 Node.js (Edge의 기존 Trireme 기반 Node.js 지원)를 사용하면 apigee-access를 사용하여 Edge의 흐름 변수 및 기타 항목에 액세스할 수 있습니다. 하지만 호스팅된 대상은 Node.js 배포를 위한 apigee-access 모듈을 지원하지 않습니다. apigee-access가 없는 문제를 해결할 수 있나요?도 참고하세요.

기존 애플리케이션 코드를 호스팅된 대상으로 마이그레이션

현재 기존 Trireme 기반 삽입된 Node.js 애플리케이션에서 호스팅된 대상으로 자동 마이그레이션 경로는 없습니다. 하지만 기존 애플리케이션 코드를 호스팅된 대상으로 수동으로 변환할 수 있습니다. 예를 들어, 기존 Node.js 프록시를 호스팅된 대상 프록시로 마이그레이션을 참조하세요.