8장. 서비스 검색


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

8.1. 서비스 검색 정보

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

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

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

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

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

  • 3scale on premises의 경우 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 Object YAML 정의

  • OpenShift Service Object 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의 상대 기본 경로입니다. 경로가 root인 "/"에 있을 때 이 주석을 생략할 수 있습니다.

      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 콘솔에서 API 서비스의 YAML 파일을 볼 수 있습니다.

      1. Applications> Services 를 선택합니다.
      2. i-task-api 와 같은 서비스를 선택하여 세부 정보 페이지를 엽니다.
      3. Actions> Edit 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.