UI에서 정책 연결 및 구성

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

Apigee Edge 문서 보기

API 프록시에 정책 기반 기능을 추가하려면 두 단계를 거쳐야 합니다.

  1. 정책 유형의 인스턴스를 구성합니다.
  2. 흐름에 정책 인스턴스를 연결합니다.

아래 다이어그램은 정책과 흐름 사이의 관계를 보여줍니다. 표시된 것처럼 정책은 흐름에 처리 단계로 연결됩니다. API에 원하는 동작을 구성하려면 흐름에 대한 약간의 이해가 필요합니다. (이 항목은 이전의 흐름 구성에서 다뤄졌습니다.)

정책과 흐름 사이의 관계

일반적으로 사용되는 한 가지 정책 유형은 SpikeArrest 정책입니다. SpikeArrest는 백엔드 서비스의 용량 부족을 발생하는 메시지 트래픽의 급증을 방지합니다.

흐름에 정책 연결

새 프록시 편집기

흐름에 정책을 연결하려면 다음 안내를 따르세요.

  1. API 프록시를 선택하고 개발 뷰로 이동합니다.
  2. 왼쪽 창에서 정책 행에 있는 + 버튼을 클릭합니다.
  3. 정책 만들기 대화상자에서 정책 유형 선택 필드를 클릭하고 트래픽 관리로 스크롤하고 SpikeArrest를 선택합니다.

  4. 원하는 경우 정책의 표시 이름이름을 변경할 수 있습니다.

    정책 만들기 대화상자

    완료되면 만들기를 클릭하여 정책을 만듭니다.

  5. 이제 Spike Arrest 정책을 만들었으므로 PreFlow의 단계에 이를 연결할 수 있습니다. 이렇게 하려면 왼쪽 창에서 프록시 엔드포인트 > 기본값 > PreFlow를 선택합니다.

    프록시 탐색기에서 PreFlow 선택을 위한 대상 엔드포인트

  6. 비주얼 편집기 하단의 응답 창에서 PreFlow 옆에 있는 + 버튼을 클릭합니다.

    응답 창에서 PreFlow 옆에 있는 + 버튼을 클릭합니다.

  7. 정책 단계 추가 대화상자에서 Spike Arrest 정책을 선택합니다.
  8. 추가를 클릭하여 정책을 연결합니다.

    이제 Spike Arrest 정책이 응답 창에 표시됩니다.

    응답 창에 표시된 Spike Arrest 정책

    프록시에 다음과 같은 XML 코드가 텍스트 편집기에 표시됩니다.

    <ProxyEndpoint name="default">
      <PreFlow name="PreFlow">
        <Request/>
        <Response>
          <Step><
            <Name>SA-</Name>
          </Step>
        </Response>
      </PreFlow>
      <Flows/>
      <PostFlow name="PostFlow">
        <Request/>
        <Response/>
      </PostFlow>
      <HTTPProxyConnection>
        <BasePath>/myproxy</BasePath>
      </HTTPProxyConnection>
      <RouteRule name="default">
        <TargetEndpoint>default</TargetEndpoint>
      </RouteRule>
    </ProxyEndpoint>
      

흐름에서 정책 분리

흐름에서 정책을 분리하려면 흐름 옆에 있는 점 3개로 된 메뉴를 클릭하고 정책 단계 삭제를 선택합니다.

기본 프록시 편집기

