리소스: TcpRoute
TcpRoute는 메시/게이트웨이 리소스에 의해 TCP 트래픽이 라우팅되는 방식을 정의하는 리소스입니다.
JSON 표현 |
---|
{
"name": string,
"selfLink": string,
"createTime": string,
"updateTime": string,
"description": string,
"rules": [
{
object ( |
필드 | |
---|---|
name |
필수 항목. TcpRoute 리소스의 이름입니다. |
selfLink |
출력 전용입니다. 이 리소스의 서버 정의 URL입니다. |
createTime |
출력 전용입니다. 리소스가 생성된 타임스탬프입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
updateTime |
출력 전용입니다. 리소스가 업데이트된 타임스탬프입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
description |
선택사항. 리소스에 대한 자유 텍스트 설명입니다. 최대 길이는 1,024자(영문 기준)입니다. |
rules[] |
필수 항목. 트래픽이 라우팅되고 처리되는 방식을 정의하는 규칙입니다. RouteRule을 하나 이상 제공해야 합니다. 규칙이 여러 개 있는 경우 일치하는 첫 번째 규칙에 따라 작업이 실행됩니다. |
meshes[] |
선택사항. 메시는 이 TcpRoute가 연결된 메시 목록을 메시에서 제공하는 요청을 라우팅하는 라우팅 규칙 중 하나로 정의합니다. 각 메시 참조는 연결된 메시는 SIDECAR 유형이어야 합니다. |
gateways[] |
선택사항. 게이트웨이는 이 TcpRoute가 연결된 게이트웨이 목록을 게이트웨이에서 제공하는 요청을 라우팅하는 라우팅 규칙 중 하나로 정의합니다. 각 게이트웨이 참조는 |
labels |
선택사항. TcpRoute 리소스와 연결된 라벨 태그 집합입니다.
|
RouteRule
트래픽을 비교하고 트래픽이 일치할 때 트래픽을 라우팅하는 방법을 지정합니다.
JSON 표현 |
---|
{ "matches": [ { object ( |
필드 | |
---|---|
matches[] |
선택사항. RouteMatch는 요청을 특정 작업과 일치시키는 데 사용되는 조건자를 정의합니다. 여러 검색 유형은 평가를 위해 'OR'로 연결됩니다. routeMatch 필드가 지정되지 않으면 이 규칙은 무조건 트래픽과 일치합니다. |
action |
필수 항목. 일치하는 트래픽을 라우팅하는 방법을 정의하는 세부 규칙입니다. |
RouteMatch
RouteMatch는 요청을 특정 작업과 일치시키는 데 사용되는 조건자를 정의합니다. 여러 검색 유형은 평가를 위해 'OR'로 연결됩니다. routeMatch 필드가 지정되지 않으면 이 규칙은 무조건 트래픽과 일치합니다.
JSON 표현 |
---|
{ "address": string, "port": string } |
필드 | |
---|---|
address |
필수 항목. CIDR 범위 형식으로 지정해야 합니다. CIDR 범위는 IP 주소와 서브넷 마스크를 구성하는 프리픽스 길이로 구성됩니다. 기본적으로 프리픽스 길이는 32입니다(즉, 단일 IP 주소와 일치). IPV4 주소만 지원됩니다. 예: '10.0.0.1' - 이 정확한 IP 주소와 일치합니다. '10.0.0.0/8': 10.0.0.0 서브넷 및 255.255.255.0 마스크 내의 모든 IP 주소와 일치합니다. '0.0.0.0/0': 모든 IP 주소와 일치합니다. |
port |
필수 항목. 일치시킬 목적지 포트를 지정합니다. |
RouteAction
트래픽 라우팅 및 연결된 정책 적용을 위한 사양입니다.
JSON 표현 |
---|
{
"destinations": [
{
object ( |
필드 | |
---|---|
destinations[] |
선택사항. 트래픽을 전달해야 하는 대상 서비스입니다. 대상 서비스가 1개 이상 필요합니다. 경로 대상 또는 원래 대상 중 하나만 설정할 수 있습니다. |
originalDestination |
선택사항. 이 값이 true이면 라우터는 원래 연결의 대상 IP 및 포트를 요청의 대상으로 사용합니다. 기본값은 false입니다. 경로 대상 또는 원래 대상 중 하나만 설정할 수 있습니다. |
idleTimeout |
선택사항. 선택한 경로의 유휴 제한 시간을 지정합니다. 유휴 제한 시간은 업스트림 또는 다운스트림 연결에서 전송되거나 수신되는 바이트가 없는 기간으로 정의됩니다. 설정하지 않으면 기본 유휴 제한 시간은 30초입니다. 0으로 설정하면 제한 시간이 사용 중지됩니다. 소수점 아래가 최대 9자리까지이고 ' |
RouteDestination
트래픽을 라우팅할 대상을 설명합니다.
JSON 표현 |
---|
{ "serviceName": string, "weight": integer } |
필드 | |
---|---|
serviceName |
필수 항목. 트래픽을 라우팅할 BackendService의 URL입니다. |
weight |
선택사항. serviceName 필드에서 참조하는 백엔드로 전달되는 요청의 비율을 지정합니다. 이 값은 - 가중치/합계(이 대상 목록의 가중치)로 계산됩니다. 0이 아닌 값의 경우 구현에서 지원하는 정밀도에 따라 여기에 정의된 정확한 비율에서 약간의 엡실론이 있을 수 있습니다. serviceName이 하나만 지정되고 가중치가 0보다 큰 경우 트래픽의 100%가 해당 백엔드로 전달됩니다. 하나의 서비스 이름에 가중치를 지정하는 경우 모든 서비스 이름에 가중치를 지정해야 합니다. 모든 서비스에 가중치가 지정되지 않은 경우 트래픽이 모든 서비스에 동일한 비율로 분산됩니다. |
메서드 |
|
---|---|
|
특정 프로젝트와 위치에 새 TcpRoute를 만듭니다. |
|
단일 TcpRoute를 삭제합니다. |
|
단일 TcpRoute의 세부정보를 가져옵니다. |
|
특정 프로젝트와 위치의 TcpRoute를 나열합니다. |
|
단일 TcpRoute의 매개변수를 업데이트합니다. |