배포 개요

이 페이지는 ApigeeApigee Hybrid에 적용됩니다.

Apigee Edge 문서 보기

API 프록시를 변경하면 이를 새 버전으로 저장하고 클러스터에 배포할 수 있습니다.

배포 정보

다음 그림은 Apigee에 있는 API 프록시 버전의 배포 수명 주기를 보여줍니다.

관리 영역, 런타임 영역, Stackdriver를 보여주는 Apigee API 프록시 배포 수명 주기

API 프록시 버전 제한사항

API 프록시 버전에는 다음과 같은 제한사항이 적용됩니다.

  • API 프록시를 변경하면 새 버전으로 배포해야 합니다.
  • API 프록시를 배포한 후에는 버전이 읽기 전용입니다. API 프록시 버전을 변경할 수 없습니다(예: 단계적 변경). 버전을 변경하는 유일한 방법은 새 버전을 만들고 배포하는 것입니다.
  • MP는 프록시 번들 전체만 배포할 수 있습니다. 개별 프래그먼트 또는 정책을 변경해도 MP는 전체 프록시 번들을 배포합니다.
  • Apigee 사용량이 표준 및 확장 프록시를 구분하는 경우 API 프록시를 표준 프록시에서 확장 프록시로 변경하는 버전을 배포할 때 다음을 수행합니다.
    • 비용이 발생할 수 있습니다. 사용한 만큼만 지불 고객인 경우 사용한 만큼만 지불 사용 권한을 참조하세요. 정기 결제 고객인 경우 요금제 세부정보를 참조하세요.
    • 배포에는 추가 시간이 필요합니다. 배포 기간 동안 API 호출 흐름은 중단되지 않지만 프록시를 배포, 배포 취소, 삭제할 수 없습니다. 또한 배포 기간 중에는 현재 또는 새 버전을 삭제할 수 없습니다. API 프록시 변경 및 새 버전 생성이 허용됩니다.

제로 다운타임 배포

Apigee에 대한 모든 성공적인 API 프록시 배포는 다운타임 없는 배포입니다. API 프록시 배포는 다음 순서로 진행됩니다.

  1. API 프록시 /hello의 버전 1이 배포되어 트래픽을 처리합니다.
  2. /hello의 버전 2가 배포됩니다.
  3. 버전 2는 런타임 영역의 메시지 프로세서에 배포됩니다.
  4. 버전 1은 배포되지 않습니다.

이제 API 프록시 버전 배포가 다운타임 없이 완료됩니다.

배포 상태 보기

Apigee에 API 프록시를 배포해도 즉시 사용할 수 있는 것은 아닙니다. 런타임 영역의 모든 MP에서 API 프록시를 동기화하는 데에는 시간이 걸립니다. 하지만 Apigee에서는 API 프록시 버전 상태에 대한 정보를 주는 도구를 제공합니다.

Apigee UI

Apigee UI에는 API 프록시의 배포 상태를 제공하는 몇 가지 뷰가 있습니다.

Apigee UI 보기 단계 및 설명
프록시
  1. 개발 > API 프록시를 선택합니다.

    현재 배포된 상태인 one-fish API 프록시를 보여줍니다(녹색 점 아이콘).

Apigee UI는 다음과 같은 아이콘을 사용하여 각 API 프록시에 대한 상태를 빠르게 제공합니다.

회색 점 아이콘은 API 프록시가 선택한 환경에 배포되지 않았음을 나타냅니다. API 프록시가 선택한 환경에 배포되지 않았음을 나타냅니다.
녹색 점 아이콘은 선택한 환경에서 오류 또는 경고 없이 배포된 API 프록시를 나타냅니다. 선택한 환경에 해당 프록시에 대한 오류나 경고가 없음을 나타냅니다.
노란색 삼각형 아이콘은 기본 경로 충돌로 인해 일부 라우팅이 업데이트되지 않았음을 나타냅니다. 기본 경로 충돌로 인해 일부 라우팅이 업데이트되지 않았음을 나타냅니다.
빨간색 상자 아이콘은 배포 중에 오류가 발생했음을 나타냅니다. API 프록시를 배포하는 중에 오류가 발생했음을 나타냅니다.

상태 아이콘을 보려면 개발 탭을 클릭합니다.

또는 개발 > API 프록시를 선택하고 API 프록시를 클릭합니다.

Apigee API

환경의 API 프록시 버전 배포 상태를 보려면 다음 API 호출을 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/apis/$API/revisions/$REV/deployments" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

$TOKENOAuth 2.0 액세스 토큰 가져오기에 설명된 대로 OAuth 2.0 액세스 토큰으로 설정합니다. 이 예시에서 사용된 curl 옵션에 대한 자세한 내용은 curl 사용을 참조하세요. 사용된 환경 변수에 대한 설명은 Apigee API 요청에 대한 환경 변수 설정을 참조하세요.

다음은 응답의 예시입니다. 이 예시에서는 test 환경에 배포된 helloworld API 프록시 버전 1의 배포 상태를 보여줍니다.

{
  "environment": "test",
  "apiProxy": "helloworld",
  "revision": "1",
  "deployStartTime": "1559149080457",
  "pods": [
    {
      "podName": "apigee-runtime-myorg-test-f8bdf9d-2s72w",
      "deploymentStatus": "deployed",
      "statusCodeDetails": "Deployment Success",
      "podStatus": "active",
      "podStatusTime": "1595357668001"
    }
  ],
  "state": "READY"
}

자세한 내용은 API 프록시 버전 환경 배포 API를 참조하세요.

gcloud

환경의 API 프록시 버전 배포 상태를 보려면 다음 gcloud 명령어를 사용합니다.

gcloud alpha apigee deployments describe --api=$API --environment=$ENV

예시에서 사용된 환경 변수에 대한 자세한 내용은 Apigee에서 gcloud를 사용하여 시작하기를 참조하세요.

다음은 응답의 예시입니다. 이 예시에서는 test 환경에 배포된 helloworld API 프록시 버전 1의 배포 상태를 보여줍니다.

Using Apigee organization `my-org`
Using deployed revision `1`
apiProxy: helloworld
deployStartTime: '1598032332802'
environment: test
pods:
- deploymentStatus: deployed
  podName: apigee-runtime-myorg-test-f8bdf9d-2s72w
  podStatus: active
  podStatusTime: '1598302128087'
  statusCodeDetails: Deployment Success
revision: '1'
state: READY

자세한 내용은 배포 CLI 설명을 참조하세요.

다음 단계

 

배포 방법 알아보기:

API 프록시 배포

 

 

배포 취소 방법 알아보기:

API 프록시 배포 취소