흐름에 정책을 연결하려면 다음 안내를 따르세요.

  1. API 프록시를 선택하고 개발 뷰로 이동합니다.
  2. API 프록시 편집기의 탐색기 창에서 정책을 연결할 흐름을 선택합니다.
    예를 들어 다음 그림에서 기본 API 프록시 엔드포인트에 대해 PreFlow 흐름을 선택합니다.
    정책을 연결할 흐름을 선택합니다.
  3. 디자인 보기에서 요청 또는 응답 흐름과 연결된 +단계를 클릭하여 정책을 연결합니다. 예를 들면 다음과 같습니다.
    +단계를 클릭합니다.
    단계 추가 대화상자가 열리고 분류된 정책 목록이 표시됩니다.
    카테고리별 정책 목록
  4. 스크롤해서 선택한 흐름에 연결하려는 정책 유형을 선택합니다.
  5. 다음 필드를 수정합니다.
    • 표시 이름: 정책의 고유한 표시 이름입니다. 이 UI는 기본 이름을 생성하지만 정책을 설명하는 이름을 만드는 것이 좋습니다. 그러면 조직 내 다른 개발자가 해당 정책의 용도를 쉽게 이해하는 데 도움이 됩니다.

    • 이름: 정책의 고유 이름입니다. 정책 이름은 표시 이름과 일치하지만 다음과 같은 예외가 있습니다.

      • 공백이 대시로 바뀝니다.

      • 연속 대시는 단일 대시로 바뀝니다.

      • 위에서 언급한 대로 대시, 밑줄, 공백(위에서 언급한 대로 대체됨)을 제외하고, 영숫자 이외의 문자(예: 파운드 기호, 퍼센트 기호, 앰퍼샌드 등)는 삭제됩니다.

  6. 추가를 클릭합니다.

    정책이 선택한 흐름에 연결됩니다.

정책이 연결되면 흐름(이 예시에서는 기본 프록시 엔드포인트의 PreFlow)의 디자이너 뷰와 탐색창의 정책 목록에 정책이 표시됩니다. 새로 연결된 정책의 XML을 표시하는 코드 뷰가 디자이너 뷰 아래에 표시됩니다. Apigee는 적절한 기본값 집합을 포함하는 정책의 인스턴스를 생성합니다.

디자이너 및 코드 뷰에 표시된 PreFlow 정책

흐름에 연결하지 않고 정책 추가

결함 처리에 유용하도록 흐름에 연결하지 않고 정책을 추가하려면 탐색기 뷰의 정책 바에서 +를 클릭합니다. 정책 추가 대화상자가 열리면 정책을 추가하세요(이전 섹션의 4~6단계 참조).

+를 클릭하여 정책 추가

흐름에 연결되지 않은 정책은 앞의 그림에서 본 API 키 메시지 정책에 인접하여 표시된 정책 목록에서 분리된 아이콘으로 표시됩니다.

정책을 만든 후 정책 목록에서 디자이너 뷰의 원하는 흐름으로 드래그 앤 드롭하여 정책을 흐름에 연결할 수 있습니다.

흐름에서 정책 분리

흐름에서 정책을 분리하려면 흐름을 선택합니다. 흐름의 디자이너 보기에서 정책 아이콘 위로 마우스를 가져갑니다. 아이콘에 표시되는 원에서 X를 클릭합니다.

정책 인스턴스 삭제

정책 인스턴스를 삭제하려면 탐색기 보기에서 정책 항목 위로 마우스를 가져갑니다. 항목 오른쪽에 표시되는 원에서 X를 클릭합니다.

UI에서 정책 구성

UI는 정책 인스턴스를 생성할 때 일반적인 설정에 적절한 기본값을 적용합니다. 요구사항에 맞게 이러한 설정을 수정해야 할 수 있습니다.

예를 들면 다음과 같습니다.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SpikeArrest async="false" continueOnError="false" enabled="true" name="spikearrest-1">
  <DisplayName>SpikeArrest-1</DisplayName>
  <FaultRules/>
  <Properties/>
  <Identifier ref="request.header.some-header-name"/>
  <MessageWeight ref="request.header.weight"/>
  <Rate>30ps</Rate>
</SpikeArrest>

코드 보기에서 XML 구성을 직접 수정하여 정책을 구성할 수 있습니다. 예를 들어 Spike Arrest 정책의 최대 메시지 비율은 처음에 초당 30개 메시지로 설정됩니다. 정책의 XML에서 <Rate> 요소 값을 변경하여 최대 비율을 변경할 수 있습니다. 정책 구성에 대한 자세한 내용은 정책 참조를 참조하세요.

정책을 잘라내어 코드 뷰에 붙여넣을 수도 있습니다. 이렇게 하면 GitHub에 제공되는 샘플의 정책을 재사용할 수 있습니다.

코드 뷰에서 정책 정의를 변경하면 변경사항이 속성 검사기에 반영됩니다. 반대의 경우도 마찬가지입니다. 속성 검사기에서 변경하면 XML 코드가 코드 뷰의 XML에 표시됩니다.

이 주제에서 사용된 할당량 정책에 대한 문서는 할당량 정책을 참조하세요.