MeshService 리소스

MeshService 리소스 (MeshService)

MeshService는 Kubernetes 클러스터의 리소스로, HTTPRoute·TCPRoute 같은 Kubernetes 구성 모델이 Consul에만 존재하는 서비스를 참조할 수 있게 해 줘요. 이 문서에서 MeshService의 구성 모델, 사양, 예제 구성을 설명할게요.

출처: 문서

본문

이 문서는 MeshService 리소스에 대한 전체 세부 정보를 제공합니다.

소개 (Introduction)

MeshService는 Kubernetes 클러스터의 리소스로, HTTPRoute·TCPRoute 같은 Kubernetes 구성 모델이 Consul에만 존재하는 서비스를 참조할 수 있게 합니다. MeshService는 Consul API 게이트웨이가 배포된 Kubernetes 클러스터 외부의 Consul 서비스 메시의 서비스를 나타냅니다. MeshService 리소스가 나타내는 서비스는 Kubernetes 클러스터와 같은 Consul 데이터센터에 있거나, 피어링된(peered) Consul 클러스터에서 가져온(imported) 서비스여야 합니다.

구성 모델 (Configuration Model)

다음 개요는 MeshService 객체의 구성을 형식화하는 방법을 보여줍니다. 구성에 대한 세부 정보를 보려면 속성 이름을 클릭하세요.

  • name: string | required
  • peer: string | optional

사양 (Specification)

이 문서는 구성 매개변수에 대한 세부 정보를 제공합니다.

name

트래픽을 보낼 Consul 서비스 메시의 서비스 이름을 지정합니다.

  • 타입: string
  • 필수: required

peer

서비스를 내보낸 피어링된 Consul 클러스터의 이름을 지정합니다. 지정하지 않으면 Consul은 로컬 데이터센터를 기본값으로 사용합니다.

참조된 서비스에 대해 ServiceResolver를 적용해야 합니다. ServiceResolver 구성 항목은 Consul이 업스트림 서비스 인스턴스로 경로를 해석할 수 있게 합니다.

  • 타입: string
  • 필수: optional

예제 구성 (Example Configuration)

다음 예제는 example-mesh-service라는 메시 서비스를 만듭니다. example-mesh-service를 백엔드로 사용하는 경로는 로컬 데이터센터의 echo라는 Consul 서비스로 트래픽을 라우팅합니다.

meshservice.yaml:

apiVersion: api-gateway.consul.hashicorp.com/v1alpha1
kind: MeshService
metadata:
  name: example-mesh-service
spec:
  name: echo

더 알아보기 (Learn more)