8.7. 3scale ActiveDoc 사용자 정의 리소스 배포


Red Hat 3scale API Management ActiveDocs는 OpenAPI 사양 을 준수하는 RESTful 웹 서비스를 정의하는 API 정의 문서를 기반으로 합니다. ActiveDoc CR(사용자 정의 리소스)은 개발자 포털에서 ActiveDocs에 사용할 수 있는 OCI(OpenAPI Specification) 문서를 가져오는 한 가지 방법입니다. OAS는 API에 대해 하나의 특정 프로그래밍 언어를 사용하도록 연결되지 않는 표준입니다. 사람과 컴퓨터는 소스 코드 액세스, 문서 또는 네트워크 트래픽 검사 없이 API 제품의 기능을 더 쉽게 이해할 수 있습니다.

사전 요구 사항

  • 3scale 2.13 On-Premises 인스턴스에 대한 관리자 권한이 있는 사용자 계정입니다.
  • API를 정의하는 OAS 문서입니다.
  • ActiveDoc CR이 테넌트에 연결되는 방법에 대한 이해입니다.

8.7.1. 시크릿에서 OAS 문서를 가져오는 3scale ActiveDoc 사용자 정의 리소스 배포

3scale 백엔드제품 을 생성할 수 있도록 ActiveDoc CR(사용자 정의 리소스)을 배포합니다.

참고

Operator는 시크릿의 콘텐츠만 읽습니다. Operator는 시크릿의 필드 이름을 읽지 않습니다. 예를 들어 데이터는 key: value 쌍으로 구성되는데, 여기서 value 는 파일의 내용을 나타내고 는 파일 이름입니다. 이 ActiveDoc CRD 컨텍스트에서 Operator는 파일 이름을 무시합니다. Operator는 파일의 콘텐츠만 읽습니다.

사전 요구 사항

절차

  1. 시크릿을 생성합니다. 예를 들어 다음과 같습니다.

    $ oc create secret generic myoasdoc1 --from-file myoasdoc1.yaml
    
    secret/myoasdoc1 created
  2. ActiveDoc CR을 정의합니다. OAS 문서가 포함된 보안에 대한 참조를 지정해야 합니다. 예를 들어 myactivedoccr1.yaml 파일을 생성할 수 있습니다.

    apiVersion: capabilities.3scale.net/v1beta1
    kind: ActiveDoc
    metadata:
      name: myactivedoccr1
    spec:
      name: "Operated ActiveDoc From secret"
      activeDocOpenAPIRef:
        secretRef:
          name: myoasdoc1
  3. 방금 정의한 리소스를 생성합니다. 예를 들어 다음과 같습니다.

    $ oc create -f myactivedoccr1.yaml

    지정된 예제의 출력은 다음과 같습니다.

    activedoc.capabilities.3scale.net/myactivedoccr1 created

검증

  1. Red Hat OCP(OpenShift Container Platform) 관리자 계정에 로그인합니다.
  2. Operator > 설치된 Operator로 이동합니다.
  3. Red Hat Integration - 3scale 을 클릭합니다.
  4. Active Doc 탭을 클릭합니다.
  5. OAS 문서가 있는지 확인합니다. 위의 예에서는 myactivedoccr1 이라는 새 OAS 문서가 표시됩니다.

8.7.2. 3scale ActiveDoc 사용자 정의 리소스 정의의 기능

ActiveDoc CRD(사용자 정의 리소스 정의)는 개발자를 위한 OpenAPI 문서 형식의 제품 문서에 관련이 있습니다. ActiveDoc CRD 배포 기능에 대한 지식이 있으면 개발자 포털에 ActiveDocs를 생성할 수 있습니다.

  • ActiveDoc CR은 다음 중 하나에서 OpenAPI 문서를 읽고 사용할 수 있습니다.

    • Secret
    • http 또는 https 형식의 URL
  • 필요한 경우 productSystemName 필드를 사용하여 ActiveDoc CR을 3scale 제품과 연결할 수 있습니다. 값은 3scale 제품 CR의 system_name 이어야 합니다.
  • 게시된 필드를 사용하여 3scale에서 ActiveDoc 문서를 게시하거나 숨길 수 있습니다. 기본적으로 이 값은 숨겨 진 상태로 설정됩니다.
  • skipSwaggerValidations 필드를 사용하여 OpenAPI 3.0 유효성 검사를 건너뛸 수 있습니다. 기본적으로 ActiveDoc CR의 유효성이 검증됩니다.

8.7.3. URL에서 OAS 문서를 가져오는 3scale ActiveDoc 사용자 정의 리소스 배포

지정하는 URL에서 OAS(OpenAPI Specification) 문서를 가져오는 ActiveDoc CR(사용자 정의 리소스)을 배포할 수 있습니다. 그런 다음 이 OAS 문서를 개발자 포털에서 API의 ActiveDocs의 기반으로 사용할 수 있습니다.

절차

  1. OpenShift 계정에서 Operator > 설치된 Operator로 이동합니다.
  2. 3scale Operator를 클릭합니다.
  3. Active Doc 탭을 클릭합니다.
  4. ActiveDoc CR을 생성합니다. 예를 들어 다음과 같습니다.

    apiVersion: capabilities.3scale.net/v1beta1
    kind: ActiveDoc
    metadata:
      name: myactivedoccr1
    spec:
      openapiRef:
        url: "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
      providerAccountRef:
        name: mytenant
  5. 선택 사항: ActiveDoc CR에서 self-managed APIcast의 경우 productionPublicBaseURLstagingPublicBaseURL 필드를 배포 URL로 설정합니다. 예를 들어 다음과 같습니다.

    apiVersion: capabilities.3scale.net/v1beta1
    kind: ActiveDoc
    metadata:
      name: myactivedoccr1
    spec:
      openapiRef:
        url: "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml"
      productionPublicBaseURL: "https://production.my-gateway.example.com"
      stagingPublicBaseURL: "https://staging.my-gateway.example.com"
  6. 저장을 클릭합니다. 3scale Operator가 ActiveDoc CR을 생성하는 데 몇 초가 걸립니다.

검증

  1. Red Hat OCP(OpenShift Container Platform) 관리자 계정에 로그인합니다.
  2. Operator > 설치된 Operator로 이동합니다.
  3. Red Hat Integration 3scale 을 클릭합니다.
  4. Active Doc 탭을 클릭합니다.
  5. OAS 문서가 있는지 확인합니다. 위의 예에서는 myactivedoccr1 이라는 새 OAS 문서가 표시됩니다.

8.7.4. 추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.