Cloud Service Mesh GKE API 참조

이 문서는 Kubernetes Gateway API를 사용한 Cloud Service Mesh의 API 참조 문서입니다.

TDMesh

필드 설명
apiVersion 문자열
net.gke.io/v1alpha1
kind 문자열
TDMesh
metadata Kubernetes ObjectMeta
spec MeshSpec
status MeshStatus

MeshSpec

필드 설명
allowedRoutes gateway.networking.k8s.io/v1.AllowedRoutes
gatewayClassName 문자열
gke-td

MeshStatus

필드 설명
conditions 조건 필드는 메시의 현재 조건을 설명합니다.
알려진 조건 유형:
  • 예약됨
  • 준비됨
자세한 내용은 Kubernetes meta/v1.23Condition을 참조하세요.

GatewayClass

GatewayClass의 참고 문서를 확인하세요.

TDGRPCRoute

TDGRPCRouteTDMesh 또는 Gateway 리스너에서 API 객체(예: Service)로의 gRPC 요청 라우팅 동작을 지정합니다.

필드 설명
apiVersion 문자열
net.gke.io/v1alpha1
kind 문자열
TDGRPCRoute
metadata metav1.23ObjectMeta
spec GRPCRouteSpec
`GRPCRoute`의 원하는 상태를 정의합니다.
Status GRPCRouteStatus
HTTPRouteStatus와 동일합니다.

GRPCRouteSpec

TDGRPCRoute의 값은 다음 테이블의 값으로 구성되어 있습니다.

필드 설명
CommonRouteSpec CommonRouteSpec
Hostnames []호스트 이름
호스트 이름은 요청을 처리할 GRPCRoute를 선택하기 위해 gRPC Host 헤더와 일치해야 하는 호스트 이름 집합을 정의합니다.

Hostname은 RFC 3986에서 정의된 네트워크 호스트의 정규화된 도메인 이름입니다. RFC에 정의된 URI의 "host" 부분은 다음과 같은 편차가 있으니 유의하세요.
  • IP 주소는 허용되지 않습니다.
  • 포트가 허용되지 않으므로 `:` 구분 기호는 고려되지 않습니다.
수신되는 요청은 규칙 TDGRPCRoute 규칙 이전에 호스트 이름과 비교하여 일치를 수행합니다. 지정된 호스트 이름이 없으면 트래픽은 GRPCRouteRules을 기준으로 라우팅됩니다.

Hostname은 '정확'(네트워크 호스트의 끝점이 없는 도메인 이름(예: butterfly.example.com))하거나

또는 wildcard(단일 와일드 카드 라벨로 프리픽스가 지정된 도메인 이름(예: `*.example.com`))일 수 있습니다. 와일드 카드 문자(`*`)는 그 자체로 첫 번째 DNS 라벨로 표시되어야 하고 단일 라벨과만 일치합니다. 와일드 카드 라벨만 사용할 수는 없습니다(예: 호스트 == '*'). 다음 순서에 따라 요청을 '호스트' 필드와 일치합니다.
  • Host가 정확하면 gRPC 호스트 헤더가 Host와 같으면 요청이 이 규칙과 일치합니다.
  • Host가 와일드 카드인 경우 gRPC 호스트 헤더가 와일드 카드 규칙의 서픽스(첫 번째 라벨 삭제)와 같으면 요청이 이 규칙과 일치합니다.
Rules []GRPCRouteRule
gRPC 일치자, 필터, 작업 목록을 정의합니다.

GRPCRouteRule

규칙은 조건에 따라 gRPC 요청을 일치시키고, 선택적으로 API 객체로 요청을 전달하기 위한 시맨틱스를 정의합니다. 규칙은 다음으로 구성됩니다.

필드 설명
Matches GRPCRouteMatch
gRPC 요청의 일치를 수행하는 데 사용할 조건을 정의합니다. 각 일치 조건은 독립적입니다. 즉, 단일 일치 조건이 충족되면 이 규칙이 일치합니다.
BackendRefs []GRPCBackendRef

일치하는 요청을 전송할 벡엔드를 정의합니다. 지정되지 않거나 잘못된 경우(존재하지 않는 리소스 또는 엔드포인트가 없는 서비스 참조) 규칙이 전달을 수행하지 않습니다.

GRPCBackendRefHTTPBackendRef와 동일합니다.
GRPCRouteMatch

규칙은 조건에 따라 gRPC 요청을 일치시키고, 선택적으로 API 객체로 요청을 전달하기 위한 시맨틱스를 정의합니다. 규칙은 다음과 같이 정의됩니다.


필드

설명
메서드 GRPCMethodMatch

일치를 수행할 gRPC 메서드를 정의합니다.
헤더 []GRPCHeaderMatch
gRPC 요청 헤더 일치자를 정의합니다. 여러 일치 값이 AND 작업과 결합됩니다. 즉, 경로를 선택하려면 요청이 지정된 모든 헤더와 일치해야 합니다.
참고: GRPCHeaderMatch의 정의는 HTTPHeaderMatch와 동일합니다.
GRPCMethodMatch

GRPCMethodMatch는 다음과 같이 구성됩니다.

필드 설명
유형 MethodMatchType

이름에 대한 일치를 수행할 방법을 지정하는 유형을 정의합니다. 지정하지 않으면 기본값(EXACT)이 사용됩니다. EXACT 또는 RegularExpression을 선택할 수 있습니다.
서비스 string

일치를 수행할 서비스의 이름을 정의합니다. 지정하지 않으면 모든 서비스에 대해 일치를 수행합니다.
메서드 문자열

일치를 수행할 메서드를 정의합니다. 지정하지 않으면 모든 메서드에 대해 일치를 수행합니다.
GRPCHeaderMatch

GRPCHeaderMatch는 다음과 같이 구성됩니다.

필드 설명
유형 HeaderMatchType

헤더의 값에 대해 일치를 수행하는 방법을 정의합니다.
이름 String

이름은 일치를 수행할 gRPC 헤더의 이름입니다. 이름 일치에서는 대소문자를 구분하지 않아야 합니다. (https://tools.ietf.org/html/rfc7230#section-3.2 참조)
문자열

값은 일치시킬 HTTP 헤더의 값입니다.
GRPCBackendRef
필드 설명
BackendRef BackendRef

`BackendRef`는 일치하는 요청을 전달할 벡엔드의 참조입니다.

HTTPRoute

HTTPRoute에 대한 오픈소스 Gateway API 참조를 확인하세요.

TCPRoute

TCPRoute에 대한 오픈소스 Gateway API 참조를 확인하세요.