8장. 서비스 검색


3scale에서 제공하는 서비스 검색 기능을 사용하면 OpenShift에서 서비스를 가져올 수 있습니다.

8.1. 서비스 검색 정보

Service Discovery를 사용하면 동일한 OpenShift 클러스터에서 실행 중인 검색 가능한 API 서비스를 검색하고 관련 API 정의를 3scale로 자동으로 가져올 수 있습니다.

API 통합 및 Open API 사양을 언제든지 업데이트하여 나중에 클러스터와 동기화 할 수 있습니다.

Service Discovery는 다음과 같은 기능을 제공합니다.

  • 클러스터 API를 사용하여 검색에 적절하게 주석이 추가된 서비스를 쿼리합니다.
  • 클러스터 내부의 내부 엔드포인트를 사용하여 서비스에 액세스하도록 3scale을 구성합니다.
  • 서비스와 관련된 OpenAPI 사양인 3scale ActiveDocs를 가져옵니다.
  • OpenShift 및 RH SSO(Red Hat Single Sign-On) 권한 부여 흐름을 지원합니다.
  • Fuse 버전 7.2부터 Red Hat Fuse와 함께 작동합니다.

검색 가능한 서비스를 가져올 때 해당 네임스페이스를 속하는 프로젝트 내에 유지합니다. 가져온 서비스는 새로운 고객용 API, 제품 및 해당 내부 API, 백엔드가 됩니다.

  • 온프레미스 3scale의 경우 3scale API 공급자에 자체 네임스페이스 및 서비스가 있을 수 있습니다. 검색된 서비스는 기존 3scale 및 네이티브 서비스와 함께 존재할 수 있습니다.
  • Fuse 검색 가능한 서비스는 Fuse 프로덕션 네임스페이스에 배포됩니다.

8.1.1. 검색 가능한 서비스에 대한 기준

3scale이 OpenShift 클러스터에서 API를 찾으려면 API가 아래 각 요소에 대한 기준을 충족해야 합니다.

content-Type 헤더

API 사양의 Content-Type 헤더는 다음 값 중 하나여야 합니다.

  • application/swagger+json
  • application/vnd.oai.openapi+json
  • application/json

OpenShift Service 오브젝트 YAML 정의

  • OpenShift Service 오브젝트 YAML 정의에는 다음 메타데이터가 포함되어야 합니다.

    • discovery.3scale.net 레이블: (필수) "true"로 설정합니다. 3scale은 검색이 필요한 모든 서비스를 찾기 위해 선택기 정의를 실행할 때 이 레이블을 사용합니다.
    • 다음 주석:

      discovery.3scale.net/discovery-version: (선택 사항) 3scale 검색 프로세스의 버전입니다.

      discovery.3scale.net/scheme: (필수) 서비스가 호스팅되는 URL의 체계 부분입니다. 가능한 값은 "http" 또는 "https"입니다.

      discovery.3scale.net/port: (필수) 클러스터 내의 서비스의 포트 번호입니다.

      discovery.3scale.net/path: (선택 사항) 서비스가 호스팅되는 URL의 상대 기본 경로입니다. 루트에 경로가 "/"에 있을 때 이 주석을 생략할 수 있습니다.

      discovery.3scale.net/description-path: 서비스에 대한 OpenAPI 서비스 설명 문서의 경로입니다.

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

          metadata:
            annotations:
              discovery.3scale.net/scheme: "https"
              discovery.3scale.net/port: '8081'
              discovery.3scale.net/path: "/api"
              discovery.3scale.net/description-path: "/api/openapi/json"
           labels:
              discovery.3scale.net: "true"
           name: i-task-api
           namespace: fuse
    • 관리 권한이 있는 OpenShift 사용자인 경우 OpenShift Console에서 API 서비스의 YAML 파일을 볼 수 있습니다.

      1. 애플리케이션> 서비스 을 선택합니다.
      2. 서비스를 선택합니다(예: i-task-api )를 선택하여 세부 정보 페이지를 엽니다.
      3. 작업> YAML 편집 을 선택하여 YAML 파일을 엽니다.
      4. 보기를 완료하면 취소 를 선택합니다.

ovs-networkpolicy 플러그인이 있는 클러스터

  • OpenShift와 3scale 프로젝트 간 트래픽을 허용하려면 ovs-networkpolicy 플러그인이 있는 클러스터에 애플리케이션 프로젝트 내에서 NetworkPolicy 오브젝트가 필요합니다.
  • NetworkPolicy 오브젝트 구성에 대한 자세한 내용은 네트워크 정책정보를 참조하십시오.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.