네트워크 API


OpenShift Container Platform 4.19

네트워크 API 참조 가이드

Red Hat OpenShift Documentation Team

초록

이 문서에서는 OpenShift Container Platform 네트워크 API 객체와 해당 세부 사양을 설명합니다.

1장. 네트워크 API

1.1. ClusterUserDefinedNetwork [k8s.ovn.org/v1]

설명
ClusterUserDefinedNetwork는 네임스페이스 전반의 공유 네트워크에 대한 네트워크 요청을 설명합니다.
유형
object

1.2. AdminNetworkPolicy [policy.networking.k8s.io/v1alpha1]

설명
AdminNetworkPolicy는 AdminNetworkPolicy API의 일부인 클러스터 수준 리소스입니다.
유형
object

1.3. AdminPolicyBasedExternalRoute [k8s.ovn.org/v1]

설명
AdminPolicyBasedExternalRoute는 클러스터 관리자가 선택한 네임스페이스에 포함된 모든 포드에 적용할 외부 게이트웨이 IP에 대한 정책을 구성할 수 있도록 하는 CRD입니다. 선택된 네임스페이스에 속하는 포드에서 클러스터 외부로 나가는 송신 트래픽은 이러한 외부 게이트웨이 IP를 통해 라우팅됩니다.
유형
object

1.4. BaselineAdminNetworkPolicy [policy.networking.k8s.io/v1alpha1]

설명
BaselineAdminNetworkPolicy는 AdminNetworkPolicy API의 일부인 클러스터 수준 리소스입니다.
유형
object

1.5. CloudPrivateIPConfig [cloud.network.openshift.io/v1]

설명

CloudPrivateIPConfig는 클라우드 VM과 연결된 기본 NIC에 개인 IP 주소를 할당합니다. 이 작업은 IP와 IP가 할당되어야 하는 Kubernetes 노드를 지정하여 수행됩니다. 이 CRD는 클러스터 네트워크를 관리하는 네트워크 플러그인에서 사용하도록 설계되었습니다. 사양 측면은 네트워크 플러그인에서 요청한 원하는 상태를 나타내고, 상태 측면은 이 CRD의 컨트롤러가 실행한 현재 상태를 나타냅니다. 어떤 사용자도 이를 수정할 권한이 없으며, 클러스터 관리자가 어떤 이유로 이를 편집하기로 결정한 경우 네트워크 플러그인이 다음에 객체를 조정할 때 변경 사항이 덮어쓰여집니다. 참고: CR의 이름은 요청된 개인 IP 주소(IPv4 또는 IPv6)를 지정해야 합니다.

호환성 수준 1: 주요 릴리스 내에서 최소 12개월 또는 3개의 마이너 릴리스 내에서 안정적임(둘 중 더 긴 기간 적용).

유형
object

1.6. EgressFirewall [k8s.ovn.org/v1]

설명
EgressFirewall은 네임스페이스에 대한 현재의 송신 방화벽을 설명합니다. 클러스터 외부의 IP 주소로 향하는 포드의 트래픽은 포드 네임스페이스의 EgressFirewall에 있는 각 EgressFirewallRule에 대해 순서대로 확인됩니다. 일치하는 규칙이 없거나 EgressFirewall이 없는 경우 트래픽은 기본적으로 허용됩니다.
유형
object

1.7. EgressIP [k8s.ovn.org/v1]

설명
EgressIP는 사용자가 사양 정의에 따라 EgressIP 리소스와 일치하는 모든 포드에서 발생하는 모든 송신 트래픽에 대해 고정 소스 IP를 정의할 수 있도록 하는 CRD입니다.
유형
object

1.8. EgressQoS [k8s.ovn.org/v1]

설명
EgressQoS는 사용자가 네임스페이스의 포드 이그레스 트래픽에 대한 DSCP 값을 지정된 CIDR로 정의할 수 있도록 하는 CRD입니다. 이러한 포드에서 발생하는 트래픽은 네임스페이스의 EgressQoS에 있는 각 EgressQoSRule과 대조하여 검사되며, 일치하는 항목이 있으면 해당 트래픽에 관련 DSCP 값이 표시됩니다.
유형
object

1.9. EgressService [k8s.ovn.org/v1]

설명
EgressService는 사용자가 해당 LoadBalancer 서비스의 엔드포인트인 모든 포드에서 발생하는 송신 패킷의 소스 IP를 수신 IP로 요청할 수 있도록 하는 CRD입니다. 또한, 사용자는 LoadBalancer 서비스의 엔드포인트인 모든 포드에서 발생하는 송신 패킷이 기본 네트워크와 다른 네트워크를 사용하도록 요청할 수 있습니다.
유형
object

1.10. Endpoints [v1]

설명

Endpoints는 실제 서비스를 구현하는 Endpoints의 컬렉션입니다. 예제:

 Name: "mysvc",
 Subsets: [
   {
     Addresses: [{"ip": "10.10.1.1"}, {"ip": "10.10.2.2"}],
     Ports: [{"name": "a", "port": 8675}, {"name": "b", "port": 309}]
   },
   {
     Addresses: [{"ip": "10.10.3.3"}],
     Ports: [{"name": "a", "port": 93}, {"name": "b", "port": 76}]
   },
]
Copy to Clipboard Toggle word wrap
유형
object

1.11. EndpointSlice [discovery.k8s.io/v1]

설명
EndpointSlice는 서비스를 구현하는 엔드포인트의 하위 집합을 나타냅니다. 특정 서비스에는 레이블로 선택된 EndpointSlice 객체가 여러 개 있을 수 있으며, 이를 결합해서 전체 엔드포인트 세트를 생성해야 합니다.
유형
object

1.12. EgressRouter [network.operator.openshift.io/v1]

설명

EgressRouter는 사용자가 Pod와 외부 시스템 간의 브리지 역할을 하는 이그레스 라우터를 정의할 수 있는 기능입니다. 송신 라우터는 포드 또는 포드 그룹에서 발생하는 송신 트래픽을 구성에 따라 원격 외부 시스템이나 여러 대상으로 리디렉션하는 서비스를 실행합니다.

이는 클러스터 네트워크 운영자에 의해 소비됩니다. 보다 구체적으로, <name>이 포함된 EgressRouter CR이 주어지면 CNO는 다음을 생성하고 관리합니다. - <name>이라는 서비스 - <name>이라는 egress pod - <name>이라는 NAD

호환성 수준 1: 주요 릴리스 내에서 최소 12개월 또는 3개의 마이너 릴리스 내에서 안정적임(둘 중 더 긴 기간 적용).

EgressRouter는 단일 egressrouter pod 구성 객체입니다.

유형
object

1.13. GRPCRoute [gateway.networking.k8s.io/v1]

설명

GRPCRoute는 gRPC 요청을 라우팅하는 방법을 제공합니다. 여기에는 호스트 이름, gRPC 서비스, gRPC 메서드 또는 HTTP/2 헤더를 기준으로 요청을 일치시키는 기능이 포함됩니다. 필터를 사용하여 추가적인 처리 단계를 지정할 수 있습니다. 백엔드는 일치하는 요청이 어디로 라우팅될지 지정합니다.

GRPCRoute는 Gateway API 내에서 확장된 지원을 받습니다. 다음 사양에서 "MUST"라는 단어는 GRPCRoute를 지원하는 구현이 표시된 요구 사항을 준수해야 하지만, 이 경로 유형을 지원하지 않는 구현은 명시적으로 표시되지 않는 한 요구 사항을 따를 필요가 없음을 나타냅니다.

HTTPS ProtocolType을 사용하는 GRPCRoute를 지원하는 구현은 HTTP/1.1에서 초기 업그레이드 없이 ALPN을 통해 HTTP/2 연결을 허용해야 합니다. 구현이 이를 지원하지 않으면 영향을 받는 리스너에 대해 "수락됨" 조건을 "지원되지 않는 프로토콜"이라는 이유로 "거짓"으로 설정해야 합니다. 구현에서는 HTTP/1에서 업그레이드하여 HTTP/2 연결도 허용할 수 있습니다.

HTTP ProtocolType을 사용하는 GRPCRoute를 지원하는 구현은 HTTP/1.1에서 초기 업그레이드 없이(즉, 사전 지식이 있는 경우( https://www.rfc-editor.org/rfc/rfc7540#section-3.1 )) 일반 텍스트 TCP를 통한 HTTP/2를 지원해야 합니다(h2c, https://www.rfc-editor.org/rfc/rfc7540#section-3.4 ). 구현이 이를 지원하지 않으면 영향을 받는 리스너에 대해 "수락됨" 조건을 "지원되지 않는 프로토콜"이라는 이유로 "거짓"으로 설정해야 합니다. 구현에서는 HTTP/1에서 업그레이드하여 HTTP/2 연결을 허용할 수도 있습니다(예: 사전 지식 없음).

유형
object

1.14. Gateway [gateway.networking.k8s.io/v1]

설명
게이트웨이는 리스너를 IP 주소 집합에 연결하여 서비스 트래픽 처리 인프라의 인스턴스를 나타냅니다.
유형
object

1.15. GatewayClass [gateway.networking.k8s.io/v1]

설명

GatewayClass는 사용자가 Gateway 리소스를 생성하는 데 사용할 수 있는 Gateway 클래스를 설명합니다.

이 리소스는 게이트웨이의 템플릿으로 사용하는 것이 좋습니다. 즉, 게이트웨이는 생성 당시의 GatewayClass 상태를 기반으로 하며 GatewayClass 또는 관련 매개변수의 변경 사항은 기존 게이트웨이로 전파되지 않습니다. 이 권장 사항은 GatewayClass 또는 관련 매개변수의 변경에 따른 폭발 반경을 제한하기 위한 것입니다. 구현에서 GatewayClass 변경 사항을 기존 Gateway에 전파하기로 선택한 경우 구현에서 해당 내용을 명확하게 문서화해야 합니다.

하나 이상의 Gateway가 GatewayClass를 사용할 때마다 구현에서는 연관된 GatewayClass에 gateway-exists-finalizer.gateway.networking.k8s.io 종료자를 추가해야 합니다. 이렇게 하면 Gateway와 연관된 GatewayClass가 사용 중에 삭제되지 않습니다.

GatewayClass는 클러스터 수준 리소스입니다.

유형
object

1.16. HTTPRoute [gateway.networking.k8s.io/v1]

설명
HTTPRoute는 HTTP 요청을 라우팅하는 방법을 제공합니다. 여기에는 호스트 이름, 경로, 헤더 또는 쿼리 매개변수를 기준으로 요청을 일치시키는 기능이 포함됩니다. 필터를 사용하여 추가적인 처리 단계를 지정할 수 있습니다. 백엔드는 일치하는 요청이 어디로 라우팅되어야 하는지 지정합니다.
유형
object

1.17. 인그레스[networking.k8s.io/v1]

설명
Ingress는 백엔드에서 정의한 엔드포인트에 인바운드 연결이 도달할 수 있도록 허용하는 규칙 모음입니다. Ingress는 외부에서 접근 가능한 URL을 서비스에 제공하고, 트래픽 부하를 분산하고, SSL을 종료하고, 이름 기반 가상 호스팅을 제공하도록 구성할 수 있습니다.
유형
object

1.18. IngressClass [networking.k8s.io/v1]

설명
IngressClass는 Ingress Spec에서 참조하는 Ingress의 클래스를 나타냅니다. ingressclass.kubernetes.io/is-default-class 주석은 IngressClass를 기본값으로 간주해야 함을 나타내는 데 사용할 수 있습니다. 단일 IngressClass 리소스에 이 주석이 true로 설정된 경우, 클래스가 지정되지 않은 새 Ingress 리소스에 이 기본 클래스가 할당됩니다.
유형
object

1.19. IPAMClaim [k8s.cni.cncf.io/v1alpha1]

설명
IPAMClaim은 IPAMClaim API의 스키마입니다.
유형
object

1.20. IP풀 [whereabouts.cni.cncf.io/v1alpha1]

설명
IPPool은 ippools API의 스키마입니다.
유형
object

1.21. MultiNetworkPolicy [k8s.cni.cncf.io/v1beta1]

설명
MultiNetworkPolicy는 Network Plumbing Working Group에서 지정한 net-attach-def에 대한 NetworkPolicy 메커니즘을 제공하는 CRD 스키마입니다. MultiNetworkPolicy는 Kubernetes NetworkPolicy와 동일합니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/network-policies/를 참조하세요.
유형
object

1.22. NetworkAttachmentDefinition [k8s.cni.cncf.io/v1]

설명
NetworkAttachmentDefinition은 네트워크 플러밍 작업 그룹에서 지정한 CRD 스키마로, 하나 이상의 논리적 또는 물리적 네트워크에 포드를 연결하려는 의도를 표현하기 위해 만들어졌습니다. 자세한 내용은 https://github.com/k8snetworkplumbingwg/multi-net-spec 에서 확인하세요.
유형
object

1.23. 네트워크 정책[networking.k8s.io/v1]

설명
NetworkPolicy는 Pod 세트에 허용되는 네트워크 트래픽을 설명합니다.
유형
object

1.24. NodeSlicePool [whereabouts.cni.cncf.io/v1alpha1]

설명
NodeSlicePool은 nodesliceippools API의 스키마입니다.
유형
object

1.25. OverlappingRangeIPReservation [whereabouts.cni.cncf.io/v1alpha1]

설명
OverlappingRangeIPReservation은 OverlappingRangeIPReservations API의 스키마입니다.
유형
object

1.26. PodNetworkConnectivityCheck [controlplane.operator.openshift.io/v1alpha1]

설명

PodNetworkConnectivityCheck

호환성 수준 4: 호환성이 제공되지 않으며, API는 언제든지 어떤 이유로든 변경될 수 있습니다. 이러한 기능은 장기 지원이 필요한 애플리케이션에서는 사용하면 안 됩니다.

유형
object

1.27. ReferenceGrant [gateway.networking.k8s.io/v1beta1]

설명

ReferenceGrant는 정책과 동일한 네임스페이스에서 지정된 종류의 리소스를 참조하는 것으로 신뢰되는 다른 네임스페이스의 리소스 종류를 식별합니다.

각 ReferenceGrant는 고유한 신뢰 관계를 나타내는 데 사용될 수 있습니다. 추가 참조 허가는 정의된 네임스페이스에 대한 신뢰할 수 있는 인바운드 참조 소스 집합에 추가하는 데 사용할 수 있습니다.

Gateway API의 모든 크로스 네임스페이스 참조(크로스 네임스페이스 Gateway-route 첨부 제외)에는 ReferenceGrant가 필요합니다.

ReferenceGrant는 사용자가 어떤 교차 네임스페이스 개체 참조가 허용되는지 확인할 수 있는 런타임 검증 형식입니다. ReferenceGrant를 지원하는 구현은 권한이 없는 크로스 네임스페이스 참조를 허용해서는 안 되며, 권한이 제거되면 해당 권한이 허용한 액세스를 취소하여 응답해야 합니다.

유형
object

1.28. Route [route.openshift.io/v1]

설명

경로를 통해 개발자는 공개 DNS 항목을 통해 HTTP(S) 인식 부하 분산 및 프록시 계층을 통해 서비스를 노출할 수 있습니다. 경로는 TLS 옵션과 인증서를 추가로 지정하거나 라우터가 HTTP 및 HTTPS 트래픽에 대해 허용해야 하는 공개 CNAME을 지정할 수 있습니다. 관리자는 일반적으로 클러스터 방화벽 외부에서 라우터를 볼 수 있도록 구성하고, 서비스 콘텐츠에 대한 보안, 캐싱 또는 트래픽 제어를 추가할 수도 있습니다. 라우터는 일반적으로 서비스 엔드포인트와 직접 통신합니다.

경로가 생성되면 호스트 필드를 변경할 수 없습니다. 일반적으로 라우터는 충돌을 해결할 때 주어진 호스트와의 가장 오래된 경로를 사용합니다.

라우터는 추가적인 사용자 정의가 필요하며 주석 필드를 통해 추가적인 제어를 지원할 수 있습니다.

관리자는 여러 라우터를 구성할 수 있으므로, 경로 상태 필드는 각 라우터 아래의 경로 이름과 상태에 대한 정보를 클라이언트에 반환하는 데 사용됩니다. 예를 들어 클라이언트가 중복된 이름을 선택하면 경로 상태 조건을 사용하여 해당 경로를 선택할 수 없음을 나타냅니다.

경로에서 HTTP/2 ALPN을 활성화하려면 사용자 지정(와일드카드 아님) 인증서가 필요합니다. 이렇게 하면 클라이언트, 특히 웹 브라우저가 연결을 병합하는 것을 방지할 수 있습니다. 연결 재사용/병합의 위험 때문에 기본 인증서를 사용하는 경로에서는 HTTP/2 ALPN을 지원하지 않습니다. 자체 사용자 정의 인증서가 없는 경로는 프런트엔드나 백엔드에서 HTTP/2 ALPN을 사용할 수 없습니다.

호환성 수준 1: 주요 릴리스 내에서 최소 12개월 또는 3개의 마이너 릴리스 내에서 안정적임(둘 중 더 긴 기간 적용).

유형
object

1.29. Service [v1]

설명
서비스는 프록시가 수신하는 로컬 포트(예: 3306)와 프록시를 통해 전송된 요청에 응답할 포드를 결정하는 선택기로 구성된 소프트웨어 서비스(예: MySQL)의 명명된 추상화입니다.
유형
object

1.30. UserDefinedNetwork [k8s.ovn.org/v1]

설명
UserDefinedNetwork는 네임스페이스에 대한 네트워크 요청을 설명합니다.
유형
object

2장. ClusterUserDefinedNetwork [k8s.ovn.org/v1]

설명
ClusterUserDefinedNetwork는 네임스페이스 전반의 공유 네트워크에 대한 네트워크 요청을 설명합니다.
유형
object
필수 항목
  • spec

2.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

ClusterUserDefinedNetworkSpec은 ClusterUserDefinedNetwork의 원하는 상태를 정의합니다.

status

object

ClusterUserDefinedNetworkStatus에는 ClusterUserDefinedNetwork의 관찰된 상태가 포함되어 있습니다.

2.1.1. .spec

설명
ClusterUserDefinedNetworkSpec은 ClusterUserDefinedNetwork의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • namespaceSelector
  • network
Expand
재산유형설명

namespaceSelector

object

NamespaceSelector 네임스페이스 네트워크를 사용할 수 있는 레이블 선택기입니다.

network

object

네트워크는 사용자 정의 네트워크 사양입니다.

2.1.2. .spec.namespaceSelector

설명
NamespaceSelector 네임스페이스 네트워크를 사용할 수 있는 레이블 선택기입니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

2.1.3. .spec.namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

2.1.4. .spec.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

2.1.5. .spec.network

설명
네트워크는 사용자 정의 네트워크 사양입니다.
유형
object
필수 항목
  • 토폴로지
Expand
재산유형설명

layer2

object

Layer2는 Layer2 토폴로지 구성입니다.

layer3

object

Layer3은 Layer3 토폴로지 구성입니다.

로컬넷

object

Localnet은 Localnet 토폴로지 구성입니다.

토폴로지

string

토폴로지는 네트워크 구성을 설명합니다.

허용되는 값은 "Layer3", "Layer2" 및 "Localnet"입니다. 3계층 토폴로지는 노드마다 다른 서브넷을 갖는 2계층 세그먼트를 생성합니다. 3계층 라우팅은 노드 서브넷을 상호 연결하는 데 사용됩니다. 2계층 토폴로지는 모든 노드가 공유하는 하나의 논리적 스위치를 생성합니다. 로컬넷 토폴로지는 2계층 토폴로지를 기반으로 하지만 기존의(구성된) 물리적 네트워크에 연결하여 워크로드에 남북 트래픽을 제공할 수도 있습니다.

2.1.6. .spec.network.layer2

설명
Layer2는 Layer2 토폴로지 구성입니다.
유형
object
필수 항목
  • role
Expand
재산유형설명

ipam

object

IPAM 섹션에는 네트워크에 대한 IPAM 관련 구성이 포함되어 있습니다.

joinSubnets

배열(문자열)

JoinSubnets는 OVN 네트워크 토폴로지 내부에서 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 패밀리당 1개)을 설정할 수 있으며, 그렇지 않은 경우에는 1개의 서브넷만 허용됩니다. 이 필드는 "기본" 네트워크에만 허용됩니다. OVN 네트워크 토폴로지에 대한 명확한 필요성과 이해가 없이는 이 필드를 설정하지 않는 것이 좋습니다. 생략하면 플랫폼은 시간이 지남에 따라 변경될 수 있는 합리적인 기본값을 선택합니다.

mtu

integer

MTU는 네트워크의 최대 전송 단위입니다. MTU는 선택 사항이며, 제공되지 않으면 OVN-Kubernetes에서 전역적으로 구성된 값(기본값은 1400)이 네트워크에 사용됩니다.

role

string

역할은 Pod 내의 네트워크 역할을 설명합니다.

허용되는 값은 "보조"입니다. 보조 네트워크는 k8s.v1.cni.cncf.io/networks 주석을 사용하여 지정된 네트워크를 선택하는 Pod에만 할당됩니다.

subnets

배열(문자열)

서브넷은 클러스터 전반의 포드 네트워크에 사용됩니다. 듀얼 스택 클러스터는 2개의 서브넷(IP 패밀리당 1개)을 설정할 수 있으며, 그렇지 않은 경우에는 1개의 서브넷만 허용됩니다.

형식은 표준 CIDR 표기법(예: "10.128.0.0/16")과 일치해야 합니다. ipam.modeDisabled 인 경우 이 필드를 생략해야 합니다.

2.1.7. .spec.network.layer2.ipam

설명
IPAM 섹션에는 네트워크에 대한 IPAM 관련 구성이 포함되어 있습니다.
유형
object
Expand
재산유형설명

수명주기

string

라이프사이클은 IP 주소 관리 라이프사이클을 제어합니다.

허용되는 값은 지속적 값뿐입니다. 설정하면 OVN Kubernetes에서 할당한 IP 주소가 ipamclaims.k8s.cni.cncf.io 개체에 저장됩니다. 이러한 IP 주소는 요청 시 다른 포드에서 재사용됩니다. 모드가 활성화된 경우에만 지원됩니다.

mode

string

모드는 OVN이 IP 구성을 얼마나 관리할지 제어합니다. 활성화 하면 OVN-Kubernetes가 SDN 인프라에 IP 구성을 적용하고 선택한 서브넷의 IP를 개별 포드에 할당합니다. 비활성화 하면 OVN-Kubernetes는 MAC 주소만 할당하고 2계층 통신을 제공하여 사용자가 포드에 대한 IP 주소를 구성할 수 있도록 합니다. 비활성화는 보조 네트워크에만 사용할 수 있습니다. IPAM을 비활성화하면 IP를 기준으로 포드를 선택하는 Kubernetes 기능(예: 네트워크 정책, 서비스 등)이 더 이상 작동하지 않습니다. 또한, 이 네트워크에 연결된 인터페이스의 IP 포트 보안도 비활성화됩니다. 기본값은 Enabled입니다 .

2.1.8. .spec.network.layer3

설명
Layer3은 Layer3 토폴로지 구성입니다.
유형
object
필수 항목
  • role
  • subnets
Expand
재산유형설명

joinSubnets

배열(문자열)

JoinSubnets는 OVN 네트워크 토폴로지 내부에서 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 패밀리당 1개)을 설정할 수 있으며, 그렇지 않은 경우에는 1개의 서브넷만 허용됩니다. 이 필드는 "기본" 네트워크에만 허용됩니다. OVN 네트워크 토폴로지에 대한 명확한 필요성과 이해가 없이는 이 필드를 설정하지 않는 것이 좋습니다. 생략하면 플랫폼은 시간이 지남에 따라 변경될 수 있는 합리적인 기본값을 선택합니다.

mtu

integer

MTU는 네트워크의 최대 전송 단위입니다.

MTU는 선택 사항이며, 제공되지 않으면 OVN-Kubernetes에서 전역적으로 구성된 값(기본값은 1400)이 네트워크에 사용됩니다.

role

string

역할은 Pod 내의 네트워크 역할을 설명합니다.

허용되는 값은 "기본"과 "보조"입니다. 기본 네트워크는 동일한 네임스페이스에서 생성된 모든 Pod에 자동으로 할당됩니다. 보조 네트워크는 k8s.v1.cni.cncf.io/networks 주석을 사용하여 지정된 네트워크를 선택하는 Pod에만 할당됩니다.

subnets

array

서브넷은 클러스터 전반의 포드 네트워크에 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 패밀리당 1개)을 설정할 수 있으며, 그렇지 않은 경우에는 1개의 서브넷만 허용됩니다. 주어진 서브넷은 각 노드에 대해 더 작은 서브넷으로 분할됩니다.

subnets[]

object

 

2.1.9. .spec.network.layer3.subnets

설명

서브넷은 클러스터 전반의 포드 네트워크에 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 패밀리당 1개)을 설정할 수 있으며, 그렇지 않은 경우에는 1개의 서브넷만 허용됩니다. 주어진 서브넷은 각 노드에 대해 더 작은 서브넷으로 분할됩니다.

유형
array

2.1.10. .spec.network.layer3.subnets[]

설명
유형
object
필수 항목
  • cidr
Expand
재산유형설명

cidr

string

CIDR은 L3Subnet을 지정하는데, 이는 각 노드에 대해 더 작은 서브넷으로 분할됩니다.

hostSubnet

integer

HostSubnet은 모든 노드의 서브넷 크기를 지정합니다.

설정하지 않으면 자동으로 할당됩니다.

2.1.11. .spec.network.localnet

설명
Localnet은 Localnet 토폴로지 구성입니다.
유형
object
필수 항목
  • physicalNetworkName
  • role
Expand
재산유형설명

excludeSubnets

배열(문자열)

excludeSubnets는 subnets 의 지정된 CIDR에서 제거할 CIDR 목록입니다. 이 목록에 있는 CIDR은 subnets 에 지정된 하나 이상의 서브넷 범위 내에 있어야 합니다. excludeSubnets는 선택 사항입니다. 생략하면 어떤 IP 주소도 제외되지 않으며 서브넷 에 지정된 모든 IP 주소가 할당됩니다. 형식은 표준 CIDR 표기법(예: "10.128.0.0/16")과 일치해야 합니다. subnets가 설정되지 않았거나 ipam.modeDisabled 인 경우 이 필드를 생략해야 합니다. physicalNetworkName이 예약된 IP 주소(OVN-Kubernetes에서 할당해서는 안 됨)를 사용하는 네트워크의 OVS 브리지 매핑을 가리키는 경우, 지정된 CIDR은 할당되지 않습니다. 예를 들어: subnets: "10.0.0.0/24" , excludeSubnets: "10.0.0.200/30"인 경우 다음 주소는 포드에 할당되지 않습니다: `10.0.0.201 , 10.0.0.202 .

ipam

object

네트워크에 대한 ipam 구성입니다. ipam은 선택 사항입니다. 생략하는 경우 서브넷을 지정해야 합니다. ipam.modeDisabled 인 경우 서브넷을 생략해야 합니다. ipam.mode는 OVN이 IP 구성을 얼마나 관리할지 제어합니다. 이 기능을 활성화하면 OVN-Kubernetes가 SDN 인프라에 IP 구성을 적용하고 선택한 서브넷의 IP를 포드에 할당합니다. 비활성화된 경우, OVN-Kubernetes는 MAC 주소만 할당하고, 2계층 통신을 제공하며, 사용자가 포드에서 IP 주소를 구성할 수 있도록 합니다. ipam.lifecycle은 IP 주소 관리 라이프사이클을 제어합니다. '영구'로 설정하면 할당된 IP 주소가 ipamclaims.k8s.cni.cncf.io 개체에 저장됩니다. VM에 유용하며, 재시작 및 마이그레이션 후에도 IP 주소가 유지됩니다. ipam.mode활성화된 경우 지원됩니다.

mtu

integer

mtu는 네트워크의 최대 전송 단위입니다. mtu는 선택 사항입니다. 생략하면 OVN-Kubernetes에서 구성된 값(로컬넷 토폴로지의 경우 기본값은 1500)이 네트워크에 사용됩니다. IPv4 서브넷의 최소값은 576이고, IPv6 서브넷의 최소값은 1280입니다. 최대값은 65536입니다. 시나리오에서 physicalNetworkName은 특정 MTU 설정으로 구성된 네트워크의 OVS 브리지 매핑을 가리키고, 이 필드를 통해 Pod 인터페이스에서 동일한 MTU를 구성하여 Pod MTU를 네트워크 MTU에 맞출 수 있습니다. 스택 전체에 걸쳐 MTU가 잘못 정렬되면(예: Pod의 MTU가 X이고 노드 NIC의 MTU가 Y인 경우) 네트워크 중단 및 성능 저하가 발생할 수 있습니다.

physicalNetworkName

string

physicalNetworkName은 노드에 구성된 OVS 브리지 매핑의 네트워크 이름을 가리키며 필수입니다. 최소 길이는 1이고, 최대 길이는 253이며 , , 또는 : 문자를 포함할 수 없습니다. Kubernetes-nmstate에서 NodeNetworkConfigurationPolicy (NNCP)를 사용하여 OVS 브리지 매핑이 정의된 경우, 이 필드는 NNCP spec.desiredState.ovn.bridge-mappings 항목의 localnet 값을 가리켜야 합니다.

role

string

역할은 포드의 네트워크 역할을 설명합니다. 필수입니다. Pod 인터페이스가 기본 또는 보조로 작동할지 여부를 제어합니다. 로컬넷 토폴로지는 2 차만 지원합니다. 네트워크는 주제를 가리키는 k8s.v1.cni.cncf.io/networks 주석이 있는 포드에 할당됩니다.

subnets

배열(문자열)

subnets는 클러스터 전반의 localnet 네트워크에 있는 포드에 사용되는 서브넷 목록입니다. 목록은 1개의 IPv4 서브넷, 1개의 IPv6 서브넷 또는 각 IP 패밀리 중 1개일 수 있습니다. 이 옵션을 설정하면 OVN-Kubernetes는 지정된 CIDR에서 연결된 포드에 IP 주소를 할당하여 수동 IP 할당이나 외부 IPAM 서비스(예: DHCP 서버)에 대한 의존성을 제거합니다. 서브넷은 선택 사항입니다. 생략하면 OVN-Kubernetes가 자동으로 IP 주소를 할당하지 않습니다. 듀얼 스택 클러스터는 2개의 서브넷(IP 패밀리당 1개)을 설정할 수 있으며, 그렇지 않은 경우에는 1개의 서브넷만 허용됩니다. 형식은 표준 CIDR 표기법(예: "10.128.0.0/16")과 일치해야 합니다. ipam.modeDisabled 인 경우 이 필드를 생략해야 합니다. physicalNetworkName이 IPAM 서비스(예: DHCP 서버)를 제공하는 네트워크의 OVS 브리지 매핑을 가리키는 경우 ipam.mode를 Disabled로 설정해야 합니다. 이렇게 하면 OVN-Kubernetes IPAM이 꺼지고 이 로컬넷 네트워크에 있는 기존 IPAM 서비스와의 충돌이 방지됩니다.

vlan

object

네트워크에 대한 VLAN 구성입니다. vlan.mode는 VLAN 모드입니다. "액세스"가 설정되면 OVN-Kubernetes는 액세스 모드에서 네트워크 논리 스위치 포트를 구성합니다. vlan.access는 액세스 VLAN 구성입니다. vlan.access.id는 네트워크 논리 스위치 포트에 설정할 VLAN ID(VID)입니다. vlan은 선택 사항이며, 생략하면 기본 네트워크 VLAN이 사용됩니다(일반적으로 1 ). 설정하면 OVN-Kubernetes는 SDN 인프라와 연결된 포드에 VLAN 구성을 적용합니다.

2.1.12. .spec.network.localnet.ipam

설명
네트워크에 대한 ipam 구성입니다. ipam은 선택 사항입니다. 생략하는 경우 서브넷을 지정해야 합니다. ipam.modeDisabled 인 경우 서브넷을 생략해야 합니다. ipam.mode는 OVN이 IP 구성을 얼마나 관리할지 제어합니다. 이 기능을 활성화하면 OVN-Kubernetes가 SDN 인프라에 IP 구성을 적용하고 선택한 서브넷의 IP를 포드에 할당합니다. 비활성화된 경우, OVN-Kubernetes는 MAC 주소만 할당하고, 2계층 통신을 제공하며, 사용자가 포드에서 IP 주소를 구성할 수 있도록 합니다. ipam.lifecycle은 IP 주소 관리 라이프사이클을 제어합니다. '영구'로 설정하면 할당된 IP 주소가 ipamclaims.k8s.cni.cncf.io 개체에 저장됩니다. VM에 유용하며, 재시작 및 마이그레이션 후에도 IP 주소가 유지됩니다. ipam.mode활성화된 경우 지원됩니다.
유형
object
Expand
재산유형설명

수명주기

string

라이프사이클은 IP 주소 관리 라이프사이클을 제어합니다.

허용되는 값은 지속적 값뿐입니다. 설정하면 OVN Kubernetes에서 할당한 IP 주소가 ipamclaims.k8s.cni.cncf.io 개체에 저장됩니다. 이러한 IP 주소는 요청 시 다른 포드에서 재사용됩니다. 모드가 활성화된 경우에만 지원됩니다.

mode

string

모드는 OVN이 IP 구성을 얼마나 관리할지 제어합니다. 활성화 하면 OVN-Kubernetes가 SDN 인프라에 IP 구성을 적용하고 선택한 서브넷의 IP를 개별 포드에 할당합니다. 비활성화 하면 OVN-Kubernetes는 MAC 주소만 할당하고 2계층 통신을 제공하여 사용자가 포드에 대한 IP 주소를 구성할 수 있도록 합니다. 비활성화는 보조 네트워크에만 사용할 수 있습니다. IPAM을 비활성화하면 IP를 기준으로 포드를 선택하는 Kubernetes 기능(예: 네트워크 정책, 서비스 등)이 더 이상 작동하지 않습니다. 또한, 이 네트워크에 연결된 인터페이스의 IP 포트 보안도 비활성화됩니다. 기본값은 Enabled입니다 .

2.1.13. .spec.network.localnet.vlan

설명
네트워크에 대한 VLAN 구성입니다. vlan.mode는 VLAN 모드입니다. "액세스"가 설정되면 OVN-Kubernetes는 액세스 모드에서 네트워크 논리 스위치 포트를 구성합니다. vlan.access는 액세스 VLAN 구성입니다. vlan.access.id는 네트워크 논리 스위치 포트에 설정할 VLAN ID(VID)입니다. vlan은 선택 사항이며, 생략하면 기본 네트워크 VLAN이 사용됩니다(일반적으로 1 ). 설정하면 OVN-Kubernetes는 SDN 인프라와 연결된 포드에 VLAN 구성을 적용합니다.
유형
object
필수 항목
  • mode
Expand
재산유형설명

입장

object

Access는 액세스 VLAN 구성입니다.

mode

string

모드는 네트워크 VLAN 모드를 설명합니다. 허용되는 값은 "액세스"입니다. Access는 구성에 따라 네트워크 논리 스위치 포트를 액세스 모드로 설정합니다.

2.1.14. .spec.network.localnet.vlan.access

설명
Access는 액세스 VLAN 구성입니다.
유형
object
필수 항목
  • id
Expand
재산유형설명

id

integer

id는 네트워크에 설정할 VLAN ID(VID)입니다. id는 0보다 크고 4095보다 작아야 합니다.

2.1.15. .status

설명
ClusterUserDefinedNetworkStatus에는 ClusterUserDefinedNetwork의 관찰된 상태가 포함되어 있습니다.
유형
object
Expand
재산유형설명

conditions

array

ClusterUserDefineNetwork 상태에 대한 세부 정보를 나타내는 조건 객체의 조건 슬라이스입니다.

conditions[]

object

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다.

2.1.16. .status.conditions

설명
ClusterUserDefineNetwork 상태에 대한 세부 정보를 나타내는 조건 객체의 조건 슬라이스입니다.
유형
array

2.1.17. .status.conditions[]

설명
조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
재산유형설명

lastTransitionTime

string

lastTransitionTime은 조건이 한 상태에서 다른 상태로 전환된 마지막 시간입니다. 이는 기본 조건이 변경된 시점이어야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

메시지는 전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건이 설정된 .metadata.generation을 나타냅니다. 예를 들어, .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 해당 조건은 인스턴스의 현재 상태를 기준으로 오래되었습니다.

reason

string

reason에는 조건의 마지막 전환에 대한 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 대한 예상 값과 의미를 정의하고, 해당 값이 보장된 API로 간주되는지 여부를 결정할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있을 수 없습니다.

status

string

조건의 상태는 True, False, Unknown 중 하나입니다.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

2.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.ovn.org/v1/clusteruserdefinednetworks

    • DELETE : ClusterUserDefinedNetwork 컬렉션 삭제
    • GET : ClusterUserDefinedNetwork 종류의 객체 목록
    • POST : ClusterUserDefinedNetwork 생성
  • /apis/k8s.ovn.org/v1/clusteruserdefinednetworks/{name}

    • DELETE: delete a ClusterUserDefinedNetwork
    • GET : 지정된 ClusterUserDefinedNetwork를 읽습니다.
    • PATCH : 지정된 ClusterUserDefinedNetwork를 부분적으로 업데이트합니다.
    • PUT : 지정된 ClusterUserDefinedNetwork를 교체합니다.
  • /apis/k8s.ovn.org/v1/clusteruserdefinednetworks/{name}/status

    • GET : 지정된 ClusterUserDefinedNetwork의 상태를 읽습니다.
    • PATCH : 지정된 ClusterUserDefinedNetwork의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 ClusterUserDefinedNetwork의 상태를 바꿉니다.

2.2.1. /apis/k8s.ovn.org/v1/clusteruserdefinednetworks

HTTP 방법
DELETE
설명
ClusterUserDefinedNetwork 컬렉션 삭제
Expand
표 2.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
ClusterUserDefinedNetwork 종류의 객체 목록
Expand
표 2.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetworkList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
create a ClusterUserDefinedNetwork
Expand
표 2.3. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 2.4. 신체 매개변수
매개변수유형설명

body

ClusterUserDefinedNetwork 스키마

 
Expand
표 2.5. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetwork 스키마

201 - 생성됨

ClusterUserDefinedNetwork 스키마

202 - 승인됨

ClusterUserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

2.2.2. /apis/k8s.ovn.org/v1/clusteruserdefinednetworks/{name}

Expand
표 2.6. 글로벌 경로 매개변수
매개변수유형설명

name

string

ClusterUserDefinedNetwork의 이름

HTTP 방법
DELETE
설명
delete a ClusterUserDefinedNetwork
Expand
표 2.7. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 2.8. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 ClusterUserDefinedNetwork를 읽습니다.
Expand
표 2.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 ClusterUserDefinedNetwork를 부분적으로 업데이트합니다.
Expand
표 2.10. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 2.11. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 ClusterUserDefinedNetwork를 교체합니다.
Expand
표 2.12. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 2.13. 신체 매개변수
매개변수유형설명

body

ClusterUserDefinedNetwork 스키마

 
Expand
표 2.14. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetwork 스키마

201 - 생성됨

ClusterUserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

2.2.3. /apis/k8s.ovn.org/v1/clusteruserdefinednetworks/{name}/status

Expand
표 2.15. 글로벌 경로 매개변수
매개변수유형설명

name

string

ClusterUserDefinedNetwork의 이름

HTTP 방법
얻다
설명
지정된 ClusterUserDefinedNetwork의 상태를 읽습니다.
Expand
표 2.16. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 ClusterUserDefinedNetwork의 상태를 부분적으로 업데이트합니다.
Expand
표 2.17. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 2.18. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 ClusterUserDefinedNetwork의 상태를 바꿉니다.
Expand
표 2.19. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 2.20. 신체 매개변수
매개변수유형설명

body

ClusterUserDefinedNetwork 스키마

 
Expand
표 2.21. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ClusterUserDefinedNetwork 스키마

201 - 생성됨

ClusterUserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

3장. AdminNetworkPolicy [policy.networking.k8s.io/v1alpha1]

설명
AdminNetworkPolicy는 AdminNetworkPolicy API의 일부인 클러스터 수준 리소스입니다.
유형
object
필수 항목
  • 메타데이터
  • spec

3.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

AdminNetworkPolicy의 원하는 동작에 대한 사양입니다.

status

object

상태는 구현에서 보고되는 상태입니다.

3.1.1. .spec

설명
AdminNetworkPolicy의 원하는 동작에 대한 사양입니다.
유형
object
필수 항목
  • priority
  • 주제
Expand
재산유형설명

출구

array

Egress는 선택된 포드에 적용될 Egress 규칙 목록입니다. 각 ANP 인스턴스에는 총 100개의 규칙이 허용됩니다. 단일 ANP 객체 내에서의 퇴장 규칙의 상대적 우선순위(모든 객체가 우선순위를 공유함)는 규칙이 작성된 순서에 따라 결정됩니다. 따라서 탈출 규칙의 맨 위에 나타나는 규칙이 가장 높은 우선순위를 갖습니다. 출구 규칙이 없는 ANP는 출구 트래픽에 영향을 미치지 않습니다.

지원: 코어

egress[]

object

AdminNetworkPolicyEgressRule은 AdminNetworkPolicy의 Subject 필드에서 선택한 Pod에서 발생하는 특정 트래픽 세트에 대해 수행할 작업을 설명합니다. <network-policy-api:experimental:validation>

입구

array

Ingress는 선택된 Pod에 적용될 Ingress 규칙 목록입니다. 각 ANP 인스턴스에는 총 100개의 규칙이 허용됩니다. 단일 ANP 객체 내에서 수신 규칙의 상대적 우선순위(모든 객체가 우선순위를 공유함)는 규칙이 작성된 순서에 따라 결정됩니다. 따라서, ingress 규칙의 맨 위에 나타나는 규칙이 가장 높은 우선순위를 갖습니다. 수신 규칙이 없는 ANP는 수신 트래픽에 영향을 미치지 않습니다.

지원: 코어

ingress[]

object

AdminNetworkPolicyIngressRule은 AdminNetworkPolicy의 Subject 필드에서 선택한 Pod로 향하는 특정 트래픽 세트에 대해 수행할 작업을 설명합니다.

priority

integer

우선순위는 0~1000 사이의 값입니다. 우선순위 값이 낮은 규칙은 우선순위가 높고, 우선순위 값이 높은 규칙보다 먼저 확인됩니다. 모든 AdminNetworkPolicy 규칙은 NetworkPolicy 또는 BaselineAdminNetworkPolicy 규칙보다 우선순위가 높습니다. 두 ANP 개체의 우선순위가 같은 경우 동작은 정의되지 않습니다.

지원: 코어

주제

object

주제는 이 AdminNetworkPolicy가 적용되는 포드를 정의합니다. 호스트 네트워크 포드는 과목 선택에 포함되지 않습니다.

지원: 코어

3.1.2. .spec.egress

설명

Egress는 선택된 포드에 적용될 Egress 규칙 목록입니다. 각 ANP 인스턴스에는 총 100개의 규칙이 허용됩니다. 단일 ANP 객체 내에서의 퇴장 규칙의 상대적 우선순위(모든 객체가 우선순위를 공유함)는 규칙이 작성된 순서에 따라 결정됩니다. 따라서 탈출 규칙의 맨 위에 나타나는 규칙이 가장 높은 우선순위를 갖습니다. 출구 규칙이 없는 ANP는 출구 트래픽에 영향을 미치지 않습니다.

지원: 코어

유형
array

3.1.3. .spec.egress[]

설명
AdminNetworkPolicyEgressRule은 AdminNetworkPolicy의 Subject 필드에서 선택한 Pod에서 발생하는 특정 트래픽 세트에 대해 수행할 작업을 설명합니다. <network-policy-api:experimental:validation>
유형
object
필수 항목
  • 작업
  • 다음으로 변경
Expand
재산유형설명

작업

string

작업은 이 규칙이 일치하는 트래픽에 미치는 영향을 지정합니다. 현재 지원되는 작업은 다음과 같습니다. 허용: 선택한 트래픽을 허용합니다(NetworkPolicy에 의해 거부되었더라도). 거부: 선택한 트래픽을 거부합니다. 통과: 선택한 트래픽에 남아 있는 ANP 규칙을 건너뛰도록 지시한 다음, 해당 포드를 선택하는 모든 NetworkPolicy에 실행을 전달합니다. 어떠한 NetworkPolicies에서도 Pod가 선택되지 않으면 실행은 Pod를 선택하는 모든 BaselineAdminNetworkPolicies로 전달됩니다.

지원: 코어

name

string

이름은 이 규칙에 대한 식별자이며, 길이가 100자를 넘을 수 없습니다. 이 필드는 구현에서 적용되어 적용된 모든 AdminNetworkPolicies에 대한 관찰성, 가독성 및 오류 보고를 개선하는 데 도움이 됩니다.

지원: 코어

포트

array

포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 나가는 출구 트래픽에 대한 대상 포트 목록입니다. 포트가 설정되지 않으면 규칙은 포트를 통한 트래픽을 필터링하지 않습니다.

지원: 코어

ports[]

object

AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드만 설정해야 합니다.

다음으로 변경

array

'To'는 이 규칙이 적용되는 트래픽의 목적지 목록입니다. AdminNetworkPolicyEgressPeer가 발신 트래픽의 대상과 일치하는 경우 지정된 작업이 적용됩니다. 이 필드는 정의되어야 하며 최소한 하나의 항목을 포함해야 합니다.

지원: 코어

to[]

object

AdminNetworkPolicyEgressPeer는 트래픽을 허용하는 피어를 정의합니다. 주어진 피어에 대해 선택기 포인터 중 정확히 하나만 설정해야 합니다. 소비자가 필드가 하나도 설정되지 않은 것을 발견하면 알 수 없는 옵션이 지정되었다고 가정하고 실패 시 닫힙니다.

3.1.4. .spec.egress[].ports

설명

포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 나가는 출구 트래픽에 대한 대상 포트 목록입니다. 포트가 설정되지 않으면 규칙은 포트를 통한 트래픽을 필터링하지 않습니다.

지원: 코어

유형
array

3.1.5. .spec.egress[].ports[]

설명
AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드만 설정해야 합니다.
유형
object
Expand
재산유형설명

namedPort

string

NamedPort는 이름을 기반으로 포드의 포트를 선택합니다.

지원: 확장됨

<network-policy-api:experimental>

portNumber

object

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

portRange

object

PortRange는 제공된 시작 및 종료 값을 기반으로 포드의 포트 범위를 선택합니다.

지원: 코어

3.1.6. .spec.egress[].ports[].portNumber

설명

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

유형
object
필수 항목
  • port
  • 규약
Expand
재산유형설명

port

integer

숫자는 네트워크 포트 값을 정의합니다.

지원: 코어

규약

string

프로토콜은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: 코어

3.1.7. .spec.egress[].ports[].portRange

설명

PortRange는 제공된 시작 및 종료 값을 기반으로 포드의 포트 범위를 선택합니다.

지원: 코어

유형
object
필수 항목
  • end
  • start
Expand
재산유형설명

end

integer

End는 포트 범위의 끝인 네트워크 포트를 정의합니다. End 값은 Start보다 커야 합니다.

지원: 코어

규약

string

프로토콜은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: 코어

start

integer

시작은 포트 범위의 시작인 네트워크 포트를 정의합니다. 시작 값은 종료 값보다 작아야 합니다.

지원: 코어

3.1.8. .spec.egress[].to

설명

'To'는 이 규칙이 적용되는 트래픽의 목적지 목록입니다. AdminNetworkPolicyEgressPeer가 발신 트래픽의 대상과 일치하는 경우 지정된 작업이 적용됩니다. 이 필드는 정의되어야 하며 최소한 하나의 항목을 포함해야 합니다.

지원: 코어

유형
array

3.1.9. .spec.egress[].to[]

설명
AdminNetworkPolicyEgressPeer는 트래픽을 허용하는 피어를 정의합니다. 주어진 피어에 대해 선택기 포인터 중 정확히 하나만 설정해야 합니다. 소비자가 필드가 하나도 설정되지 않은 것을 발견하면 알 수 없는 옵션이 지정되었다고 가정하고 실패 시 닫힙니다.
유형
object
Expand
재산유형설명

네임스페이스

object

네임스페이스는 네임스페이스 세트 내의 모든 포드를 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

네트워크

배열(문자열)

네트워크는 CIDR 블록을 통해 피어를 선택하는 방법을 정의합니다. 이는 포드, 네임스페이스, 노드 피어가 선택할 수 없는 클러스터 외부에 있는 엔터티를 나타내기 위한 것이지만, 클러스터 내부 트래픽도 규칙에 대해 검사된다는 점에 유의하세요. 따라서 "0.0.0.0/0" 에 대한 트래픽을 허용하거나 거부하면 모든 IPv4 Pod 간 트래픽도 허용되거나 거부됩니다. 원하지 않으면 네트워크 규칙보다 모든 포드 트래픽을 먼저 전달하는 규칙을 추가하세요.

네트워크의 각 항목은 CIDR 형식으로 제공되어야 하며 IPv4 또는 IPv6이어야 합니다(예: "10.0.0.0/8" 또는 "fd00::/8").

네트워크에는 최대 25개의 CIDR을 지정할 수 있습니다.

지원: 확장됨

<network-policy-api:experimental>

노드

object

노드는 클러스터에서 노드 집합을 선택하는 방법을 정의합니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 노드를 선택합니다.

지원: 확장됨

<network-policy-api:experimental>

pods

object

Pod는 네임스페이스 집합에서 Pod 집합을 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

3.1.10. .spec.egress[].to[].namespaces

설명

네임스페이스는 네임스페이스 세트 내의 모든 포드를 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.11. .spec.egress[].to[].namespaces.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.12. .spec.egress[].to[].namespaces.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.13. .spec.egress[].to[].nodes

설명

노드는 클러스터에서 노드 집합을 선택하는 방법을 정의합니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 노드를 선택합니다.

지원: 확장됨

<network-policy-api:experimental>

유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.14. .spec.egress[].to[].nodes.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.15. .spec.egress[].to[].nodes.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.16. .spec.egress[].to[].pods

설명

Pod는 네임스페이스 집합에서 Pod 집합을 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

유형
object
필수 항목
  • namespaceSelector
  • podSelector
Expand
재산유형설명

namespaceSelector

object

NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector

object

PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.

3.1.17. .spec.egress[].to[].pods.namespaceSelector

설명
NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.18. .spec.egress[].to[].pods.namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.19. .spec.egress[].to[].pods.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.20. .spec.egress[].to[].pods.podSelector

설명
PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.21. .spec.egress[].to[].pods.podSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.22. .spec.egress[].to[].pods.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.23. .spec.ingress

설명

Ingress는 선택된 Pod에 적용될 Ingress 규칙 목록입니다. 각 ANP 인스턴스에는 총 100개의 규칙이 허용됩니다. 단일 ANP 객체 내에서 수신 규칙의 상대적 우선순위(모든 객체가 우선순위를 공유함)는 규칙이 작성된 순서에 따라 결정됩니다. 따라서, ingress 규칙의 맨 위에 나타나는 규칙이 가장 높은 우선순위를 갖습니다. 수신 규칙이 없는 ANP는 수신 트래픽에 영향을 미치지 않습니다.

지원: 코어

유형
array

3.1.24. .spec.ingress[]

설명
AdminNetworkPolicyIngressRule은 AdminNetworkPolicy의 Subject 필드에서 선택한 Pod로 향하는 특정 트래픽 세트에 대해 수행할 작업을 설명합니다.
유형
object
필수 항목
  • 작업
  • from
Expand
재산유형설명

작업

string

작업은 이 규칙이 일치하는 트래픽에 미치는 영향을 지정합니다. 현재 지원되는 작업은 다음과 같습니다. 허용: 선택한 트래픽을 허용합니다(NetworkPolicy에 의해 거부되었더라도). 거부: 선택한 트래픽을 거부합니다. 통과: 선택한 트래픽에 남아 있는 ANP 규칙을 건너뛰도록 지시한 다음, 해당 포드를 선택하는 모든 NetworkPolicy에 실행을 전달합니다. 어떠한 NetworkPolicies에서도 Pod가 선택되지 않으면 실행은 Pod를 선택하는 모든 BaselineAdminNetworkPolicies로 전달됩니다.

지원: 코어

from

array

출처는 이 규칙이 적용되는 트래픽 소스 목록입니다. AdminNetworkPolicyIngressPeer가 수신 트래픽 소스와 일치하는 경우 지정된 작업이 적용됩니다. 이 필드는 정의되어야 하며 최소한 하나의 항목을 포함해야 합니다.

지원: 코어

from[]

object

AdminNetworkPolicyIngressPeer는 트래픽을 허용하는 클러스터 내 피어를 정의합니다. 주어진 피어에 대해 선택기 포인터 중 정확히 하나만 설정해야 합니다. 소비자가 필드가 하나도 설정되지 않은 것을 발견하면 알 수 없는 옵션이 지정되었다고 가정하고 실패 시 닫힙니다.

name

string

이름은 이 규칙에 대한 식별자이며, 길이가 100자를 넘을 수 없습니다. 이 필드는 구현에서 적용되어 적용된 모든 AdminNetworkPolicies에 대한 관찰성, 가독성 및 오류 보고를 개선하는 데 도움이 됩니다.

지원: 코어

포트

array

포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 이 정책에 대해 선택된 포드(즉, 정책의 주체)에서 일치해야 하는 포트 목록입니다. 따라서 수신 트래픽의 대상 포트와 일치합니다. 포트가 설정되지 않으면 규칙은 포트를 통한 트래픽을 필터링하지 않습니다.

지원: 코어

ports[]

object

AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드만 설정해야 합니다.

3.1.25. .spec.ingress[].from

설명

출처는 이 규칙이 적용되는 트래픽 소스 목록입니다. AdminNetworkPolicyIngressPeer가 수신 트래픽 소스와 일치하는 경우 지정된 작업이 적용됩니다. 이 필드는 정의되어야 하며 최소한 하나의 항목을 포함해야 합니다.

지원: 코어

유형
array

3.1.26. .spec.ingress[].from[]

설명
AdminNetworkPolicyIngressPeer는 트래픽을 허용하는 클러스터 내 피어를 정의합니다. 주어진 피어에 대해 선택기 포인터 중 정확히 하나만 설정해야 합니다. 소비자가 필드가 하나도 설정되지 않은 것을 발견하면 알 수 없는 옵션이 지정되었다고 가정하고 실패 시 닫힙니다.
유형
object
Expand
재산유형설명

네임스페이스

object

네임스페이스는 네임스페이스 세트 내의 모든 포드를 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

pods

object

Pod는 네임스페이스 집합에서 Pod 집합을 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

3.1.27. .spec.ingress[].from[].namespaces

설명

네임스페이스는 네임스페이스 세트 내의 모든 포드를 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.28. .spec.ingress[].from[].namespaces.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.29. .spec.ingress[].from[].namespaces.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.30. .spec.ingress[].from[].pods

설명

Pod는 네임스페이스 집합에서 Pod 집합을 선택하는 방법을 정의합니다. 호스트 네트워크 포드는 이 유형의 피어에 포함되지 않습니다.

지원: 코어

유형
object
필수 항목
  • namespaceSelector
  • podSelector
Expand
재산유형설명

namespaceSelector

object

NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector

object

PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.

3.1.31. .spec.ingress[].from[].pods.namespaceSelector

설명
NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.32. .spec.ingress[].from[].pods.namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.33. .spec.ingress[].from[].pods.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.34. .spec.ingress[].from[].pods.podSelector

설명
PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.35. .spec.ingress[].from[].pods.podSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.36. .spec.ingress[].from[].pods.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.37. .spec.ingress[].ports

설명

포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 이 정책에 대해 선택된 포드(즉, 정책의 주체)에서 일치해야 하는 포트 목록입니다. 따라서 수신 트래픽의 대상 포트와 일치합니다. 포트가 설정되지 않으면 규칙은 포트를 통한 트래픽을 필터링하지 않습니다.

지원: 코어

유형
array

3.1.38. .spec.ingress[].ports[]

설명
AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드만 설정해야 합니다.
유형
object
Expand
재산유형설명

namedPort

string

NamedPort는 이름을 기반으로 포드의 포트를 선택합니다.

지원: 확장됨

<network-policy-api:experimental>

portNumber

object

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

portRange

object

PortRange는 제공된 시작 및 종료 값을 기반으로 포드의 포트 범위를 선택합니다.

지원: 코어

3.1.39. .spec.ingress[].ports[].portNumber

설명

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

유형
object
필수 항목
  • port
  • 규약
Expand
재산유형설명

port

integer

숫자는 네트워크 포트 값을 정의합니다.

지원: 코어

규약

string

프로토콜은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: 코어

3.1.40. .spec.ingress[].ports[].portRange

설명

PortRange는 제공된 시작 및 종료 값을 기반으로 포드의 포트 범위를 선택합니다.

지원: 코어

유형
object
필수 항목
  • end
  • start
Expand
재산유형설명

end

integer

End는 포트 범위의 끝인 네트워크 포트를 정의합니다. End 값은 Start보다 커야 합니다.

지원: 코어

규약

string

프로토콜은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: 코어

start

integer

시작은 포트 범위의 시작인 네트워크 포트를 정의합니다. 시작 값은 종료 값보다 작아야 합니다.

지원: 코어

3.1.41. .spec.subject

설명

주제는 이 AdminNetworkPolicy가 적용되는 포드를 정의합니다. 호스트 네트워크 포드는 과목 선택에 포함되지 않습니다.

지원: 코어

유형
object
Expand
재산유형설명

네임스페이스

object

네임스페이스는 네임스페이스 선택기를 통해 포드를 선택하는 데 사용됩니다.

pods

object

Pods는 네임스페이스와 Pod 선택기를 통해 Pod를 선택하는 데 사용됩니다.

3.1.42. .spec.subject.namespaces

설명
네임스페이스는 네임스페이스 선택기를 통해 포드를 선택하는 데 사용됩니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.43. .spec.subject.namespaces.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.44. .spec.subject.namespaces.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.45. .spec.subject.pods

설명
Pods는 네임스페이스와 Pod 선택기를 통해 Pod를 선택하는 데 사용됩니다.
유형
object
필수 항목
  • namespaceSelector
  • podSelector
Expand
재산유형설명

namespaceSelector

object

NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector

object

PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.

3.1.46. .spec.subject.pods.namespaceSelector

설명
NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.47. .spec.subject.pods.namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.48. .spec.subject.pods.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.49. .spec.subject.pods.podSelector

설명
PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

3.1.50. .spec.subject.pods.podSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

3.1.51. .spec.subject.pods.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

3.1.52. .status

설명
상태는 구현에서 보고되는 상태입니다.
유형
object
필수 항목
  • conditions
Expand
재산유형설명

conditions

array

 

conditions[]

object

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다. --- 이 구조체는 필드 경로 .status.conditions에서 배열로 직접 사용하도록 의도되었습니다. 예를 들면 다음과 같습니다.

type FooStatus struct{ // foo의 현재 상태에 대한 관찰 결과를 나타냅니다. // 알려진 .status.conditions.type은 "사용 가능", "진행 중", "저하됨"입니다. // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type 조건 []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"

// 기타 필드 }

3.1.53. .status.conditions

설명
유형
array

3.1.54. .status.conditions[]

설명

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다. --- 이 구조체는 필드 경로 .status.conditions에서 배열로 직접 사용하도록 의도되었습니다. 예를 들면 다음과 같습니다.

type FooStatus struct{
    // Represents the observations of a foo's current state.
    // Known .status.conditions.type are: "Available", "Progressing", and "Degraded"
    // +patchMergeKey=type
    // +patchStrategy=merge
    // +listType=map
    // +listMapKey=type
    Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
Copy to Clipboard Toggle word wrap
    // other fields
}
Copy to Clipboard Toggle word wrap
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
재산유형설명

lastTransitionTime

string

lastTransitionTime은 조건이 한 상태에서 다른 상태로 전환된 마지막 시간입니다. 이는 기본 조건이 변경된 시점이어야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

메시지는 전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건이 설정된 .metadata.generation을 나타냅니다. 예를 들어, .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 해당 조건은 인스턴스의 현재 상태를 기준으로 오래되었습니다.

reason

string

reason에는 조건의 마지막 전환에 대한 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 대한 예상 값과 의미를 정의하고, 해당 값이 보장된 API로 간주되는지 여부를 결정할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있을 수 없습니다.

status

string

조건의 상태는 True, False, Unknown 중 하나입니다.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다. --- 많은 .condition.type 값은 Available과 같은 리소스에서 일관성을 유지하지만, 임의의 조건이 유용할 수 있으므로(.node.status.conditions 참조) 충돌을 해결하는 기능이 중요합니다. 일치하는 정규식은 (dns1123SubdomainFmt/)?(qualifiedNameFmt)입니다.

3.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies

    • DELETE : AdminNetworkPolicy 컬렉션 삭제
    • GET : AdminNetworkPolicy 종류의 객체 목록
    • POST : AdminNetworkPolicy 생성
  • /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}

    • DELETE : AdminNetworkPolicy 삭제
    • GET : 지정된 AdminNetworkPolicy를 읽습니다.
    • PATCH : 지정된 AdminNetworkPolicy를 부분적으로 업데이트합니다.
    • PUT : 지정된 AdminNetworkPolicy를 교체합니다.
  • /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}/status

    • GET : 지정된 AdminNetworkPolicy의 상태를 읽습니다.
    • PATCH : 지정된 AdminNetworkPolicy의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 AdminNetworkPolicy의 상태를 바꿉니다.

3.2.1. /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies

HTTP 방법
DELETE
설명
AdminNetworkPolicy 컬렉션 삭제
Expand
표 3.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
AdminNetworkPolicy 종류의 객체 목록
Expand
표 3.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicyList schema

401 - 무단

HTTP 방법
POST
설명
AdminNetworkPolicy 생성
Expand
표 3.3. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 3.4. 본문 매개변수
매개변수유형설명

body

AdminNetworkPolicy 스키마

 
Expand
표 3.5. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicy 스키마

201 - 생성됨

AdminNetworkPolicy 스키마

202 - 승인됨

AdminNetworkPolicy 스키마

401 - 무단

3.2.2. /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}

Expand
표 3.6. 글로벌 경로 매개변수
매개변수유형설명

name

string

AdminNetworkPolicy의 이름

HTTP 방법
DELETE
설명
관리자NetworkPolicy 삭제
Expand
표 3.7. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 3.8. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 AdminNetworkPolicy 읽기
Expand
표 3.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicy 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 AdminNetworkPolicy를 부분적으로 업데이트
Expand
표 3.10. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 3.11. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicy 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 AdminNetworkPolicy를 대체합니다.
Expand
표 3.12. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 3.13. 본문 매개변수
매개변수유형설명

body

AdminNetworkPolicy 스키마

 
Expand
표 3.14. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicy 스키마

201 - 생성됨

AdminNetworkPolicy 스키마

401 - 무단

3.2.3. /apis/policy.networking.k8s.io/v1alpha1/adminnetworkpolicies/{name}/status

Expand
표 3.15. 글로벌 경로 매개변수
매개변수유형설명

name

string

AdminNetworkPolicy의 이름

HTTP 방법
GET
설명
지정된 AdminNetworkPolicy의 읽기 상태
Expand
표 3.16. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicy 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 AdminNetworkPolicy의 부분적으로 업데이트 상태
Expand
표 3.17. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 3.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicy 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 AdminNetworkPolicy의 상태 교체
Expand
표 3.19. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 3.20. 본문 매개변수
매개변수유형설명

body

AdminNetworkPolicy 스키마

 
Expand
표 3.21. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

AdminNetworkPolicy 스키마

201 - 생성됨

AdminNetworkPolicy 스키마

401 - 무단

4장. AdminPolicyBasedExternalRoute [k8s.ovn.org/v1]

설명
AdminPolicyBasedExternalRoute는 클러스터 관리자가 선택한 네임스페이스에 포함된 모든 Pod에 적용할 외부 게이트웨이 IP에 대한 정책을 구성할 수 있도록 하는 CRD입니다. 선택한 네임스페이스에 속하는 Pod의 송신 트래픽은 이러한 외부 게이트웨이 IP를 통해 라우팅됩니다.
유형
object
필수 항목
  • spec

4.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

AdminPolicyBasedExternalRouteSpec은 AdminPolicyBasedExternalRoute의 원하는 상태를 정의합니다.

status

object

AdminPolicyBasedRouteStatus에는 AdminPolicyBased 경로 유형의 관찰된 상태가 포함됩니다.

4.1.1. .spec

설명
AdminPolicyBasedExternalRouteSpec은 AdminPolicyBasedExternalRoute의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • from
  • nextHops
Expand
속성유형설명

from

object

from은 대상 네임스페이스를 이 CR로 결정할 선택기를 정의합니다.

nextHops

object

NextHops는 정적 및 동적이라는 두 가지 유형의 홉을 정의합니다. 각 홉은 하나 이상의 외부 게이트웨이 IP를 정의합니다.

4.1.2. .spec.from

설명
from은 대상 네임스페이스를 이 CR로 결정할 선택기를 정의합니다.
유형
object
필수 항목
  • namespaceSelector
Expand
속성유형설명

namespaceSelector

object

namespaceSelector는 이 CR에서 대상으로 할 네임스페이스를 결정하는 데 사용할 선택기를 정의합니다.

4.1.3. .spec.from.namespaceSelector

설명
namespaceSelector는 이 CR에서 대상으로 할 네임스페이스를 결정하는 데 사용할 선택기를 정의합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

4.1.4. .spec.from.namespaceSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

4.1.5. .spec.from.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

4.1.6. .spec.nextHops

설명
NextHops는 정적 및 동적이라는 두 가지 유형의 홉을 정의합니다. 각 홉은 하나 이상의 외부 게이트웨이 IP를 정의합니다.
유형
object
Expand
속성유형설명

dynamic

array

DynamicHops는 DynamicHop의 슬라이스를 정의합니다. 이 필드는 선택 사항입니다.

dynamic[]

object

DynamicHop은 동적 외부 게이트웨이 인터페이스에 대한 구성을 정의합니다. 이러한 인터페이스는 클러스터 내부에 있는 Pod 오브젝트로 래핑됩니다. NetworkAttachmentName 필드는 사용할 게이트웨이 IP를 검색할 때 사용할 multus 네트워크 이름의 이름을 캡처합니다. PodSelector 및 NamespaceSelector는 필수 필드입니다.

static

array

StaticHops는 StaticHop의 슬라이스를 정의합니다. 이 필드는 선택 사항입니다.

static[]

object

StaticHop은 외부 게이트웨이 인터페이스 역할을 하는 고정 IP의 구성을 정의합니다. IP 필드는 필수입니다.

4.1.7. .spec.nextHops.dynamic

설명
DynamicHops는 DynamicHop의 슬라이스를 정의합니다. 이 필드는 선택 사항입니다.
유형
array

4.1.8. .spec.nextHops.dynamic[]

설명
DynamicHop은 동적 외부 게이트웨이 인터페이스에 대한 구성을 정의합니다. 이러한 인터페이스는 클러스터 내부에 있는 Pod 오브젝트로 래핑됩니다. NetworkAttachmentName 필드는 사용할 게이트웨이 IP를 검색할 때 사용할 multus 네트워크 이름의 이름을 캡처합니다. PodSelector 및 NamespaceSelector는 필수 필드입니다.
유형
object
필수 항목
  • namespaceSelector
  • podSelector
Expand
속성유형설명

bfdEnabled

boolean

BFDEnabled는 인터페이스가 양방향 Forward Detection 프로토콜을 구현하는지 여부를 결정합니다. 기본값은 false입니다.

namespaceSelector

object

namespaceSelector는 Pod 게이트웨이가 있는 네임스페이스를 필터링하는 선택기를 정의합니다.

networkAttachmentName

string

NetworkAttachmentName은 게이트웨이 IP로 사용할 Pod IP를 검색할 때 사용할 multus 네트워크 이름을 결정합니다. 이 필드가 비어 있으면 논리는 포드가 HostNetwork로 구성되고 노드의 IP를 게이트웨이로 사용하고 있다고 가정합니다.

podSelector

object

podSelector는 외부 게이트웨이인 Pod를 필터링하는 선택기를 정의합니다.

4.1.9. .spec.nextHops.dynamic[].namespaceSelector

설명
namespaceSelector는 Pod 게이트웨이가 있는 네임스페이스를 필터링하는 선택기를 정의합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

4.1.10. .spec.nextHops.dynamic[].namespaceSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

4.1.11. .spec.nextHops.dynamic[].namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

4.1.12. .spec.nextHops.dynamic[].podSelector

설명
podSelector는 외부 게이트웨이인 Pod를 필터링하는 선택기를 정의합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

4.1.13. .spec.nextHops.dynamic[].podSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

4.1.14. .spec.nextHops.dynamic[].podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

4.1.15. .spec.nextHops.static

설명
StaticHops는 StaticHop의 슬라이스를 정의합니다. 이 필드는 선택 사항입니다.
유형
array

4.1.16. .spec.nextHops.static[]

설명
StaticHop은 외부 게이트웨이 인터페이스 역할을 하는 정적 IP의 구성을 정의합니다. IP 필드는 필수입니다.
유형
object
필수 항목
  • ip
Expand
재산유형설명

bfdEnabled

boolean

BFDEnabled는 인터페이스가 양방향 전달 감지 프로토콜을 구현하는지 여부를 결정합니다. 기본값은 false입니다.

ip

string

IP는 송신 트래픽에 사용되는 고정 IP를 정의합니다. IP는 IPv4 또는 IPv6가 될 수 있습니다.

4.1.17. .status

설명
AdminPolicyBasedRouteStatus에는 AdminPolicyBased 경로 유형의 관찰된 상태가 포함되어 있습니다.
유형
object
Expand
재산유형설명

lastTransitionTime

string

마지막 변경 사항이 적용된 시간을 캡처합니다.

메시지

배열(문자열)

객체 상태에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지 배열입니다.

status

string

AdminPolicyBasedRoute 리소스가 성공적으로 적용되었는지 여부를 간략하게 표시합니다.

4.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.ovn.org/v1/adminpolicybasedexternalroutes

    • DELETE : AdminPolicyBasedExternalRoute 컬렉션 삭제
    • GET : AdminPolicyBasedExternalRoute 종류의 객체 목록
    • POST : AdminPolicyBasedExternalRoute 생성
  • /apis/k8s.ovn.org/v1/adminpolicybasedexternalroutes/{name}

    • DELETE : AdminPolicyBasedExternalRoute 삭제
    • GET : 지정된 AdminPolicyBasedExternalRoute를 읽습니다.
    • PATCH : 지정된 AdminPolicyBasedExternalRoute를 부분적으로 업데이트합니다.
    • PUT : 지정된 AdminPolicyBasedExternalRoute를 교체합니다.
  • /apis/k8s.ovn.org/v1/adminpolicybasedexternalroutes/{name}/status

    • GET : 지정된 AdminPolicyBasedExternalRoute의 상태를 읽습니다.
    • PATCH : 지정된 AdminPolicyBasedExternalRoute의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 AdminPolicyBasedExternalRoute의 상태를 바꿉니다.

4.2.1. /apis/k8s.ovn.org/v1/adminpolicybasedexternalroutes

HTTP 방법
DELETE
설명
AdminPolicyBasedExternalRoute 컬렉션 삭제
Expand
표 4.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
AdminPolicyBasedExternalRoute 종류의 객체 목록
Expand
표 4.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRouteList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
AdminPolicyBasedExternalRoute 생성
Expand
표 4.3. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 4.4. 신체 매개변수
매개변수유형설명

body

AdminPolicyBasedExternalRoute schema

 
Expand
표 4.5. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRoute schema

201 - 생성됨

AdminPolicyBasedExternalRoute schema

202 - 승인됨

AdminPolicyBasedExternalRoute schema

401 - 승인되지 않음

비어 있는

4.2.2. /apis/k8s.ovn.org/v1/adminpolicybasedexternalroutes/{name}

Expand
표 4.6. 글로벌 경로 매개변수
매개변수유형설명

name

string

AdminPolicyBasedExternalRoute의 이름

HTTP 방법
DELETE
설명
delete an AdminPolicyBasedExternalRoute
Expand
표 4.7. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 4.8. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 AdminPolicyBasedExternalRoute를 읽습니다.
Expand
표 4.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRoute schema

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 AdminPolicyBasedExternalRoute를 부분적으로 업데이트합니다.
Expand
표 4.10. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 4.11. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRoute schema

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 AdminPolicyBasedExternalRoute를 교체합니다.
Expand
표 4.12. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 4.13. 신체 매개변수
매개변수유형설명

body

AdminPolicyBasedExternalRoute schema

 
Expand
표 4.14. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRoute schema

201 - 생성됨

AdminPolicyBasedExternalRoute schema

401 - 승인되지 않음

비어 있는

4.2.3. /apis/k8s.ovn.org/v1/adminpolicybasedexternalroutes/{name}/status

Expand
표 4.15. 글로벌 경로 매개변수
매개변수유형설명

name

string

AdminPolicyBasedExternalRoute의 이름

HTTP 방법
얻다
설명
지정된 AdminPolicyBasedExternalRoute의 상태를 읽습니다.
Expand
표 4.16. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRoute schema

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 AdminPolicyBasedExternalRoute의 상태를 부분적으로 업데이트합니다.
Expand
표 4.17. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 4.18. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRoute schema

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 AdminPolicyBasedExternalRoute의 상태를 바꿉니다.
Expand
표 4.19. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 4.20. 신체 매개변수
매개변수유형설명

body

AdminPolicyBasedExternalRoute schema

 
Expand
표 4.21. HTTP 응답
HTTP 코드응답 본문

200 - 확인

AdminPolicyBasedExternalRoute schema

201 - 생성됨

AdminPolicyBasedExternalRoute schema

401 - 승인되지 않음

비어 있는

5장. BaselineAdminNetworkPolicy [policy.networking.k8s.io/v1alpha1]

설명
BaselineAdminNetworkPolicy는 AdminNetworkPolicy API의 일부인 클러스터 수준 리소스입니다.
유형
object
필수 항목
  • 메타데이터
  • spec

5.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

BaselineAdminNetworkPolicy의 원하는 동작에 대한 사양입니다.

status

object

상태는 구현에서 보고되는 상태입니다.

5.1.1. .spec

설명
BaselineAdminNetworkPolicy의 원하는 동작에 대한 사양입니다.
유형
object
필수 항목
  • 주제
Expand
재산유형설명

출구

array

Egress는 AdminNetworkPolicy 또는 NetworkPolicy 규칙과 일치하지 않을 경우 선택된 포드에 적용될 Egress 규칙 목록입니다. 각 BANP 인스턴스에는 총 100개의 탈출 규칙이 허용됩니다. 단일 BANP 객체 내에서 탈출 규칙의 상대적 우선순위는 규칙이 작성된 순서에 따라 결정됩니다. 따라서 탈출 규칙의 맨 위에 나타나는 규칙이 가장 높은 우선순위를 갖습니다. 탈출 규칙이 없는 BANP는 탈출 트래픽에 영향을 미치지 않습니다.

지원: 코어

egress[]

object

BaselineAdminNetworkPolicyEgressRule은 BaselineAdminNetworkPolicy의 Subject 필드에서 선택한 Pod에서 발생하는 특정 트래픽 세트에 대해 수행할 작업을 설명합니다. <network-policy-api:experimental:validation>

입구

array

Ingress는 AdminNetworkPolicy 또는 NetworkPolicy 규칙과 일치하지 않을 경우 선택된 포드에 적용될 Ingress 규칙 목록입니다. 각 BANP 인스턴스에는 총 100개의 Ingress 규칙이 허용됩니다. 단일 BANP 객체 내에서 수신 규칙의 상대적 우선순위는 규칙이 작성된 순서에 따라 결정됩니다. 따라서, ingress 규칙의 맨 위에 나타나는 규칙이 가장 높은 우선순위를 갖습니다. 수신 규칙이 없는 BANP는 수신 트래픽에 영향을 미치지 않습니다.

지원: 코어

ingress[]

object

BaselineAdminNetworkPolicyIngressRule은 BaselineAdminNetworkPolicy의 Subject 필드에서 선택한 Pod로 향하는 특정 트래픽 세트에 대해 수행할 작업을 설명합니다.

주제

object

주제는 이 BaselineAdminNetworkPolicy가 적용되는 포드를 정의합니다. 호스트 네트워크 포드는 과목 선택에 포함되지 않습니다.

지원: 코어

5.1.2. .spec.egress

설명

Egress는 AdminNetworkPolicy 또는 NetworkPolicy 규칙과 일치하지 않을 경우 선택된 포드에 적용될 Egress 규칙 목록입니다. 각 BANP 인스턴스에는 총 100개의 탈출 규칙이 허용됩니다. 단일 BANP 객체 내에서 탈출 규칙의 상대적 우선순위는 규칙이 작성된 순서에 따라 결정됩니다. 따라서 탈출 규칙의 맨 위에 나타나는 규칙이 가장 높은 우선순위를 갖습니다. 탈출 규칙이 없는 BANP는 탈출 트래픽에 영향을 미치지 않습니다.

지원: 코어

유형
array

5.1.3. .spec.egress[]

설명
BaselineAdminNetworkPolicyEgressRule은 BaselineAdminNetworkPolicy의 Subject 필드에서 선택한 Pod에서 발생하는 특정 트래픽 세트에 대해 수행할 작업을 설명합니다. <network-policy-api:experimental:validation>
유형
object
필수 항목
  • 작업
  • 다음으로 변경
Expand
재산유형설명

작업

string

작업은 이 규칙이 일치하는 트래픽에 미치는 영향을 지정합니다. 현재 다음 작업이 지원됩니다. 허용: 선택한 트래픽 허용 거부: 선택한 트래픽 거부

지원: 코어

name

string

이름은 이 규칙에 대한 식별자이며, 길이가 100자를 넘을 수 없습니다. 이 필드는 구현에서 적용된 모든 BaselineAdminNetworkPolicies에 대한 관찰성, 가독성 및 오류 보고를 개선하는 데 사용되어야 합니다.

지원: 코어

포트

array

포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 나가는 출구 트래픽에 대한 대상 포트 목록입니다. 포트가 설정되지 않으면 규칙은 포트를 통한 트래픽을 필터링하지 않습니다.

ports[]

object

AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드만 설정해야 합니다.

다음으로 변경

array

목적지는 이 규칙이 적용되는 트래픽의 목적지 목록입니다. AdminNetworkPolicyEgressPeer가 발신 트래픽의 대상과 일치하는 경우 지정된 작업이 적용됩니다. 이 필드는 정의되어야 하며 최소한 하나의 항목을 포함해야 합니다.

지원: 코어

to[]

object

AdminNetworkPolicyEgressPeer는 트래픽을 허용하는 피어를 정의합니다. 주어진 피어에 대해 선택기 포인터 중 정확히 하나만 설정해야 합니다. 소비자가 필드가 하나도 설정되지 않은 것을 발견하면 알 수 없는 옵션이 지정되었다고 가정하고 실패 시 닫힙니다.

5.1.4. .spec.egress[].ports

설명
포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 나가는 출구 트래픽에 대한 대상 포트 목록입니다. 포트가 설정되지 않으면 규칙은 포트를 통한 트래픽을 필터링하지 않습니다.
유형
array

5.1.5. .spec.egress[].ports[]

설명
AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드만 설정해야 합니다.
유형
object
Expand
재산유형설명

namedPort

string

NamedPort는 이름을 기반으로 포드의 포트를 선택합니다.

지원: 확장됨

<network-policy-api:experimental>

portNumber

object

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

portRange

object

PortRange는 제공된 시작 및 종료 값을 기반으로 포드의 포트 범위를 선택합니다.

지원: 코어

5.1.6. .spec.egress[].ports[].portNumber

설명

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

유형
object
필수 항목
  • port
  • 규약
Expand
재산유형설명

port

integer

숫자는 네트워크 포트 값을 정의합니다.

지원: 코어

규약

string

프로토콜은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: 코어

5.1.7. .spec.egress[].ports[].portRange

설명

PortRange는 제공된 시작 및 종료 값을 기반으로 포드의 포트 범위를 선택합니다.

지원: 코어

유형
object
필수 항목
  • end
  • start
Expand
재산유형설명

end

integer

end는 포트 범위의 끝인 네트워크 포트를 정의하며 End 값은 Start보다 커야 합니다.

지원: Core

프로토콜

string

protocol은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: Core

start

integer

start는 포트 범위의 시작인 네트워크 포트를 정의하며 시작 값은 End 값보다 작아야 합니다.

지원: Core

5.1.8. .spec.egress[].to

설명

to는 이 규칙이 적용되는 트래픽의 목록입니다. AdminNetworkPolicyEgressPeer가 발신 트래픽의 대상과 일치하는 경우 지정된 작업이 적용됩니다. 이 필드를 정의하고 하나 이상의 항목을 포함해야 합니다.

지원: Core

유형
array

5.1.9. .spec.egress[].to[]

설명
AdminNetworkPolicyEgressPeer는 트래픽을 허용할 피어를 정의합니다. 지정된 피어에 대해 선택기 포인터 중 하나만 설정해야 합니다. 소비자가 해당 필드가 설정되지 않은 경우 알 수 없는 옵션이 지정되어 실패한다고 가정해야 합니다.
유형
object
Expand
속성유형설명

네임스페이스

object

네임스페이스는 일련의 네임스페이스 내에서 모든 Pod를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

네트워크

배열(문자열)

네트워크는 CIDR 블록을 통해 피어를 선택하는 방법을 정의합니다. 이는 Pod, 네임스페이스 및 노드 피어에서 선택할 수 없는 클러스터 외부에 있는 엔터티를 표시하기 위한 것입니다. 그러나 클러스터 내부 트래픽도 규칙에 대해 확인합니다. 따라서 "0.0.0.0/0" 으로 트래픽을 허용하거나 거부하면 모든 IPv4 pod-to-pod 트래픽도 허용하거나 거부합니다. 이를 원하지 않는 경우 네트워크 규칙 앞에 모든 Pod 트래픽을 전달하는 규칙을 추가합니다.

네트워크의 각 항목은 CIDR 형식으로 제공해야 하며 IPv4 또는 IPv6(예: "10.0.0.0/8" 또는 "fd00::/8")이어야 합니다.

네트워크에 최대 25개의 CIDR이 지정될 수 있습니다.

지원: 확장

<network-policy-api:experimental>

노드

object

노드는 클러스터에서 노드 집합을 선택하는 방법을 정의합니다. 이 필드는 표준 라벨 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 노드를 선택합니다.

지원: 확장

<network-policy-api:experimental>

pods

object

Pod는 네임스페이스 세트에서 Pod 세트를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

5.1.10. .spec.egress[].to[].namespaces

설명

네임스페이스는 일련의 네임스페이스 내에서 모든 Pod를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

5.1.11. .spec.egress[].to[].namespaces.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

5.1.12. .spec.egress[].to[].namespaces.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.13. .spec.egress[].to[].nodes

설명

노드는 클러스터에서 노드 집합을 선택하는 방법을 정의합니다. 이 필드는 표준 라벨 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 노드를 선택합니다.

지원: 확장

<network-policy-api:experimental>

유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

5.1.14. .spec.egress[].to[].nodes.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

5.1.15. .spec.egress[].to[].nodes.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.16. .spec.egress[].to[].pods

설명

Pod는 네임스페이스 세트에서 Pod 세트를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

유형
object
필수 항목
  • namespaceSelector
  • podSelector
Expand
속성유형설명

namespaceSelector

object

namespaceSelector는 표준 라벨 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector

object

podSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.

5.1.17. .spec.egress[].to[].pods.namespaceSelector

설명
namespaceSelector는 표준 라벨 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

5.1.18. .spec.egress[].to[].pods.namespaceSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

5.1.19. .spec.egress[].to[].pods.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.20. .spec.egress[].to[].pods.podSelector

설명
podSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

5.1.21. .spec.egress[].to[].pods.podSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

5.1.22. .spec.egress[].to[].pods.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.23. .spec.ingress

설명

Ingress는 AdminNetworkPolicy 또는 NetworkPolicy 규칙과 일치하지 않는 경우 선택한 Pod에 적용할 Ingress 규칙 목록입니다. 각 BANP 인스턴스에서 총 100개의 인그레스 규칙이 허용됩니다. 단일 BANP 오브젝트 내의 수신 규칙의 상대적 우선순위는 규칙이 작성된 순서에 따라 결정됩니다. 따라서 수신 규칙 상단에 표시되는 규칙이 우선 순위가 가장 높습니다. 수신 규칙이 없는 BANP는 Ingress 트래픽에 영향을 미치지 않습니다.

지원: Core

유형
array

5.1.24. .spec.ingress[]

설명
BaselineAdminNetworkPolicyIngressRule은 BaselineAdminNetworkPolicy의 Subject 필드에서 선택한 Pod에 대해 예정된 특정 트래픽 세트를 수행할 작업을 설명합니다.
유형
object
필수 항목
  • 작업
  • from
Expand
속성유형설명

작업

string

action은 이 규칙이 일치하는 트래픽에 미치는 영향을 지정합니다. 현재 지원되는 작업: 허용: 선택한 트래픽 거부: 선택한 트래픽을 거부합니다.

지원: Core

from

array

from은 이 규칙이 적용되는 트래픽의 목록입니다. AdminNetworkPolicyIngressPeer가 들어오는 트래픽 소스와 일치하는 경우 지정된 작업이 적용됩니다. 이 필드를 정의하고 하나 이상의 항목을 포함해야 합니다.

지원: Core

from[]

object

AdminNetworkPolicyIngressPeer는 트래픽을 허용하도록 클러스터 내 피어를 정의합니다. 지정된 피어에 대해 선택기 포인터 중 하나만 설정해야 합니다. 소비자가 해당 필드가 설정되지 않은 경우 알 수 없는 옵션이 지정되어 실패한다고 가정해야 합니다.

name

string

name은 이 규칙의 식별자이며 길이가 100자를 초과할 수 없습니다. 이 필드는 적용된 BaselineAdminNetworkPolicies에 대한 관찰 가능성, 가독성 및 오류 보고를 개선하는 데 도움이 되도록 구현에 사용해야 합니다.

지원: Core

포트

array

포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 이 정책에 대해 선택한 Pod, 즉 정책의 제목과 일치해야 하는 포트 목록입니다. 따라서 수신 트래픽의 대상 포트에서 일치합니다. Ports가 설정되지 않은 경우 규칙에서 포트를 통해 트래픽을 필터링하지 않습니다.

지원: Core

ports[]

object

AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드를 설정해야 합니다.

5.1.25. .spec.ingress[].from

설명

from은 이 규칙이 적용되는 트래픽의 목록입니다. AdminNetworkPolicyIngressPeer가 들어오는 트래픽 소스와 일치하는 경우 지정된 작업이 적용됩니다. 이 필드를 정의하고 하나 이상의 항목을 포함해야 합니다.

지원: Core

유형
array

5.1.26. .spec.ingress[].from[]

설명
AdminNetworkPolicyIngressPeer는 트래픽을 허용하도록 클러스터 내 피어를 정의합니다. 지정된 피어에 대해 선택기 포인터 중 하나만 설정해야 합니다. 소비자가 해당 필드가 설정되지 않은 경우 알 수 없는 옵션이 지정되어 실패한다고 가정해야 합니다.
유형
object
Expand
속성유형설명

네임스페이스

object

네임스페이스는 일련의 네임스페이스 내에서 모든 Pod를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

pods

object

Pod는 네임스페이스 세트에서 Pod 세트를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

5.1.27. .spec.ingress[].from[].namespaces

설명

네임스페이스는 일련의 네임스페이스 내에서 모든 Pod를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

5.1.28. .spec.ingress[].from[].namespaces.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

5.1.29. .spec.ingress[].from[].namespaces.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.30. .spec.ingress[].from[].pods

설명

Pod는 네임스페이스 세트에서 Pod 세트를 선택하는 방법을 정의합니다. 호스트 네트워크 Pod는 이 유형의 피어에 포함되지 않습니다.

지원: Core

유형
object
필수 항목
  • namespaceSelector
  • podSelector
Expand
속성유형설명

namespaceSelector

object

namespaceSelector는 표준 라벨 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector

object

podSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.

5.1.31. .spec.ingress[].from[].pods.namespaceSelector

설명
NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

5.1.32. .spec.ingress[].from[].pods.namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

5.1.33. .spec.ingress[].from[].pods.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.34. .spec.ingress[].from[].pods.podSelector

설명
PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 설정됩니다.

5.1.35. .spec.ingress[].from[].pods.podSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

5.1.36. .spec.ingress[].from[].pods.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.37. .spec.ingress[].ports

설명

포트를 사용하면 포트 및 프로토콜을 기반으로 트래픽을 일치시킬 수 있습니다. 이 필드는 이 정책에 대해 선택한 Pod, 즉 정책의 제목과 일치해야 하는 포트 목록입니다. 따라서 수신 트래픽의 대상 포트에서 일치합니다. Ports가 설정되지 않은 경우 규칙에서 포트를 통해 트래픽을 필터링하지 않습니다.

지원: Core

유형
array

5.1.38. .spec.ingress[].ports[]

설명
AdminNetworkPolicyPort는 Pod에서 네트워크 포트를 선택하는 방법을 설명합니다. 정확히 하나의 필드를 설정해야 합니다.
유형
object
Expand
속성유형설명

namedPort

string

NamedPort는 이름을 기반으로 포드의 포트를 선택합니다.

지원: 확장됨

<network-policy-api:experimental>

portNumber

object

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

portRange

object

PortRange는 제공된 시작 및 종료 값을 기반으로 포드의 포트 범위를 선택합니다.

지원: 코어

5.1.39. .spec.ingress[].ports[].portNumber

설명

포트는 포드의 개수에 따라 포트를 선택합니다.

지원: 코어

유형
object
필수 항목
  • port
  • 규약
Expand
재산유형설명

port

integer

숫자는 네트워크 포트 값을 정의합니다.

지원: 코어

규약

string

프로토콜은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: 코어

5.1.40. .spec.ingress[].ports[].portRange

설명

portrange는 제공된 시작 및 엔드 값을 기반으로 Pod에서 포트 범위를 선택합니다.

지원: Core

유형
object
필수 항목
  • end
  • start
Expand
속성유형설명

end

integer

end는 포트 범위의 끝인 네트워크 포트를 정의하며 End 값은 Start보다 커야 합니다.

지원: Core

프로토콜

string

프로토콜은 트래픽이 일치해야 하는 네트워크 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

지원: 코어

start

integer

시작은 포트 범위의 시작인 네트워크 포트를 정의합니다. 시작 값은 종료 값보다 작아야 합니다.

지원: 코어

5.1.41. .spec.subject

설명

주제는 이 BaselineAdminNetworkPolicy가 적용되는 포드를 정의합니다. 호스트 네트워크 포드는 과목 선택에 포함되지 않습니다.

지원: 코어

유형
object
Expand
재산유형설명

네임스페이스

object

네임스페이스는 네임스페이스 선택기를 통해 포드를 선택하는 데 사용됩니다.

pods

object

Pods는 네임스페이스와 Pod 선택기를 통해 Pod를 선택하는 데 사용됩니다.

5.1.42. .spec.subject.namespaces

설명
네임스페이스는 네임스페이스 선택기를 통해 포드를 선택하는 데 사용됩니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

5.1.43. .spec.subject.namespaces.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

5.1.44. .spec.subject.namespaces.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.45. .spec.subject.pods

설명
Pods는 네임스페이스와 Pod 선택기를 통해 Pod를 선택하는 데 사용됩니다.
유형
object
필수 항목
  • namespaceSelector
  • podSelector
Expand
재산유형설명

namespaceSelector

object

NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector

object

PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.

5.1.46. .spec.subject.pods.namespaceSelector

설명
NamespaceSelector는 표준 레이블 선택기 의미 체계를 따릅니다. 비어 있으면 모든 네임스페이스를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

5.1.47. .spec.subject.pods.namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

5.1.48. .spec.subject.pods.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.49. .spec.subject.pods.podSelector

설명
PodSelector는 네임스페이스 내에서 Pod를 명시적으로 선택하는 데 사용됩니다. 비어 있으면 모든 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

5.1.50. .spec.subject.pods.podSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

5.1.51. .spec.subject.pods.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

5.1.52. .status

설명
상태는 구현에서 보고되는 상태입니다.
유형
object
필수 항목
  • conditions
Expand
재산유형설명

conditions

array

 

conditions[]

object

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다. --- 이 구조체는 필드 경로 .status.conditions에서 배열로 직접 사용하도록 의도되었습니다. 예를 들면 다음과 같습니다.

type FooStatus struct{ // foo의 현재 상태에 대한 관찰 결과를 나타냅니다. // 알려진 .status.conditions.type은 "사용 가능", "진행 중", "저하됨"입니다. // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type 조건 []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"

// 기타 필드 }

5.1.53. .status.conditions

설명
유형
array

5.1.54. .status.conditions[]

설명

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다. --- 이 구조체는 필드 경로 .status.conditions에서 배열로 직접 사용하도록 의도되었습니다. 예를 들면 다음과 같습니다.

type FooStatus struct{
    // Represents the observations of a foo's current state.
    // Known .status.conditions.type are: "Available", "Progressing", and "Degraded"
    // +patchMergeKey=type
    // +patchStrategy=merge
    // +listType=map
    // +listMapKey=type
    Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
Copy to Clipboard Toggle word wrap
    // other fields
}
Copy to Clipboard Toggle word wrap
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
재산유형설명

lastTransitionTime

string

lastTransitionTime은 조건이 한 상태에서 다른 상태로 전환된 마지막 시간입니다. 이는 기본 조건이 변경된 시점이어야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

메시지는 전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건이 설정된 .metadata.generation을 나타냅니다. 예를 들어, .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 해당 조건은 인스턴스의 현재 상태를 기준으로 오래되었습니다.

reason

string

reason에는 조건의 마지막 전환에 대한 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 대한 예상 값과 의미를 정의하고, 해당 값이 보장된 API로 간주되는지 여부를 결정할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있을 수 없습니다.

status

string

조건의 상태는 True, False, Unknown 중 하나입니다.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다. --- 많은 .condition.type 값은 Available과 같은 리소스에서 일관성을 유지하지만, 임의의 조건이 유용할 수 있으므로(.node.status.conditions 참조) 충돌을 해결하는 기능이 중요합니다. 일치하는 정규식은 (dns1123SubdomainFmt/)?(qualifiedNameFmt)입니다.

5.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/policy.networking.k8s.io/v1alpha1/baselineadminnetworkpolicies

    • DELETE : BaselineAdminNetworkPolicy 컬렉션 삭제
    • GET : BaselineAdminNetworkPolicy 종류의 객체 목록
    • POST : BaselineAdminNetworkPolicy 생성
  • /apis/policy.networking.k8s.io/v1alpha1/baselineadminnetworkpolicies/{name}

    • DELETE : BaselineAdminNetworkPolicy 삭제
    • GET : 지정된 BaselineAdminNetworkPolicy를 읽습니다.
    • PATCH : 지정된 BaselineAdminNetworkPolicy를 부분적으로 업데이트합니다.
    • PUT : 지정된 BaselineAdminNetworkPolicy를 교체합니다.
  • /apis/policy.networking.k8s.io/v1alpha1/baselineadminnetworkpolicies/{name}/status

    • GET : 지정된 BaselineAdminNetworkPolicy의 상태를 읽습니다.
    • PATCH : 지정된 BaselineAdminNetworkPolicy의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 BaselineAdminNetworkPolicy의 상태를 바꿉니다.

5.2.1. /apis/policy.networking.k8s.io/v1alpha1/baselineadminnetworkpolicies

HTTP 방법
DELETE
설명
BaselineAdminNetworkPolicy 컬렉션 삭제
Expand
표 5.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
BaselineAdminNetworkPolicy 종류의 객체 목록
Expand
표 5.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

BaselineAdminNetworkPolicyList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
BaselineAdminNetworkPolicy를 생성합니다
Expand
표 5.3. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 5.4. 신체 매개변수
매개변수유형설명

body

BaselineAdminNetworkPolicy 스키마

 
Expand
표 5.5. HTTP 응답
HTTP 코드응답 본문

200 - 확인

BaselineAdminNetworkPolicy 스키마

201 - 생성됨

BaselineAdminNetworkPolicy 스키마

202 - 승인됨

BaselineAdminNetworkPolicy 스키마

401 - 승인되지 않음

비어 있는

5.2.2. /apis/policy.networking.k8s.io/v1alpha1/baselineadminnetworkpolicies/{name}

Expand
표 5.6. 글로벌 경로 매개변수
매개변수유형설명

name

string

BaselineAdminNetworkPolicy의 이름

HTTP 방법
DELETE
설명
BaselineAdminNetworkPolicy 삭제
Expand
표 5.7. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 5.8. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 BaselineAdminNetworkPolicy를 읽습니다.
Expand
표 5.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

BaselineAdminNetworkPolicy 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 BaselineAdminNetworkPolicy를 부분적으로 업데이트합니다.
Expand
표 5.10. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 5.11. HTTP 응답
HTTP 코드응답 본문

200 - 확인

BaselineAdminNetworkPolicy 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 BaselineAdminNetworkPolicy를 교체
Expand
표 5.12. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 5.13. 본문 매개변수
매개변수유형설명

body

BaselineAdminNetworkPolicy 스키마

 
Expand
표 5.14. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

BaselineAdminNetworkPolicy 스키마

201 - 생성됨

BaselineAdminNetworkPolicy 스키마

401 - 무단

5.2.3. /apis/policy.networking.k8s.io/v1alpha1/baselineadminnetworkpolicies/{name}/status

Expand
표 5.15. 글로벌 경로 매개변수
매개변수유형설명

name

string

BaselineAdminNetworkPolicy의 이름

HTTP 방법
GET
설명
지정된 BaselineAdminNetworkPolicy의 읽기 상태
Expand
표 5.16. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

BaselineAdminNetworkPolicy 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 BaselineAdminNetworkPolicy의 부분적으로 업데이트 상태
Expand
표 5.17. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 5.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

BaselineAdminNetworkPolicy 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 BaselineAdminNetworkPolicy의 상태 교체
Expand
표 5.19. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 5.20. 본문 매개변수
매개변수유형설명

body

BaselineAdminNetworkPolicy 스키마

 
Expand
표 5.21. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

BaselineAdminNetworkPolicy 스키마

201 - 생성됨

BaselineAdminNetworkPolicy 스키마

401 - 무단

6장. CloudPrivateIPConfig [cloud.network.openshift.io/v1]

설명

CloudPrivateIPConfig는 클라우드 VM과 연결된 기본 NIC에 대해 프라이빗 IP 주소 할당을 수행합니다. 이 작업은 IP를 할당해야 하는 IP 및 Kubernetes 노드를 지정하여 수행됩니다. 이 CRD는 클러스터 네트워크를 관리하는 네트워크 플러그인에서 사용하기 위한 것입니다. 사양 측은 네트워크 플러그인에서 요청한 원하는 상태를 나타내며 상태 측은 이 CRD의 컨트롤러가 실행된 현재 상태를 나타냅니다. 사용자가 수정할 수 있는 권한이 없으며, 어떤 이유로 cluster-admin에서 편집하도록 결정하는 경우 다음 네트워크 플러그인이 오브젝트를 조정할 때 해당 변경 사항을 덮어씁니다. 참고: CR 이름은 요청된 개인 IP 주소를 지정해야 합니다(IPv4 또는 IPv6)일 수 있습니다.

호환성 수준 1: 최소 12 개월 또는 3 개의 마이너 릴리스 (더 긴 버전) 동안 주요 릴리스 내에서 사용할 수 있습니다.

유형
object
필수 항목
  • spec

6.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec은 원하는 개인 IP 요청의 정의입니다.

status

object

Status는 원하는 개인 IP 요청의 상태를 확인합니다. 읽기 전용입니다.

6.1.1. .spec

설명
spec은 원하는 개인 IP 요청의 정의입니다.
유형
object
Expand
속성유형설명

노드

string

노드는 Kubernetes 필드에 지정된 대로 노드 이름입니다. node.metadata.name

6.1.2. .status

설명
Status는 원하는 개인 IP 요청의 상태를 확인합니다. 읽기 전용입니다.
유형
object
필수 항목
  • conditions
Expand
속성유형설명

conditions

array

condition은 개인 IP 및 해당 상태의 할당 조건입니다.

conditions[]

object

condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.

노드

string

노드는 Kubernetes 필드에 지정된 대로 노드 이름입니다. node.metadata.name

6.1.3. .status.conditions

설명
condition은 개인 IP 및 해당 상태의 할당 조건입니다.
유형
array

6.1.4. .status.conditions[]

설명
condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
속성유형설명

lastTransitionTime

string

lastTransitionTime은 마지막으로 한 상태에서 다른 상태로 전환된 시간입니다. 기본 조건이 변경된 경우여야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

message는 변환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건에 따라 설정된 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 현재 인스턴스 상태와 관련된 조건이 최신 상태가 아닙니다.

reason

string

이유에는 조건의 마지막 전환 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 예상되는 값과 의미를 정의할 수 있으며 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있지 않을 수 있습니다.

status

string

조건의 상태, True, False, 알 수 없음.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

6.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/cloud.network.openshift.io/v1/cloudprivateipconfigs

    • DELETE: CloudPrivateIPConfig 컬렉션 삭제
    • GET: 종류의 CloudPrivateIPConfig의 오브젝트 나열
    • POST: CloudPrivateIPConfig 생성
  • /apis/cloud.network.openshift.io/v1/cloudprivateipconfigs/{name}

    • DELETE: CloudPrivateIPConfig 삭제
    • GET: 지정된 CloudPrivateIPConfig 읽기
    • PATCH: 지정된 CloudPrivateIPConfig를 부분적으로 업데이트
    • PUT: 지정된 CloudPrivateIPConfig를 교체
  • /apis/cloud.network.openshift.io/v1/cloudprivateipconfigs/{name}/status

    • GET: 지정된 CloudPrivateIPConfig의 읽기 상태
    • PATCH: 지정된 CloudPrivateIPConfig의 부분 업데이트 상태
    • PUT: 지정된 CloudPrivateIPConfig의 상태 교체

6.2.1. /apis/cloud.network.openshift.io/v1/cloudprivateipconfigs

HTTP 방법
DELETE
설명
CloudPrivateIPConfig 컬렉션 삭제
Expand
표 6.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
CloudPrivateIPConfig 유형의 오브젝트 나열
Expand
표 6.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

CloudPrivateIPConfigList schema

401 - 무단

HTTP 방법
POST
설명
CloudPrivateIPConfig 생성
Expand
표 6.3. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 6.4. 본문 매개변수
매개변수유형설명

body

CloudPrivateIPConfig schema

 
Expand
표 6.5. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

CloudPrivateIPConfig schema

201 - 생성됨

CloudPrivateIPConfig schema

202 - 승인됨

CloudPrivateIPConfig schema

401 - 무단

6.2.2. /apis/cloud.network.openshift.io/v1/cloudprivateipconfigs/{name}

Expand
표 6.6. 글로벌 경로 매개변수
매개변수유형설명

name

string

CloudPrivateIPConfig의 이름

HTTP 방법
DELETE
설명
delete a CloudPrivateIPConfig
Expand
표 6.7. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 6.8. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 CloudPrivateIPConfig 읽기
Expand
표 6.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

CloudPrivateIPConfig schema

401 - 무단

HTTP 방법
PATCH
설명
지정된 CloudPrivateIPConfig를 부분적으로 업데이트
Expand
표 6.10. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 6.11. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

CloudPrivateIPConfig schema

401 - 무단

HTTP 방법
PUT
설명
지정된 CloudPrivateIPConfig를 교체
Expand
표 6.12. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 6.13. 본문 매개변수
매개변수유형설명

body

CloudPrivateIPConfig schema

 
Expand
표 6.14. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

CloudPrivateIPConfig schema

201 - 생성됨

CloudPrivateIPConfig schema

401 - 무단

6.2.3. /apis/cloud.network.openshift.io/v1/cloudprivateipconfigs/{name}/status

Expand
표 6.15. 글로벌 경로 매개변수
매개변수유형설명

name

string

CloudPrivateIPConfig의 이름

HTTP 방법
GET
설명
지정된 CloudPrivateIPConfig의 상태 확인
Expand
표 6.16. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

CloudPrivateIPConfig schema

401 - 무단

HTTP 방법
PATCH
설명
지정된 CloudPrivateIPConfig의 부분적으로 업데이트 상태
Expand
표 6.17. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 6.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

CloudPrivateIPConfig schema

401 - 무단

HTTP 방법
PUT
설명
지정된 CloudPrivateIPConfig의 상태를 바꿉니다.
Expand
표 6.19. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 6.20. 신체 매개변수
매개변수유형설명

body

CloudPrivateIPConfig schema

 
Expand
표 6.21. HTTP 응답
HTTP 코드응답 본문

200 - 확인

CloudPrivateIPConfig schema

201 - 생성됨

CloudPrivateIPConfig schema

401 - 승인되지 않음

비어 있는

7장. EgressFirewall [k8s.ovn.org/v1]

설명
EgressFirewall은 네임스페이스에 대한 현재의 송신 방화벽을 설명합니다. Pod에서 클러스터 외부의 IP 주소로의 트래픽은 Pod의 EgressFirewallRule의 각 EgressFirewallRule에 대해 순서대로 확인합니다. 일치하는 규칙이 없거나 EgressFirewall이 없으면 기본적으로 트래픽이 허용됩니다.
유형
object
필수 항목
  • spec

7.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

EgressFirewall의 원하는 동작 사양입니다.

status

object

EgressFirewall의 상태

7.1.1. .spec

설명
EgressFirewall의 원하는 동작 사양입니다.
유형
object
필수 항목
  • egress
Expand
속성유형설명

egress

array

송신 방화벽 규칙 오브젝트 컬렉션

egress[]

object

EgressFirewallRule은 단일 egressfirewall 규칙 오브젝트입니다.

7.1.2. .spec.egress

설명
송신 방화벽 규칙 오브젝트 컬렉션
유형
array

7.1.3. .spec.egress[]

설명
EgressFirewallRule은 단일 egressfirewall 규칙 오브젝트입니다.
유형
object
필수 항목
  • 다음으로 변경
  • type
Expand
속성유형설명

포트

array

포트가 규칙이 적용되는 포트 및 프로토콜을 지정합니다.

ports[]

object

EgressFirewallPort는 트래픽을 허용하거나 거부할 포트를 지정합니다.

다음으로 변경

object

to는 트래픽이 허용/거부되는 대상입니다.

type

string

type은 이 값을 "Allow" 또는 "Deny" 규칙으로 표시합니다.

7.1.4. .spec.egress[].ports

설명
포트가 규칙이 적용되는 포트 및 프로토콜을 지정합니다.
유형
array

7.1.5. .spec.egress[].ports[]

설명
EgressFirewallPort는 트래픽을 허용하거나 거부할 포트를 지정합니다.
유형
object
필수 항목
  • port
  • 프로토콜
Expand
속성유형설명

port

integer

트래픽이 일치해야 하는 포트

프로토콜

string

트래픽이 일치해야 하는 프로토콜(tcp, udp, sctp)입니다.

7.1.6. .spec.egress[].to

설명
는 트래픽이 허용/거부되는 대상입니다.
유형
object
Expand
재산유형설명

cidrSelector

string

cidrSelector는 트래픽을 허용/거부할 CIDR 범위입니다. 이 값을 설정하는 경우 dnsName 및 nodeSelector를 설정하지 않아야 합니다.

dnsName

string

dnsName은 트래픽을 허용/거부할 도메인 이름입니다. 이 값을 설정하는 경우 cidrSelector 및 nodeSelector를 설정하지 않아야 합니다. 와일드카드 DNS 이름의 경우 ''는 하나의 라벨만 일치합니다. 또한 와일드카드 DNS 이름 시작 시 단일 ''만 사용할 수 있습니다. 예를 들어 '*.example.com'은 'sub1.example.com'과 일치하지만 'sub2.sub1.example.com'과 일치하지 않습니다.

nodeSelector

object

nodeSelector는 선택한 노드의 Kubernetes 노드 IP에 대한 트래픽을 허용/거부합니다. 이 값을 설정하는 경우 cidrSelector 및 DNSName을 설정되지 않아야 합니다.

7.1.7. .spec.egress[].to.nodeSelector

설명
nodeSelector는 선택한 노드의 Kubernetes 노드 IP에 대한 트래픽을 허용/거부합니다. 이 값을 설정하는 경우 cidrSelector 및 DNSName을 설정되지 않아야 합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

7.1.8. .spec.egress[].to.nodeSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

7.1.9. .spec.egress[].to.nodeSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

7.1.10. .status

설명
EgressFirewall의 관찰된 상태
유형
object
Expand
재산유형설명

메시지

배열(문자열)

 

status

string

 

7.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.ovn.org/v1/egressfirewalls

    • GET : EgressFirewall 종류의 객체 목록
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressfirewalls

    • DELETE : EgressFirewall 컬렉션 삭제
    • GET : EgressFirewall 종류의 객체 목록
    • POST : EgressFirewall 생성
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressfirewalls/{name}

    • DELETE : EgressFirewall 삭제
    • GET : 지정된 EgressFirewall을 읽습니다.
    • PATCH : 지정된 EgressFirewall을 부분적으로 업데이트합니다.
    • PUT : 지정된 EgressFirewall을 교체합니다.
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressfirewalls/{name}/status

    • GET : 지정된 EgressFirewall의 상태를 읽습니다.
    • PATCH : 지정된 EgressFirewall의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 EgressFirewall의 상태를 바꿉니다.

7.2.1. /apis/k8s.ovn.org/v1/egressfirewalls

HTTP 방법
얻다
설명
EgressFirewall 종류의 객체 목록
Expand
표 7.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewallList 스키마

401 - 승인되지 않음

비어 있는

7.2.2. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressfirewalls

HTTP 방법
DELETE
설명
EgressFirewall 컬렉션 삭제
Expand
표 7.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
EgressFirewall 종류의 객체 목록
Expand
표 7.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewallList 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
EgressFirewall을 생성하세요
Expand
표 7.4. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 7.5. 신체 매개변수
매개변수유형설명

body

EgressFirewall 스키마

 
Expand
표 7.6. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewall 스키마

201 - 생성됨

EgressFirewall 스키마

202 - 승인됨

EgressFirewall 스키마

401 - 승인되지 않음

비어 있는

7.2.3. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressfirewalls/{name}

Expand
표 7.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressFirewall의 이름

HTTP 방법
DELETE
설명
EgressFirewall 삭제
Expand
표 7.8. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 7.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 EgressFirewall을 읽습니다.
Expand
표 7.10. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewall 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 EgressFirewall을 부분적으로 업데이트합니다.
Expand
표 7.11. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 7.12. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewall 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 EgressFirewall을 교체합니다
Expand
표 7.13. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 7.14. 신체 매개변수
매개변수유형설명

body

EgressFirewall 스키마

 
Expand
표 7.15. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewall 스키마

201 - 생성됨

EgressFirewall 스키마

401 - 승인되지 않음

비어 있는

7.2.4. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressfirewalls/{name}/status

Expand
표 7.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressFirewall의 이름

HTTP 방법
얻다
설명
지정된 EgressFirewall의 상태를 읽습니다.
Expand
표 7.17. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewall 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 EgressFirewall의 상태를 부분적으로 업데이트합니다.
Expand
표 7.18. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 7.19. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewall 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 EgressFirewall의 상태를 바꿉니다.
Expand
표 7.20. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 7.21. 신체 매개변수
매개변수유형설명

body

EgressFirewall 스키마

 
Expand
표 7.22. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressFirewall 스키마

201 - 생성됨

EgressFirewall 스키마

401 - 승인되지 않음

비어 있는

8장. EgressIP [k8s.ovn.org/v1]

설명
EgressIP는 사용자가 사양 정의에 따라 EgressIP 리소스와 일치하는 모든 포드에서 발생하는 모든 송신 트래픽에 대해 고정 소스 IP를 정의할 수 있도록 하는 CRD입니다.
유형
object
필수 항목
  • spec

8.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

EgressIP의 원하는 동작에 대한 사양입니다.

status

object

EgressIP의 관찰된 상태입니다. 읽기 전용.

8.1.1. .spec

설명
EgressIP의 원하는 동작에 대한 사양입니다.
유형
object
필수 항목
  • egressIPs
  • namespaceSelector
Expand
속성유형설명

egressIPs

배열(문자열)

egressIPs는 요청된 송신 IP 주소 목록입니다. IPv4 및/또는 IPv6일 수 있습니다. 이 필드는 필수입니다.

namespaceSelector

object

namespaceSelector는 이 정의와 일치하는 레이블이 있는 네임스페이스에만 송신 IP를 적용합니다. 이 필드는 필수입니다.

podSelector

object

podSelector는 송신 IP를 이 정의와 일치하는 Pod에만 적용합니다. 이 필드는 선택 사항이며 설정되지 않은 경우 송신 IP가 NamespaceSelector와 일치하는 네임스페이스의 모든 Pod에 적용됩니다. 설정된 경우 NamespaceSelector와 교차하므로 이 Pod 선택기와 일치하는 NamespaceSelector가 이미 일치하는 Pod(네임스페이스에서)에 송신 IP를 적용합니다.

8.1.2. .spec.namespaceSelector

설명
namespaceSelector는 이 정의와 일치하는 레이블이 있는 네임스페이스에만 송신 IP를 적용합니다. 이 필드는 필수입니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

8.1.3. .spec.namespaceSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

8.1.4. .spec.namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

8.1.5. .spec.podSelector

설명
podSelector는 송신 IP를 이 정의와 일치하는 Pod에만 적용합니다. 이 필드는 선택 사항이며 설정되지 않은 경우 송신 IP가 NamespaceSelector와 일치하는 네임스페이스의 모든 Pod에 적용됩니다. 설정된 경우 NamespaceSelector와 교차하므로 이 Pod 선택기와 일치하는 NamespaceSelector가 이미 일치하는 Pod(네임스페이스에서)에 송신 IP를 적용합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

8.1.6. .spec.podSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

8.1.7. .spec.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

8.1.8. .status

설명
EgressIP의 상태를 확인합니다. 읽기 전용입니다.
유형
object
필수 항목
  • items
Expand
속성유형설명

items

array

할당된 송신 IP 목록과 해당 노드 할당입니다.

items[]

object

할당된 송신 IP의 노드당 상태입니다.

8.1.9. .status.items

설명
할당된 송신 IP 목록과 해당 노드 할당입니다.
유형
array

8.1.10. .status.items[]

설명
할당된 송신 IP의 노드당 상태입니다.
유형
object
필수 항목
  • egressIP
  • 노드
Expand
속성유형설명

egressIP

string

할당된 송신 IP

노드

string

할당된 노드 이름

8.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.ovn.org/v1/egressips

    • DELETE: EgressIP 컬렉션 삭제
    • GET: 종류의 EgressIP 오브젝트 나열
    • POST: EgressIP 생성
  • /apis/k8s.ovn.org/v1/egressips/{name}

    • DELETE: EgressIP 삭제
    • GET: 지정된 EgressIP 읽기
    • PATCH: 지정된 EgressIP를 부분적으로 업데이트
    • PUT: 지정된 EgressIP를 교체

8.2.1. /apis/k8s.ovn.org/v1/egressips

HTTP 방법
DELETE
설명
EgressIP 컬렉션 삭제
Expand
표 8.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
종류의 EgressIP 오브젝트 나열
Expand
표 8.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressIPList 스키마

401 - 무단

HTTP 방법
POST
설명
EgressIP 생성
Expand
표 8.3. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 8.4. 본문 매개변수
매개변수유형설명

body

EgressIP 스키마

 
Expand
표 8.5. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressIP 스키마

201 - 생성됨

EgressIP 스키마

202 - 승인됨

EgressIP 스키마

401 - 무단

8.2.2. /apis/k8s.ovn.org/v1/egressips/{name}

Expand
표 8.6. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressIP 이름

HTTP 방법
DELETE
설명
EgressIP 삭제
Expand
표 8.7. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 8.8. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 EgressIP 읽기
Expand
표 8.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressIP 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EgressIP를 부분적으로 업데이트
Expand
표 8.10. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 8.11. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressIP 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 EgressIP를 교체
Expand
표 8.12. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 8.13. 본문 매개변수
매개변수유형설명

body

EgressIP 스키마

 
Expand
표 8.14. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressIP 스키마

201 - 생성됨

EgressIP 스키마

401 - 무단

9장. EgressQoS [k8s.ovn.org/v1]

설명
EgressQoS는 사용자가 네임스페이스의 포드 이그레스 트래픽에 대한 DSCP 값을 지정된 CIDR로 정의할 수 있도록 하는 CRD입니다. 이러한 포드에서 발생하는 트래픽은 네임스페이스의 EgressQoS에 있는 각 EgressQoSRule과 대조하여 검사되며, 일치하는 항목이 있으면 해당 트래픽에 관련 DSCP 값이 표시됩니다.
유형
object

9.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

EgressQoSSpec은 EgressQoS의 원하는 상태를 정의합니다.

status

object

EgressQoSStatus는 EgressQoS의 관찰된 상태를 정의합니다.

9.1.1. .spec

설명
EgressQoSSpec은 EgressQoS의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • egress
Expand
속성유형설명

egress

array

Egress QoS 규칙 오브젝트 컬렉션

egress[]

object

 

9.1.2. .spec.egress

설명
Egress QoS 규칙 오브젝트 컬렉션
유형
array

9.1.3. .spec.egress[]

설명
유형
object
필수 항목
  • dscp
Expand
속성유형설명

dscp

integer

일치하는 포드 트래픽에 대한 DSCP 표시 값입니다.

dstCIDR

string

DstCIDR은 목적지의 CIDR을 지정합니다. 이 CIDR로 향하는 트래픽만 DSCP 값으로 표시됩니다. 이 필드는 선택 사항이며, 설정하지 않으면 목적지에 관계없이 모든 유출 트래픽에 규칙이 적용됩니다.

podSelector

object

PodSelector는 이 정의와 일치하는 레이블을 가진 네임스페이스의 포드에만 QoS 규칙을 적용합니다. 이 필드는 선택 사항이며, 설정하지 않으면 네임스페이스의 모든 포드에 규칙이 적용됩니다.

9.1.4. .spec.egress[].podSelector

설명
PodSelector는 이 정의와 일치하는 레이블을 가진 네임스페이스의 포드에만 QoS 규칙을 적용합니다. 이 필드는 선택 사항이며, 설정하지 않으면 네임스페이스의 모든 포드에 규칙이 적용됩니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

9.1.5. .spec.egress[].podSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

9.1.6. .spec.egress[].podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

9.1.7. .status

설명
EgressQoSStatus는 EgressQoS의 관찰된 상태를 정의합니다.
유형
object
Expand
재산유형설명

conditions

array

EgressQoS 객체의 상태에 대한 세부 정보를 나타내는 조건 객체의 배열입니다.

conditions[]

object

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다. --- 이 구조체는 필드 경로 .status.conditions에서 배열로 직접 사용하도록 의도되었습니다. 예를 들면 다음과 같습니다.

type FooStatus struct{ // foo의 현재 상태에 대한 관찰 결과를 나타냅니다. // 알려진 .status.conditions.type은 "사용 가능", "진행 중", "저하됨"입니다. // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type 조건 []metav1.Condition json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"

// 기타 필드 }

status

string

EgressQoS 리소스가 성공적으로 적용되었는지 여부를 간략하게 나타냅니다.

9.1.8. .status.conditions

설명
EgressQoS 객체의 상태에 대한 세부 정보를 나타내는 조건 객체의 배열입니다.
유형
array

9.1.9. .status.conditions[]

설명

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다. --- 이 구조체는 필드 경로 .status.conditions에서 배열로 직접 사용하도록 의도되었습니다. 예를 들면 다음과 같습니다.

type FooStatus struct{
    // Represents the observations of a foo's current state.
    // Known .status.conditions.type are: "Available", "Progressing", and "Degraded"
    // +patchMergeKey=type
    // +patchStrategy=merge
    // +listType=map
    // +listMapKey=type
    Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
Copy to Clipboard Toggle word wrap
    // other fields
}
Copy to Clipboard Toggle word wrap
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
속성유형설명

lastTransitionTime

string

lastTransitionTime은 마지막으로 한 상태에서 다른 상태로 전환된 시간입니다. 기본 조건이 변경된 경우여야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

message는 변환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건에 따라 설정된 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 현재 인스턴스 상태와 관련된 조건이 최신 상태가 아닙니다.

reason

string

이유에는 조건의 마지막 전환 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 예상되는 값과 의미를 정의할 수 있으며 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있지 않을 수 있습니다.

status

string

조건의 상태, True, False, 알 수 없음.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형. --- many .condition.type 값은 Available와 같은 리소스 간에 일관되지만 임의의 조건이 유용할 수 있으므로 (.node.status.conditions 참조), deconflict 기능이 중요합니다. 정규 표현식이 일치하는 정규 표현식은 (dns1123SubdomainFmt/)?(qualifiedNameFmt)입니다.

9.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.ovn.org/v1/egressqoses

    • GET: 종류의 EgressQoS 오브젝트 나열
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressqoses

    • DELETE: EgressQoS 컬렉션 삭제
    • GET: 종류의 EgressQoS 오브젝트 나열
    • POST: EgressQoS 생성
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressqoses/{name}

    • DELETE: EgressQoS 삭제
    • GET: 지정된 EgressQoS 읽기
    • PATCH: 지정된 EgressQoS를 부분적으로 업데이트
    • PUT: 지정된 EgressQoS를 교체합니다.
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressqoses/{name}/status

    • GET: 지정된 EgressQoS의 읽기 상태
    • PATCH: 지정된 EgressQoS의 부분 업데이트 상태
    • PUT: 지정된 EgressQoS의 상태 교체

9.2.1. /apis/k8s.ovn.org/v1/egressqoses

HTTP 방법
GET
설명
EgressQoS 유형의 오브젝트 나열
Expand
표 9.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressQoSList schema

401 - 무단

9.2.2. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressqoses

HTTP 방법
DELETE
설명
EgressQoS 컬렉션 삭제
Expand
표 9.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
EgressQoS 유형의 오브젝트 나열
Expand
표 9.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressQoSList schema

401 - 무단

HTTP 방법
POST
설명
EgressQoS 생성
Expand
표 9.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 9.5. 본문 매개변수
매개변수유형설명

body

EgressQoS 스키마

 
Expand
표 9.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressQoS 스키마

201 - 생성됨

EgressQoS 스키마

202 - 승인됨

EgressQoS 스키마

401 - 무단

9.2.3. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressqoses/{name}

Expand
표 9.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressQoS 이름

HTTP 방법
DELETE
설명
EgressQoS 삭제
Expand
표 9.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 9.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 EgressQoS 읽기
Expand
표 9.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressQoS 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EgressQoS를 부분적으로 업데이트
Expand
표 9.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 9.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressQoS 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 EgressQoS를 교체
Expand
표 9.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 9.14. 본문 매개변수
매개변수유형설명

body

EgressQoS 스키마

 
Expand
표 9.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressQoS 스키마

201 - 생성됨

EgressQoS 스키마

401 - 무단

9.2.4. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressqoses/{name}/status

Expand
표 9.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressQoS 이름

HTTP 방법
GET
설명
지정된 EgressQoS의 읽기 상태
Expand
표 9.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressQoS 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EgressQoS의 부분적으로 업데이트 상태
Expand
표 9.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 9.19. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressQoS 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 EgressQoS의 상태를 교체합니다.
Expand
표 9.20. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 9.21. 신체 매개변수
매개변수유형설명

body

EgressQoS 스키마

 
Expand
표 9.22. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressQoS 스키마

201 - 생성됨

EgressQoS 스키마

401 - 승인되지 않음

비어 있는

10장. EgressService [k8s.ovn.org/v1]

설명
EgressService는 사용자가 해당 LoadBalancer 서비스의 엔드포인트인 모든 포드에서 발생하는 송신 패킷의 소스 IP를 수신 IP로 요청할 수 있도록 하는 CRD입니다. 또한, 사용자는 LoadBalancer 서비스의 엔드포인트인 모든 포드에서 발생하는 송신 패킷이 기본 네트워크와 다른 네트워크를 사용하도록 요청할 수 있습니다.
유형
object

10.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

EgressServiceSpec은 EgressService의 원하는 상태를 정의합니다.

status

object

EgressServiceStatus는 EgressService의 관찰된 상태를 정의합니다.

10.1.1. .spec

설명
EgressServiceSpec은 EgressService의 원하는 상태를 정의합니다.
유형
object
Expand
재산유형설명

network

string

이 서비스가 송신과 해당 수신 응답을 보내야 하는 네트워크입니다. 이는 일반적으로 VRF 매핑으로 구현되며 라우팅 테이블의 숫자 ID 또는 문자열 이름을 나타내는데, 생략 시 기본 호스트 라우팅을 사용합니다.

nodeSelector

object

sourceIPBy=LoadBalancerIP인 경우 서비스 트래픽을 처리하기 위해 선택할 수 있는 노드를 제한할 수 있습니다. 존재하는 경우 지정된 선택기와 일치하는 레이블을 가진 노드만 서비스 트래픽을 처리하기 위해 선택할 수 있습니다. 지정하지 않으면 클러스터 내의 어떤 노드라도 서비스 트래픽을 관리하도록 선택할 수 있습니다.

sourceIPBy

string

LoadBalancer 서비스를 지원하는 포드에서 발생하는 송신 트래픽의 소스 IP를 결정합니다. LoadBalancerIP 인 경우 소스 IP는 LoadBalancer 수신 IP로 설정됩니다. 네트워크의 경우 소스 IP는 네트워크 인터페이스에 따라 설정되며, 이미 적용된 위장 규칙을 활용합니다. 일반적으로 이러한 규칙은 발신 인터페이스의 IP에 대한 SNAT를 지정하는데, 이는 패킷이 일반적으로 노드의 IP와 함께 나가게 됨을 의미합니다.

10.1.2. .spec.nodeSelector

설명
sourceIPBy=LoadBalancerIP인 경우 서비스 트래픽을 처리하기 위해 선택할 수 있는 노드를 제한할 수 있습니다. 존재하는 경우 지정된 선택기와 일치하는 레이블을 가진 노드만 서비스 트래픽을 처리하기 위해 선택할 수 있습니다. 지정하지 않으면 클러스터 내의 어떤 노드라도 서비스 트래픽을 관리하도록 선택할 수 있습니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

10.1.3. .spec.nodeSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

10.1.4. .spec.nodeSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

10.1.5. .status

설명
EgressServiceStatus는 EgressService의 관찰된 상태를 정의합니다.
유형
object
필수 항목
  • host
Expand
재산유형설명

host

string

서비스 트래픽을 처리하기 위해 선택된 노드의 이름입니다. sourceIPBy=Network인 경우 필드는 "ALL"로 설정됩니다.

10.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.ovn.org/v1/egressservices

    • GET : EgressService 종류의 객체 목록
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressservices

    • DELETE : EgressService 컬렉션 삭제
    • GET : EgressService 종류의 객체 목록
    • POST : EgressService 생성
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressservices/{name}

    • DELETE : EgressService 삭제
    • GET : 지정된 EgressService를 읽습니다.
    • PATCH : 지정된 EgressService를 부분적으로 업데이트합니다.
    • PUT : 지정된 EgressService를 교체합니다.
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressservices/{name}/status

    • GET : 지정된 EgressService의 상태를 읽습니다.
    • PATCH : 지정된 EgressService의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 EgressService의 상태를 바꿉니다.

10.2.1. /apis/k8s.ovn.org/v1/egressservices

HTTP 방법
얻다
설명
EgressService 종류의 객체 목록
Expand
표 10.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressServiceList schema

401 - 승인되지 않음

비어 있는

10.2.2. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressservices

HTTP 방법
DELETE
설명
EgressService 컬렉션 삭제
Expand
표 10.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
EgressService 종류의 객체 목록
Expand
표 10.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressServiceList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
EgressService를 생성합니다
Expand
표 10.4. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 10.5. 본문 매개변수
매개변수유형설명

body

EgressService 스키마

 
Expand
표 10.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressService 스키마

201 - 생성됨

EgressService 스키마

202 - 승인됨

EgressService 스키마

401 - 무단

10.2.3. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressservices/{name}

Expand
표 10.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressService의 이름

HTTP 방법
DELETE
설명
EgressService 삭제
Expand
표 10.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 10.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 EgressService 읽기
Expand
표 10.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressService 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EgressService를 부분적으로 업데이트
Expand
표 10.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 10.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressService 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 EgressService를 교체
Expand
표 10.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 10.14. 본문 매개변수
매개변수유형설명

body

EgressService 스키마

 
Expand
표 10.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressService 스키마

201 - 생성됨

EgressService 스키마

401 - 무단

10.2.4. /apis/k8s.ovn.org/v1/namespaces/{namespace}/egressservices/{name}/status

Expand
표 10.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressService의 이름

HTTP 방법
GET
설명
지정된 EgressService의 읽기 상태
Expand
표 10.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressService 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EgressService의 부분적으로 업데이트 상태
Expand
표 10.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 10.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressService 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 EgressService의 상태 교체
Expand
표 10.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 10.21. 본문 매개변수
매개변수유형설명

body

EgressService 스키마

 
Expand
표 10.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressService 스키마

201 - 생성됨

EgressService 스키마

401 - 무단

11장. Endpoints [v1]

설명

끝점은 실제 서비스를 구현하는 끝점의 컬렉션입니다. 예제:

 Name: "mysvc",
 Subsets: [
   {
     Addresses: [{"ip": "10.10.1.1"}, {"ip": "10.10.2.2"}],
     Ports: [{"name": "a", "port": 8675}, {"name": "b", "port": 309}]
   },
   {
     Addresses: [{"ip": "10.10.3.3"}],
     Ports: [{"name": "a", "port": 93}, {"name": "b", "port": 76}]
   },
]
Copy to Clipboard Toggle word wrap
유형
object

11.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

하위 집합

array

모든 끝점의 세트는 모든 하위 집합의 결합입니다. 주소는 공유하는 IP에 따라 하위 집합에 배치됩니다. 여러 포트가 있는 단일 주소이며, 그 중 일부는 준비되었으며 그 중 일부는 (다른 컨테이너에서 제공되기 때문에) 다른 포트의 다른 하위 집합에 주소가 표시됩니다. 동일한 하위 집합의 addresses 및 NotReadyAddresses에 주소가 표시되지 않습니다. 서비스를 구성하는 주소 및 포트 세트입니다.

subsets[]

object

EndpointSubset은 일반적인 포트 세트가 있는 주소 그룹입니다. 확장된 엔드 포인트 세트는 addresses x Ports의 카테시안 제품입니다. 예를 들면 다음과 같습니다.

{ addresses: [{"ip": "10.10.1.1"}, {"ip": "10.10.2.2"}], Ports: [{"name": "a", "port": 8675}, {"name": "b", "b", "port": 309}] }

결과 끝점 세트는 다음과 같이 볼 수 있습니다.

a: [ 10.10.1.1:8675, 10.10.2.2:8675 ], b: [ 10.10.1.1:309, 10.10.2.2:309 ]

11.1.1. .subsets

설명
모든 끝점의 세트는 모든 하위 집합의 결합입니다. 주소는 공유하는 IP에 따라 하위 집합에 배치됩니다. 여러 포트가 있는 단일 주소이며, 그 중 일부는 준비되었으며 그 중 일부는 (다른 컨테이너에서 제공되기 때문에) 다른 포트의 다른 하위 집합에 주소가 표시됩니다. 동일한 하위 집합의 addresses 및 NotReadyAddresses에 주소가 표시되지 않습니다. 서비스를 구성하는 주소 및 포트 세트입니다.
유형
array

11.1.2. .subsets[]

설명

EndpointSubset은 일반적인 포트 세트가 있는 주소 그룹입니다. 확장된 엔드 포인트 세트는 addresses x Ports의 카테시안 제품입니다. 예를 들면 다음과 같습니다.

{
  Addresses: [{"ip": "10.10.1.1"}, {"ip": "10.10.2.2"}],
  Ports:     [{"name": "a", "port": 8675}, {"name": "b", "port": 309}]
}
Copy to Clipboard Toggle word wrap

결과 끝점 세트는 다음과 같이 볼 수 있습니다.

a: [ 10.10.1.1:8675, 10.10.2.2:8675 ],
b: [ 10.10.1.1:309, 10.10.2.2:309 ]
Copy to Clipboard Toggle word wrap
유형
object
Expand
속성유형설명

주소

array

ready으로 표시된 관련 포트를 제공하는 IP 주소입니다. 이러한 끝점은 로드 밸런서 및 클라이언트가 사용할 수 있는 안전한 것으로 간주되어야 합니다.

addresses[]

object

EndpointAddress는 단일 IP 주소를 설명하는 튜플입니다.

notReadyAddresses

array

관련 포트를 제공하지만 아직 시작을 완료하지 않았거나 최근에 준비 상태 점검에 실패했거나 최근에 활성 검사에 실패했기 때문에 현재 준비 상태로 표시되지 않은 IP 주소입니다.

notReadyAddresses[]

object

EndpointAddress는 단일 IP 주소를 설명하는 튜플입니다.

포트

array

관련 IP 주소에서 사용할 수 있는 포트 번호입니다.

ports[]

object

EndpointPort는 단일 포트를 설명하는 튜플입니다.

11.1.3. .subsets[].addresses

설명
ready으로 표시된 관련 포트를 제공하는 IP 주소입니다. 이러한 끝점은 로드 밸런서 및 클라이언트가 사용할 수 있는 안전한 것으로 간주되어야 합니다.
유형
array

11.1.4. .subsets[].addresses[]

설명
EndpointAddress는 단일 IP 주소를 설명하는 튜플입니다.
유형
object
필수 항목
  • ip
Expand
속성유형설명

hostname

string

이 끝점의 호스트 이름

ip

string

이 끝점의 IP입니다. 루프백(127.0.0.0/8 또는 ::1), 링크-로컬(169.254.0.0/16 또는 fe80::/10) 또는 링크-로컬 멀티 캐스트(224.0.0.0/24 또는 ff02::/16)가 아닐 수 있습니다.

nodeName

string

선택 사항: 이 끝점을 호스팅하는 노드입니다. 노드에 로컬 끝점을 결정하는 데 사용할 수 있습니다.

targetRef

object

ObjectReference에는 참조된 오브젝트를 검사하거나 수정할 수 있는 충분한 정보가 포함되어 있습니다.

11.1.5. .subsets[].addresses[].targetRef

설명
ObjectReference에는 참조된 오브젝트를 검사하거나 수정할 수 있는 충분한 정보가 포함되어 있습니다.
유형
object
Expand
속성유형설명

apiVersion

string

참조의 API 버전입니다.

fieldPath

string

전체 객체 대신 객체의 일부를 참조하는 경우 이 문자열에는 desiredState.manifest.containers[2]와 같은 유효한 JSON/Go 필드 액세스 문이 포함되어야 합니다. 예를 들어, 객체 참조가 포드 내의 컨테이너에 대한 경우 "spec.containers{name}"(여기서 "name"은 이벤트를 트리거한 컨테이너의 이름을 나타냄)와 같은 값을 갖거나 컨테이너 이름이 지정되지 않은 경우 "spec.containers[2]"(이 포드에서 인덱스 2를 갖는 컨테이너)를 갖습니다. 이 구문은 객체의 일부를 참조하는 잘 정의된 방법을 갖기 위해서만 선택되었습니다.

kind

string

일종의 참조 대상이에요. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

string

참조 대상의 이름. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

네임스페이스

string

참조 대상의 네임스페이스. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

string

참조가 이루어진 구체적인 resourceVersion이 있는 경우. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

string

참조 대상의 UID. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

11.1.6. .subsets[].notReadyAddresses

설명
관련 포트를 제공하지만 아직 시작이 완료되지 않았거나, 최근 준비 검사에 실패했거나, 최근 활성 검사에 실패했기 때문에 현재 준비 완료로 표시되지 않은 IP 주소입니다.
유형
array

11.1.7. .subsets[].notReadyAddresses[]

설명
EndpointAddress는 단일 IP 주소를 설명하는 튜플입니다.
유형
object
필수 항목
  • ip
Expand
재산유형설명

hostname

string

이 엔드포인트의 호스트 이름

ip

string

이 엔드포인트의 IP입니다. 루프백(127.0.0.0/8 또는 ::1), 링크 로컬(169.254.0.0/16 또는 fe80::/10) 또는 링크 로컬 멀티캐스트(224.0.0.0/24 또는 ff02::/16)가 될 수 없습니다.

nodeName

string

선택 사항: 이 엔드포인트를 호스팅하는 노드입니다. 이는 노드의 로컬 엔드포인트를 결정하는 데 사용될 수 있습니다.

targetRef

object

ObjectReference에는 참조된 객체를 검사하거나 수정하는 데 필요한 충분한 정보가 포함되어 있습니다.

11.1.8. .subsets[].notReadyAddresses[].targetRef

설명
ObjectReference에는 참조된 객체를 검사하거나 수정하는 데 필요한 충분한 정보가 포함되어 있습니다.
유형
object
Expand
재산유형설명

apiVersion

string

참조 대상의 API 버전입니다.

fieldPath

string

전체 객체 대신 객체의 일부를 참조하는 경우 이 문자열에는 desiredState.manifest.containers[2]와 같은 유효한 JSON/Go 필드 액세스 문이 포함되어야 합니다. 예를 들어, 객체 참조가 포드 내의 컨테이너에 대한 경우 "spec.containers{name}"(여기서 "name"은 이벤트를 트리거한 컨테이너의 이름을 나타냄)와 같은 값을 갖거나 컨테이너 이름이 지정되지 않은 경우 "spec.containers[2]"(이 포드에서 인덱스 2를 갖는 컨테이너)를 갖습니다. 이 구문은 객체의 일부를 참조하는 잘 정의된 방법을 갖기 위해서만 선택되었습니다.

kind

string

일종의 참조 대상이에요. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

name

string

참조 대상의 이름. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

네임스페이스

string

참조 대상의 네임스페이스. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceVersion

string

참조가 이루어진 구체적인 resourceVersion이 있는 경우. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

uid

string

참조 대상의 UID. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

11.1.9. .subsets[].ports

설명
관련 IP 주소에서 사용 가능한 포트 번호입니다.
유형
array

11.1.10. .subsets[].ports[]

설명
EndpointPort는 단일 포트를 설명하는 튜플입니다.
유형
object
필수 항목
  • port
Expand
재산유형설명

appProtocol

string

이 포트의 애플리케이션 프로토콜입니다. 이는 구현 시 이해하는 프로토콜에 대해 더욱 풍부한 동작을 제공하기 위한 힌트로 사용됩니다. 이 필드는 표준 Kubernetes 레이블 구문을 따릅니다. 유효한 값은 다음 중 하나입니다.

* 접두사가 없는 프로토콜 이름 - IANA 표준 서비스 이름용으로 예약되어 있습니다(RFC-6335 및 https://www.iana.org/assignments/service-names 에 따름).

* Kubernetes에서 정의한 접두사 이름: * 'kubernetes.io/h2c' - https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior- 에 설명된 대로 일반 텍스트를 통한 HTTP/2 사전 지식 * 'kubernetes.io/ws' - https://www.rfc-editor.org/rfc/rfc6455 에 설명된 대로 일반 텍스트를 통한 웹 소켓 * 'kubernetes.io/wss' - https://www.rfc-editor.org/rfc/rfc6455 에 설명된 대로 TLS를 통한 웹 소켓

* 다른 프로토콜은 mycompany.com/my-custom-protocol과 같이 구현에서 정의한 접두사 이름을 사용해야 합니다.

name

string

이 항구의 이름. 이는 해당 ServicePort의 'name' 필드와 일치해야 합니다. DNS_LABEL이어야 합니다. 포트가 하나만 정의된 경우에만 선택 사항입니다.

port

integer

엔드포인트의 포트 번호입니다.

규약

string

이 포트의 IP 프로토콜입니다. UDP, TCP 또는 SCTP여야 합니다. 기본값은 TCP입니다.

가능한 열거형 값: - "SCTP" 는 SCTP 프로토콜입니다. - "TCP" 는 TCP 프로토콜입니다. - "UDP" 는 UDP 프로토콜입니다.

11.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /api/v1/endpoints

    • GET : Endpoints 종류의 객체를 나열하거나 감시합니다.
  • /api/v1/watch/endpoints

    • GET : Endpoint 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /api/v1/namespaces/{namespace}/endpoints

    • DELETE : Endpoint 컬렉션 삭제
    • GET : Endpoints 종류의 객체를 나열하거나 감시합니다.
    • POST : Endpoint 생성
  • /api/v1/watch/namespaces/{namespace}/endpoints

    • GET : Endpoint 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /api/v1/namespaces/{namespace}/endpoints/{name}

    • DELETE : Endpoints 삭제
    • GET : 지정된 Endpoints를 읽습니다.
    • PATCH : 지정된 Endpoints를 부분적으로 업데이트합니다.
    • PUT : 지정된 Endpoints를 교체합니다.
  • /api/v1/watch/namespaces/{namespace}/endpoints/{name}

    • GET : Endpoints 종류의 객체에 대한 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 'watch' 매개변수를 목록 작업과 함께 사용하고, 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.

11.2.1. /api/v1/endpoints

HTTP 방법
얻다
설명
Endpoints 종류의 객체를 나열하거나 감시합니다.
Expand
표 11.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EndpointsList 스키마

401 - 승인되지 않음

비어 있는

11.2.2. /api/v1/watch/endpoints

HTTP 방법
얻다
설명
엔드포인트 목록의 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 11.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

11.2.3. /api/v1/namespaces/{namespace}/endpoints

HTTP 방법
DELETE
설명
끝점 컬렉션 삭제
Expand
표 11.3. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 11.4. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
List or watch objects of kind Endpoints
Expand
표 11.5. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EndpointsList 스키마

401 - 무단

HTTP 방법
POST
설명
끝점 생성
Expand
표 11.6. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 11.7. 본문 매개변수
매개변수유형설명

body

엔드 포인트 스키마

 
Expand
표 11.8. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

엔드 포인트 스키마

201 - 생성됨

엔드 포인트 스키마

202 - 승인됨

엔드 포인트 스키마

401 - 무단

11.2.4. /api/v1/watch/namespaces/{namespace}/endpoints

HTTP 방법
GET
설명
더 이상 사용되지 않는 끝점 목록에 대한 개별 변경 사항을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
Expand
표 11.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

11.2.5. /api/v1/namespaces/{namespace}/endpoints/{name}

Expand
표 11.10. 글로벌 경로 매개변수
매개변수유형설명

name

string

끝점의 이름

HTTP 방법
DELETE
설명
엔드포인트 삭제
Expand
표 11.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 11.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 끝점 읽기
Expand
표 11.13. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

엔드 포인트 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 끝점을 부분적으로 업데이트
Expand
표 11.14. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 11.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

엔드 포인트 스키마

201 - 생성됨

엔드 포인트 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 끝점을 교체
Expand
표 11.16. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 11.17. 본문 매개변수
매개변수유형설명

body

엔드 포인트 스키마

 
Expand
표 11.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

엔드 포인트 스키마

201 - 생성됨

엔드 포인트 스키마

401 - 무단

11.2.6. /api/v1/watch/namespaces/{namespace}/endpoints/{name}

Expand
표 11.19. 글로벌 경로 매개변수
매개변수유형설명

name

string

끝점의 이름

HTTP 방법
GET
설명
더 이상 사용되지 않는 유형의 개체를 감시합니다. 대신 'fieldSelector' 매개변수가 있는 단일 항목으로 필터링된 목록 작업과 함께 'watch' 매개변수를 사용합니다.
Expand
표 11.20. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

12장. EndpointSlice [discovery.k8s.io/v1]

설명
EndpointSlice는 서비스를 구현하는 끝점의 하위 집합을 나타냅니다. 지정된 서비스의 경우 레이블로 선택한 여러 EndpointSlice 오브젝트가 있을 수 있으며, 이 오브젝트는 전체 엔드포인트 세트를 생성하기 위해 결합되어야 합니다.
유형
object
필수 항목
  • addressType
  • 끝점

12.1. 사양

Expand
속성유형설명

addressType

string

addressType은 이 EndpointSlice에서 전송하는 주소 유형을 지정합니다. 이 슬라이스의 모든 주소는 동일한 유형이어야 합니다. 생성 후에는 이 필드를 변경할 수 없습니다. 현재 지원되는 주소 유형은 * IPv4: IPv4 주소를 나타냅니다. * IPv6: IPv6 주소를 나타냅니다. * FQDN: 정규화된 도메인 이름을 나타냅니다.

가능한 열거 값: - "FQDN" 은 FQDN을 나타냅니다. - "IPv4" 는 IPv4 주소를 나타냅니다. - "IPv6" 은 IPv6 주소를 나타냅니다.

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

끝점

array

끝점은 이 슬라이스의 고유한 끝점 목록입니다. 각 슬라이스에는 최대 1000개의 끝점이 포함될 수 있습니다.

endpoints[]

object

엔드포인트는 서비스를 구현하는 단일 논리 "backend"를 나타냅니다.

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다.

포트

array

ports는 이 슬라이스의 각 끝점에 의해 노출되는 네트워크 포트 목록을 지정합니다. 각 포트에는 고유한 이름이 있어야 합니다. 포트가 비어 있으면 정의된 포트가 없음을 나타냅니다. port가 nil 포트 값으로 정의되면 "모든 포트"를 나타냅니다. 각 슬라이스에는 최대 100개의 포트가 포함될 수 있습니다.

ports[]

object

EndpointPort는 EndpointSlice에서 사용하는 포트를 나타냅니다.

12.1.1. .endpoints

설명
끝점은 이 슬라이스의 고유한 끝점 목록입니다. 각 슬라이스에는 최대 1000개의 끝점이 포함될 수 있습니다.
유형
array

12.1.2. .endpoints[]

설명
엔드포인트는 서비스를 구현하는 단일 논리 "backend"를 나타냅니다.
유형
object
필수 항목
  • 주소
Expand
속성유형설명

주소

배열(문자열)

이 끝점의 주소입니다. 이 필드의 내용은 해당 EndpointSlice addressType 필드에 따라 해석됩니다. 소비자는 자체 기능 컨텍스트에서 다양한 유형의 주소를 처리해야 합니다. 여기에는 하나 이상의 주소가 포함되어야 하지만 100을 초과해서는 안 됩니다. 이러한 모든 것은 번거로 간주되며 클라이언트는 첫 번째 요소 만 사용하도록 선택할 수 있습니다. 참조: https://issue.k8s.io/106267

conditions

object

EndpointConditions는 끝점의 현재 상태를 나타냅니다.

deprecatedTopology

오브젝트(문자열)

deprecatedTopology에는 v1beta1 API의 토폴로지 정보 부분이 포함되어 있습니다. 이 필드는 더 이상 사용되지 않으며 v1beta1 API가 제거될 때 ( kubernetes v1.24)보다 빨리 제거됩니다. 이 필드는 값을 보유할 수 있지만 v1 API를 통해 쓸 수 없으며 쓰기 시도는 자동으로 무시됩니다. 토폴로지 정보는 대신 zone 및 nodeName 필드에서 찾을 수 있습니다.

object

EndpointHints는 끝점을 사용하는 방법을 설명하는 힌트를 제공합니다.

hostname

string

이 끝점의 호스트 이름입니다. 엔드포인트 소비자는 이 필드를 사용하여 끝점을 서로 구분할 수 있습니다(예: DNS 이름). 동일한 호스트 이름을 사용하는 끝점이 여러 개 있는 것으로 간주해야 합니다(예: DNS의 여러 A 값). 소문자여야 하며 DNS 라벨(RFC 1123) 검증을 통과해야 합니다.

nodeName

string

nodename은 이 엔드포인트를 호스팅하는 노드의 이름을 나타냅니다. 노드에 로컬 끝점을 결정하는 데 사용할 수 있습니다.

targetRef

ObjectReference

targetRef는 이 엔드포인트를 나타내는 Kubernetes 오브젝트에 대한 참조입니다.

영역

string

zone은 이 엔드포인트가 존재하는 영역의 이름입니다.

12.1.3. .endpoints[].conditions

설명
EndpointConditions는 끝점의 현재 상태를 나타냅니다.
유형
object
Expand
속성유형설명

Ready

boolean

Ready는 엔드포인트를 관리하는 시스템에 따라 이 엔드포인트가 트래픽을 수신할 준비가 되었음을 나타냅니다. nil 값은 알 수 없는 상태를 나타냅니다. 대부분의 경우 소비자는 이 unknown 상태를 ready로 해석해야 합니다. 호환성을 위해 일반 준비 동작이 명시적으로 재정의되는 경우(예: 연결된 서비스에서 publishNotReadyAddresses 플래그를 설정 하는 경우)를 제외하고 끝점 종료에 대한 "true"는 절대 없어야 합니다.

서빙

boolean

서빙은 끝점의 종료 상태에 관계없이 설정되어 있다는 점을 제외하고는 준비와 동일합니다. 이 조건은 종료 중인 준비된 끝점에 대해 true로 설정해야 합니다. nil인 경우 소비자는 ready 상태로 지연해야 합니다.

종료

boolean

종료는 이 끝점이 종료되었음을 나타냅니다. nil 값은 알 수 없는 상태를 나타냅니다. 소비자는 이 알 수 없는 상태를 해석하여 끝점이 종료되지 않음을 의미합니다.

12.1.4. .endpoints[].hints

설명
EndpointHints는 끝점을 사용하는 방법을 설명하는 힌트를 제공합니다.
유형
object
Expand
속성유형설명

forZones

array

forZones는 토폴로지 인식 라우팅을 활성화하기 위해 이 끝점이 사용해야 하는 영역을 나타냅니다.

forZones[]

object

ForZone은 이 엔드포인트를 사용해야 하는 영역에 대한 정보를 제공합니다.

12.1.5. .endpoints[].hints.forZones

설명
forZones는 토폴로지 인식 라우팅을 활성화하기 위해 이 끝점이 사용해야 하는 영역을 나타냅니다.
유형
array

12.1.6. .endpoints[].hints.forZones[]

설명
ForZone은 이 엔드포인트를 사용해야 하는 영역에 대한 정보를 제공합니다.
유형
object
필수 항목
  • name
Expand
속성유형설명

name

string

name은 영역의 이름을 나타냅니다.

12.1.7. .ports

설명
ports는 이 슬라이스의 각 끝점에 의해 노출되는 네트워크 포트 목록을 지정합니다. 각 포트에는 고유한 이름이 있어야 합니다. 포트가 비어 있으면 정의된 포트가 없음을 나타냅니다. 포트가 nil 포트 값으로 정의되면 "모든 포트"를 나타냅니다. 각 슬라이스에는 최대 100개의 포트가 포함될 수 있습니다.
유형
array

12.1.8. .ports[]

설명
EndpointPort는 EndpointSlice에서 사용하는 포트를 나타냅니다.
유형
object
Expand
재산유형설명

appProtocol

string

이 포트의 애플리케이션 프로토콜입니다. 이는 구현 시 이해하는 프로토콜에 대해 더욱 풍부한 동작을 제공하기 위한 힌트로 사용됩니다. 이 필드는 표준 Kubernetes 레이블 구문을 따릅니다. 유효한 값은 다음 중 하나입니다.

* 접두사가 없는 프로토콜 이름 - IANA 표준 서비스 이름용으로 예약되어 있습니다(RFC-6335 및 https://www.iana.org/assignments/service-names 에 따름).

* Kubernetes에서 정의한 접두사 이름: * 'kubernetes.io/h2c' - https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior- 에 설명된 대로 일반 텍스트를 통한 HTTP/2 사전 지식 * 'kubernetes.io/ws' - https://www.rfc-editor.org/rfc/rfc6455 에 설명된 대로 일반 텍스트를 통한 웹 소켓 * 'kubernetes.io/wss' - https://www.rfc-editor.org/rfc/rfc6455 에 설명된 대로 TLS를 통한 웹 소켓

* 다른 프로토콜은 mycompany.com/my-custom-protocol과 같이 구현에서 정의한 접두사 이름을 사용해야 합니다.

name

string

name은 이 포트의 이름을 나타냅니다. EndpointSlice의 모든 포트는 고유한 이름을 가져야 합니다. EndpointSlice가 Kubernetes 서비스에서 파생된 경우 이는 Service.ports[].name에 해당합니다. 이름은 빈 문자열이거나 DNS_LABEL 유효성 검사를 통과해야 합니다. * 길이는 63자를 넘을 수 없습니다. * 소문자 영숫자 또는 '-'로 구성되어야 합니다. * 영숫자로 시작하고 끝나야 합니다. 기본값은 빈 문자열입니다.

port

integer

port는 엔드포인트의 포트 번호를 나타냅니다. 이것이 지정되지 않으면 포트는 제한되지 않으며 특정 소비자의 컨텍스트에서 해석되어야 합니다.

규약

string

프로토콜은 이 포트의 IP 프로토콜을 나타냅니다. UDP, TCP 또는 SCTP여야 합니다. 기본값은 TCP입니다.

가능한 열거형 값: - "SCTP" 는 SCTP 프로토콜입니다. - "TCP" 는 TCP 프로토콜입니다. - "UDP" 는 UDP 프로토콜입니다.

12.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/discovery.k8s.io/v1/endpointslices

    • GET : EndpointSlice 종류의 객체를 나열하거나 감시합니다.
  • /apis/discovery.k8s.io/v1/watch/endpointslices

    • GET : EndpointSlice 목록의 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices

    • DELETE : EndpointSlice 컬렉션 삭제
    • GET : EndpointSlice 종류의 객체를 나열하거나 감시합니다.
    • POST : EndpointSlice 생성
  • /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices

    • GET : EndpointSlice 목록의 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}

    • DELETE : EndpointSlice 삭제
    • GET : 지정된 EndpointSlice를 읽습니다.
    • PATCH : 지정된 EndpointSlice를 부분적으로 업데이트합니다.
    • PUT : 지정된 EndpointSlice를 교체합니다.
  • /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices/{name}

    • GET : EndpointSlice 종류의 객체에 대한 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 'watch' 매개변수를 목록 작업과 함께 사용하고, 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.

12.2.1. /apis/discovery.k8s.io/v1/endpointslices

HTTP 방법
얻다
설명
EndpointSlice 종류의 객체를 나열하거나 감시합니다.
Expand
표 12.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EndpointSliceList schema

401 - 승인되지 않음

비어 있는

12.2.2. /apis/discovery.k8s.io/v1/watch/endpointslices

HTTP 방법
얻다
설명
EndpointSlice 목록의 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 12.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

12.2.3. /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices

HTTP 방법
DELETE
설명
EndpointSlice 컬렉션 삭제
Expand
표 12.3. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 12.4. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
EndpointSlice 종류의 객체를 나열하거나 감시합니다.
Expand
표 12.5. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EndpointSliceList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
EndpointSlice를 생성합니다
Expand
표 12.6. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 12.7. 본문 매개변수
매개변수유형설명

body

EndpointSlice 스키마

 
Expand
표 12.8. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EndpointSlice 스키마

201 - 생성됨

EndpointSlice 스키마

202 - 승인됨

EndpointSlice 스키마

401 - 무단

12.2.4. /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices

HTTP 방법
GET
설명
더 이상 사용되지 않는 EndpointSlice 목록에 대한 개별 변경 사항을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용하십시오.
Expand
표 12.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

12.2.5. /apis/discovery.k8s.io/v1/namespaces/{namespace}/endpointslices/{name}

Expand
표 12.10. 글로벌 경로 매개변수
매개변수유형설명

name

string

EndpointSlice의 이름

HTTP 방법
DELETE
설명
EndpointSlice 삭제
Expand
표 12.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 12.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 EndpointSlice 읽기
Expand
표 12.13. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EndpointSlice 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EndpointSlice를 부분적으로 업데이트
Expand
표 12.14. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 12.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EndpointSlice 스키마

201 - 생성됨

EndpointSlice 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 EndpointSlice를 교체
Expand
표 12.16. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 12.17. 본문 매개변수
매개변수유형설명

body

EndpointSlice 스키마

 
Expand
표 12.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EndpointSlice 스키마

201 - 생성됨

EndpointSlice 스키마

401 - 무단

12.2.6. /apis/discovery.k8s.io/v1/watch/namespaces/{namespace}/endpointslices/{name}

Expand
표 12.19. 글로벌 경로 매개변수
매개변수유형설명

name

string

EndpointSlice의 이름

HTTP 방법
GET
설명
EndpointSlice의 오브젝트 변경 사항을 확인합니다. 더 이상 사용되지 않는 경우 'watch' 매개변수를 목록 작업과 함께 대신 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.
Expand
표 12.20. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

13장. EgressRouter [network.operator.openshift.io/v1]

설명

EgressRouter는 사용자가 pod와 외부 시스템 간의 브리지 역할을 하는 송신 라우터를 정의할 수 있는 기능입니다. 송신 라우터는 Pod 또는 Pod 그룹에서 구성별로 원격 외부 시스템 또는 여러 대상으로 발생하는 송신 트래픽을 리디렉션하는 서비스를 실행합니다.

cluster-network-operator에서 사용합니다. 보다 구체적으로는 <name>을 사용하여 EgressRouter CR이 지정된 경우 CNO는 생성 및 관리: - <name>이라는 송신 Pod - <name> - <name>이라고 하는 송신 Pod

호환성 수준 1: 최소 12 개월 또는 3 개의 마이너 릴리스 (더 긴 버전) 동안 주요 릴리스 내에서 사용할 수 있습니다.

EgressRouter는 단일 egressrouter Pod 구성 오브젝트입니다.

유형
object
필수 항목
  • spec

13.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

원하는 송신 라우터의 사양입니다.

status

object

EgressRouter의 상태를 확인합니다.

13.1.1. .spec

설명
원하는 송신 라우터의 사양입니다.
유형
object
필수 항목
  • 주소
  • mode
  • networkInterface
Expand
속성유형설명

주소

array

Pod의 보조 인터페이스에서 구성할 IP 주소 목록입니다.

addresses[]

object

EgressRouterAddress에는 라우터 인터페이스에서 구성할 IP CIDR 및 게이트웨이 쌍이 포함되어 있습니다.

mode

string

모드는 송신 라우터에 사용되는 모드를 표시합니다. 기본 모드는 "Redirect"이며 현재 지원되는 유일한 모드입니다.

networkInterface

object

생성/사용할 인터페이스의 사양입니다. 기본값은 macvlan입니다. 현재 macvlan만 지원됩니다.

리디렉션

object

redirect는 리디렉션 모드와 관련된 구성 매개 변수를 나타냅니다.

13.1.2. .spec.addresses

설명
Pod의 보조 인터페이스에서 구성할 IP 주소 목록입니다.
유형
array

13.1.3. .spec.addresses[]

설명
EgressRouterAddress에는 라우터 인터페이스에서 구성할 IP CIDR 및 게이트웨이 쌍이 포함되어 있습니다.
유형
object
필수 항목
  • ip
Expand
속성유형설명

gateway

string

자동으로 확인할 수 없는 경우 next-hop 게이트웨이의 IP 주소입니다. IPv4 또는 IPv6일 수 있습니다.

ip

string

IP는 라우터 인터페이스에서 구성할 주소입니다. IPv4 또는 IPv6일 수 있습니다.

13.1.4. .spec.networkInterface

설명
생성/사용할 인터페이스의 사양입니다. 기본값은 macvlan입니다. 현재 macvlan만 지원됩니다.
유형
object
Expand
속성유형설명

macvlan

object

interfaceType macvlan와 관련된 인수

13.1.5. .spec.networkInterface.macvlan

설명
interfaceType macvlan와 관련된 인수
유형
object
필수 항목
  • mode
Expand
재산유형설명

master

string

마스터 인터페이스의 이름입니다. IP 주소에서 추론할 수 있는 경우에는 지정할 필요가 없습니다.

mode

string

모드는 macvlan 인터페이스에 사용되는 모드를 나타냅니다. Bridge|Private|VEPA|Passthru 중 하나입니다. 기본 모드는 "브리지"입니다.

13.1.6. .spec.redirect

설명
리다이렉트는 리다이렉트 모드에 특정한 구성 매개변수를 나타냅니다.
유형
object
Expand
재산유형설명

fallbackIP

string

fallbackIP는 원격 대상의 IP 주소를 지정합니다. IPv4 또는 IPv6가 될 수 있습니다. 리디렉션 규칙이 지정되지 않으면 라우터의 모든 트래픽이 이 IP로 리디렉션됩니다. 리디렉션 규칙이 지정되면 라우터의 다른 포트(규칙에 정의되지 않은 포트)에 대한 모든 연결은 이 IP로 리디렉션됩니다. 리디렉션 규칙이 지정되고 대체 IP가 제공되지 않으면 다른 포트의 연결은 거부됩니다.

redirectRules

array

리디렉트 모드에서 포드에서 목적지로의 DNAT 리디렉션을 정의하는 L4RedirectRules 목록입니다.

redirectRules[]

object

L4RedirectRule은 주어진 포트에서 대상 IP 및 포트로의 DNAT 리디렉션을 정의합니다.

13.1.7. .spec.redirect.redirectRules

설명
리디렉트 모드에서 포드에서 목적지로의 DNAT 리디렉션을 정의하는 L4RedirectRules 목록입니다.
유형
array

13.1.8. .spec.redirect.redirectRules[]

설명
L4RedirectRule은 주어진 포트에서 대상 IP 및 포트로의 DNAT 리디렉션을 정의합니다.
유형
object
필수 항목
  • destinationIP
  • port
  • 규약
Expand
재산유형설명

destinationIP

string

IP는 원격 대상의 IP 주소를 지정합니다. IPv4 또는 IPv6가 될 수 있습니다.

port

integer

port는 클라이언트가 리디렉션될 트래픽을 보내야 하는 포트 번호입니다.

규약

string

프로토콜은 TCP, SCTP 또는 UDP가 될 수 있습니다.

targetPort

integer

targetPort를 사용하면 트래픽이 리디렉션되는 원격 대상의 포트 번호를 지정할 수 있습니다. 지정하지 않으면 "포트"의 값이 사용됩니다.

13.1.9. .status

설명
EgressRouter의 관찰된 상태입니다.
유형
object
필수 항목
  • conditions
Expand
재산유형설명

conditions

array

출구 라우터의 관찰된 상태

conditions[]

object

EgressRouterStatusCondition은 이그레스 라우터의 관리 및 모니터링 구성 요소의 상태를 나타냅니다.

13.1.10. .status.conditions

설명
출구 라우터의 관찰된 상태
유형
array

13.1.11. .status.conditions[]

설명
EgressRouterStatusCondition은 이그레스 라우터의 관리 및 모니터링 구성 요소의 상태를 나타냅니다.
유형
object
필수 항목
  • status
  • type
Expand
재산유형설명

lastTransitionTime

``

lastTransitionTime은 현재 상태 속성에 대한 마지막 업데이트 시간입니다.

message

string

메시지는 현재 상황에 대한 추가 정보를 제공합니다. 이는 사람만을 위한 용도로 제공됩니다. 줄 바꿈 문자(U+000A)가 포함되어 있을 수 있으며, 이는 새 줄로 표시되어야 합니다.

reason

string

reason은 해당 조건의 현재 상태에 대한 CamelCase 이유입니다.

status

string

조건의 상태는 True, False, Unknown 중 하나입니다.

type

string

유형은 이 조건에서 보고되는 측면을 지정합니다. 사용 가능, 진행 중, 저하됨 중 하나입니다.

13.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/network.operator.openshift.io/v1/egressrouters

    • GET : EgressRouter 종류의 객체 목록
  • /apis/network.operator.openshift.io/v1/namespaces/{namespace}/egressrouters

    • DELETE : EgressRouter 컬렉션 삭제
    • GET : EgressRouter 종류의 객체 목록
    • POST : EgressRouter 생성
  • /apis/network.operator.openshift.io/v1/namespaces/{namespace}/egressrouters/{name}

    • DELETE : EgressRouter 삭제
    • GET : 지정된 EgressRouter를 읽습니다.
    • PATCH : 지정된 EgressRouter를 부분적으로 업데이트합니다.
    • PUT : 지정된 EgressRouter를 교체합니다.
  • /apis/network.operator.openshift.io/v1/namespaces/{namespace}/egressrouters/{name}/status

    • GET : 지정된 EgressRouter의 상태를 읽습니다.
    • PATCH : 지정된 EgressRouter의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 EgressRouter의 상태를 바꿉니다.

13.2.1. /apis/network.operator.openshift.io/v1/egressrouters

HTTP 방법
얻다
설명
EgressRouter 종류의 객체 목록
Expand
표 13.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressRouterList 스키마

401 - 승인되지 않음

비어 있는

13.2.2. /apis/network.operator.openshift.io/v1/namespaces/{namespace}/egressrouters

HTTP 방법
DELETE
설명
EgressRouter 컬렉션 삭제
Expand
표 13.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
EgressRouter 종류의 객체 목록
Expand
표 13.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressRouterList 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
EgressRouter를 생성하세요
Expand
표 13.4. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 13.5. 신체 매개변수
매개변수유형설명

body

EgressRouter 스키마

 
Expand
표 13.6. HTTP 응답
HTTP 코드응답 본문

200 - 확인

EgressRouter 스키마

201 - 생성됨

EgressRouter 스키마

202 - 승인됨

EgressRouter 스키마

401 - 승인되지 않음

비어 있는

13.2.3. /apis/network.operator.openshift.io/v1/namespaces/{namespace}/egressrouters/{name}

Expand
표 13.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressRouter의 이름

HTTP 방법
DELETE
설명
EgressRouter 삭제
Expand
표 13.8. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 13.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 EgressRouter 읽기
Expand
표 13.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressRouter 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EgressRouter를 부분적으로 업데이트
Expand
표 13.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 13.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressRouter 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 EgressRouter 교체
Expand
표 13.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 13.14. 본문 매개변수
매개변수유형설명

body

EgressRouter 스키마

 
Expand
표 13.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressRouter 스키마

201 - 생성됨

EgressRouter 스키마

401 - 무단

Expand
표 13.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

EgressRouter의 이름

HTTP 방법
GET
설명
지정된 EgressRouter의 읽기 상태
Expand
표 13.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressRouter 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 EgressRouter의 부분적으로 업데이트 상태
Expand
표 13.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 13.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressRouter 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 EgressRouter의 상태 교체
Expand
표 13.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 13.21. 본문 매개변수
매개변수유형설명

body

EgressRouter 스키마

 
Expand
표 13.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

EgressRouter 스키마

201 - 생성됨

EgressRouter 스키마

401 - 무단

14장. GRPCRoute [gateway.networking.k8s.io/v1]

설명

GRPCRoute는 gRPC 요청을 라우팅하는 방법을 제공합니다. 여기에는 호스트 이름, gRPC 서비스, gRPC 메서드 또는 HTTP/2 헤더로 요청을 일치시키는 기능이 포함됩니다. 필터를 사용하여 추가 처리 단계를 지정할 수 있습니다. 백엔드는 일치하는 요청이 라우팅될 위치를 지정합니다.

GRPCRoute는 게이트웨이 API 내에서 확장된 지원을 받습니다. 다음 사양 내에서 "MUST"라는 용어는 GRPCRoute를 지원하는 구현이 표시된 요구 사항을 준수해야 함을 나타냅니다. 그러나 이 경로 유형을 지원하지 않는 구현에서는 명시적으로 표시되지 않는 한 요구 사항을 따를 필요가 없습니다.

HTTPS ProtocolType 을 사용하여 GRPCRoute 를 지원하는 구현은 HTTP/1.1에서 초기 업그레이드없이 HTTP/2 연결 즉 ALPN을 통해 HTTP/2 연결을 수락해야 합니다. 구현에서 이를 지원하지 않는 경우 영향을 받는 리스너의 "Accepted" 조건을 "UnsupportedProtocol"의 원인이 있는 "False"로 설정해야 합니다. 구현에서는 HTTP/1에서 업그레이드하는 HTTP/2 연결도 허용할 수 있습니다.

HTTP ProtocolType 을 사용하여 GRPCRoute 를 지원하는 구현은 HTTP/1.1의 초기 업그레이드 없이 HTTP/2 over cleartext TCP(h2c, https://www.rfc-editor.org/rfc/rfc7540#section-3.1)를 지원해야 합니다(즉, 사전 지식(https://www.rfc-editor.org/rfc/rfc7540#section-3.4)). 구현에서 이를 지원하지 않는 경우 영향을 받는 리스너의 "Accepted" 조건을 "UnsupportedProtocol"의 원인이 있는 "False"로 설정해야 합니다. 구현에서는 HTTP/1에서 업그레이드하는 HTTP/2 연결(예: 사전 지식 없이)을 허용할 수도 있습니다.

유형
object

14.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec은 원하는 GRPCRoute 상태를 정의합니다.

status

object

상태는 GRPCRoute의 현재 상태를 정의합니다.

14.1.1. .spec

설명
spec은 원하는 GRPCRoute 상태를 정의합니다.
유형
object
Expand
속성유형설명

호스트 이름

배열(문자열)

호스트 이름은 GRPC Host 헤더와 일치시킬 호스트 이름 세트를 정의하여 요청을 처리할 GRPCRoute를 선택합니다. 이는 두 가지 주요 예외가 있는 호스트 이름의 RFC 1123 정의와 일치합니다.

1. IP는 허용되지 않습니다. 2. 호스트 이름 앞에 와일드카드 레이블(*.)이 붙일 수 있습니다. 와일드카드 레이블은 첫 번째 레이블로 직접 표시되어야 합니다.

호스트 이름이 Listener 및 GRPCRoute 모두에 의해 지정되면 GRPCRoute가 Listener에 연결되기 위해 하나 이상의 교차 호스트 이름이 있어야 합니다. 예를 들면 다음과 같습니다.

* 호스트 이름으로 test.example.com 이 있는 Listener는 호스트 이름을 지정하지 않았거나 test.example.com 또는 *.example.com 중 하나를 지정한 GRPCRoutes와 일치합니다. * 호스트 이름으로 *.example.com 이 있는 Listener는 호스트 이름을 지정하지 않았거나 Listener 호스트 이름과 일치하는 호스트 이름을 하나 이상 지정한 GRPCRoutes와 일치합니다. 예를 들어 test.example.com\*.example.com 은 둘 다 일치합니다. 반면 example.comtest.example.net 이 일치하지 않습니다.

와일드카드 레이블(*.) 접두사가 붙은 호스트 이름은 접미사 일치로 해석됩니다. 즉, *. example.com 에 대한 일치는 test.example.comfoo.test.example.com 과 일치하지만 example.com은 일치하지 않습니다.

Listener와 GRPCRoute의 호스트 이름이 모두 지정된 경우 Listener 호스트 이름과 일치하지 않는 GRPCRoute 호스트 이름을 무시해야 합니다. 예를 들어 Listener가 *.example.com 을 지정하고 GRPCRoute 지정 test.example.comtest.example.net,test.example.net 이 일치하는 것으로 간주해서는 안 됩니다.

Listener와 GRPCRoute 둘 다 호스트 이름을 지정하고 위의 기준과 일치하지 않는 경우 구현 시 GRPCRoute를 수락해서는 안 됩니다. 구현은 RouteParentStatus에서 False 상태로 'Accepted' 조건을 제기해야 합니다.

HTTPRoute 또는 GRPCRoute 유형의 경로(A)가 Listener에 연결되어 있고 해당 리스너에 연결된 다른 경로(B)가 이미 연결되어 있고 호스트 이름과 B의 교집합이 비어 있지 않은 경우 구현은 다음 기준에 따라 결정되는 이 두 경로 중 하나를 정확히 수락해야 합니다.

* 생성 타임스탬프를 기반으로 하는 가장 오래된 경로입니다. * "{namespace}/{name}"에 의해 알파벳순으로 먼저 나타나는 경로.

거부된 경로는 해당 RouteParentStatus에서 'False' 상태로 'Accepted' 조건을 제기해야 합니다.

지원: Core

parentRefs

array

ParentRefs는 경로를 연결하려는 리소스(일반적으로 게이트웨이)를 참조합니다. 참조된 상위 리소스는 이 경우 첨부 파일이 완료될 수 있도록 허용해야 합니다. 게이트웨이의 경우 게이트웨이는 이 종류 및 네임스페이스의 경로에서 연결을 허용해야 함을 의미합니다. 서비스의 경우 서비스는 "producer" 경로에 대해 동일한 네임스페이스에 있거나 메시 구현에서 참조된 서비스에 대한 "소유자" 경로를 지원하고 허용해야 함을 의미합니다. ReferenceGrant는 서비스에 대한 상위 참조 관리에는 적용되지 않습니다 - 경로와 다른 네임스페이스에서 서비스에 대한 "생성자" 경로를 생성할 수 없습니다.

"Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

* 게이트웨이 (Gateway 적합성 프로파일) * 서비스 (Mesh 적합성 프로파일, ClusterIP 서비스 만 해당)

이 API는 나중에 추가 종류의 상위 리소스를 지원하도록 확장될 수 있습니다.

parentRef는 구별 되어야 합니다. 즉, 다음과 같습니다.

* 다양한 개체를 선택합니다. 이 경우 parentRef 항목이 구분됩니다. 필드 측면에서 이는 그룹,종류,네임스페이스, name 으로 정의된 다중 파트 키가 경로의 모든 parentRef 항목에서 고유해야 함을 의미합니다. * 서로 다른 오브젝트를 선택하지 않지만, 사용된 각 선택적 필드에 대해 동일한 오브젝트를 선택하는 각 parentRef는 동일한 선택적 필드 세트를 다른 값으로 설정해야 합니다. 하나의 ParentRef가 선택적 필드의 조합을 설정하는 경우 모두 동일한 조합을 설정해야 합니다.

몇 가지 예:

* 하나의 ParentRef가 sectionName 을 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 sectionName 을 설정해야 합니다. * 하나의 ParentRef가 포트 를 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 포트 를 설정해야 합니다. * 하나의 ParentRef가 sectionNameport 를 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 sectionNameport 를 설정해야 합니다.

구현에 의해 축소될 수 있는 여러 개의 개별 개체를 별도로 참조할 수 있습니다. 예를 들어 일부 구현에서는 호환 가능한 게이트웨이 수신기를 함께 병합하도록 선택할 수 있습니다. 이 경우 해당 리소스에 연결된 경로 목록도 병합해야 합니다.

parentRefs의 경우 네임스페이스 경계를 통한 특정 규칙이 있습니다. 네임스페이스 간 참조는 참조하는 네임스페이스의 항목에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어 게이트웨이에는 AllowedRoutes 필드가 있으며 ReferenceGrant는 다른 종류의 네임스페이스를 사용할 수 있는 일반적인 방법을 제공합니다.

parentRefs[]

object

ParentReference는 이 리소스의 상위(일반적으로 경로)로 간주할 수 있는 API 오브젝트(일반적으로 게이트웨이)를 식별합니다. "Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

* 게이트웨이 (Gateway 적합성 프로파일) * 서비스 (Mesh 적합성 프로파일, ClusterIP 서비스 만 해당)

이 API는 나중에 추가 종류의 상위 리소스를 지원하도록 확장될 수 있습니다.

API 오브젝트는 클러스터에서 유효해야 합니다. 이 참조가 유효하려면 Group 및 Kind를 클러스터에 등록해야 합니다.

규칙

array

규칙은 GRPC 일치자, 필터 및 작업의 목록입니다.

rules[]

object

GRPCRouteRule은 조건(matches), 처리(filters)를 기반으로 gRPC 요청을 일치시키고, 요청을 API 오브젝트(backendRefs)로 전달하기 위한 시맨틱을 정의합니다.

14.1.2. .spec.parentRefs

설명

ParentRefs는 경로를 연결하려는 리소스(일반적으로 게이트웨이)를 참조합니다. 참조된 상위 리소스는 이 경우 첨부 파일이 완료될 수 있도록 허용해야 합니다. 게이트웨이의 경우 게이트웨이는 이 종류 및 네임스페이스의 경로에서 연결을 허용해야 함을 의미합니다. 서비스의 경우 서비스는 "producer" 경로에 대해 동일한 네임스페이스에 있거나 메시 구현에서 참조된 서비스에 대한 "소유자" 경로를 지원하고 허용해야 함을 의미합니다. ReferenceGrant는 서비스에 대한 상위 참조 관리에는 적용되지 않습니다 - 경로와 다른 네임스페이스에서 서비스에 대한 "생성자" 경로를 생성할 수 없습니다.

"Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

  • 게이트웨이 (Gateway 적합성 프로파일)
  • 서비스(Mesh 적합성 프로필, ClusterIP 서비스만 해당)

이 API는 나중에 추가 종류의 상위 리소스를 지원하도록 확장될 수 있습니다.

parentRef는 구별 되어야 합니다. 즉, 다음과 같습니다.

  • 다양한 오브젝트를 선택합니다. 이 경우 parentRef 항목이 구분됩니다. 필드 측면에서 이는 그룹,종류,네임스페이스, name 으로 정의된 다중 파트 키가 경로의 모든 parentRef 항목에서 고유해야 함을 의미합니다.
  • 서로 다른 오브젝트를 선택하지 않지만, 사용된 각 선택적 필드의 경우 동일한 오브젝트를 선택하는 각 ParentRef는 동일한 선택적 필드 집합을 다른 값으로 설정해야 합니다. 하나의 ParentRef가 선택적 필드의 조합을 설정하는 경우 모두 동일한 조합을 설정해야 합니다.

몇 가지 예:

  • 하나의 ParentRef가 sectionName 을 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 sectionName 을 설정해야 합니다.
  • 하나의 ParentRef가 포트 를 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 포트 를 설정해야 합니다.
  • 하나의 ParentRef가 sectionNameport 를 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 sectionNameport 를 설정해야 합니다.

구현에 의해 축소될 수 있는 여러 개의 개별 개체를 별도로 참조할 수 있습니다. 예를 들어 일부 구현에서는 호환 가능한 게이트웨이 수신기를 함께 병합하도록 선택할 수 있습니다. 이 경우 해당 리소스에 연결된 경로 목록도 병합해야 합니다.

parentRefs의 경우 네임스페이스 경계를 통한 특정 규칙이 있습니다. 네임스페이스 간 참조는 참조하는 네임스페이스의 항목에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어 게이트웨이에는 AllowedRoutes 필드가 있으며 ReferenceGrant는 다른 종류의 네임스페이스를 사용할 수 있는 일반적인 방법을 제공합니다.

유형
array

14.1.3. .spec.parentRefs[]

설명

ParentReference는 이 리소스의 상위(일반적으로 경로)로 간주할 수 있는 API 오브젝트(일반적으로 게이트웨이)를 식별합니다. "Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

  • 게이트웨이 (Gateway 적합성 프로파일)
  • 서비스(Mesh 적합성 프로필, ClusterIP 서비스만 해당)

이 API는 나중에 추가 종류의 상위 리소스를 지원하도록 확장될 수 있습니다.

API 오브젝트는 클러스터에서 유효해야 합니다. 이 참조가 유효하려면 Group 및 Kind를 클러스터에 등록해야 합니다.

유형
object
필수 항목
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 지정되지 않은 경우 "gateway.networking.k8s.io"가 유추됩니다. 코어 API 그룹(예: "Service" kind referent의 경우)을 설정하려면 그룹을 명시적으로 ""(빈 문자열)로 설정해야 합니다.

지원: Core

kind

string

이는 일종의 참조입니다.

"Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

* 게이트웨이 (Gateway 적합성 프로파일) * 서비스 (Mesh 적합성 프로파일, ClusterIP 서비스 만 해당)

다른 리소스에 대한 지원은 Implementation-Specific입니다.

name

string

이름은 참조의 이름입니다.

지원: Core

네임스페이스

string

네임스페이스는 참조의 네임스페이스입니다. 지정되지 않은 경우 경로의 로컬 네임스페이스를 나타냅니다.

네임스페이스 경계를 통과하는 ParentRefs에 대한 특정 규칙이 있습니다. 네임스페이스 간 참조는 참조하는 네임스페이스의 항목에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어 게이트웨이에는 AllowedRoutes 필드가 있으며 ReferenceGrant는 다른 종류의 네임스페이스를 활성화하는 일반적인 방법을 제공합니다.

지원: Core

port

integer

port는 이 경로가 대상으로 하는 네트워크 포트입니다. 상위 리소스 유형에 따라 다르게 해석될 수 있습니다.

상위 리소스가 게이트웨이인 경우 이러한 종류의 경로도 지원하는 지정된 포트에서 수신 대기 중인 모든 리스너를 대상으로 하고 이 경로를 선택합니다. 경로에 지정된 네트워킹 동작을 포트를 변경할 수 있는 리스너와 달리 특정 포트에 적용해야 하는 경우를 제외하고 Port 를 설정하지 않는 것이 좋습니다. Port 및 sectionName을 둘 다 지정하면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 상위 리소스를 지원하도록 선택할 수 있습니다. 다른 유형의 상위 리소스를 지원하는 구현은 Port가 해석되는 방법을 명확하게 문서화해야 합니다.

상태를 위해 상위 리소스에서 부분적으로 수락하면 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: 확장

sectionName

string

sectionName은 대상 리소스에 있는 섹션의 이름입니다. 다음 리소스에서 sectionName은 다음과 같이 해석됩니다.

* 게이트웨이: 리스너 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다. * 서비스: 포트 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 리소스에 경로 연결을 지원하도록 선택할 수 있습니다. 이 경우 sectionName을 해석하는 방법을 명확하게 문서화해야 합니다.

지정되지 않은 경우(빈 문자열) 전체 리소스를 참조합니다. 상태의 목적을 위해 부모 리소스의 하나 이상의 섹션에서 이를 수락하는 경우 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: Core

14.1.4. .spec.rules

설명
규칙은 GRPC 일치자, 필터 및 작업의 목록입니다.
유형
array

14.1.5. .spec.rules[]

설명
GRPCRouteRule은 조건(matches), 처리(filters)를 기반으로 gRPC 요청을 일치시키고, 요청을 API 오브젝트(backendRefs)로 전달하기 위한 시맨틱을 정의합니다.
유형
object
Expand
속성유형설명

backendRefs

array

BackendRefs는 일치하는 요청을 보내야 하는 백엔드를 정의합니다.

여기에서 실패 동작은 지정된 BackendRef 수와 유효하지 않은 횟수에 따라 달라집니다.

BackendRefs의 모든 항목이 유효하지 않고 이 경로 규칙에 지정된 필터도 없는 경우 이 규칙과 일치하는 모든 트래픽은 UNAVAILABLE 상태를 받아야 합니다.

GRPCBackendRef 단일 GRPCBackendRef를 만드는 방법에 대한 규칙은 GRPCBackendRef 정의를 참조하십시오.

GRPCBackendRef가 유효하지 않으면 잘못된 백엔드로 라우팅된 요청에 대해 UNAVAILABLE 상태를 반환해야 합니다. 여러 백엔드가 지정되고 일부는 유효하지 않은 경우, 그렇지 않으면 잘못된 백엔드로 라우팅된 요청 비율이 UNAVAILABLE 상태를 받아야 합니다.

예를 들어 두 백엔드가 동일한 가중치로 지정되고 하나는 유효하지 않은 경우 트래픽의 50%는 UNAVAILABLE 상태를 수신해야 합니다. 구현은 50%를 결정하는 방법을 선택할 수 있습니다.

지원: Kubernetes 서비스 코어

지원: 다른 리소스에 대한 구현별

가중치 지원: Core

backendRefs[]

object

GRPCBackendRef는 GRPCRoute가 gRPC 요청을 전달하는 방법을 정의합니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

filters

array

필터는 이 규칙과 일치하는 요청에 적용되는 필터를 정의합니다.

여러 동작의 순서를 지정하는 영향은 현재 지정되지 않습니다. 이는 알파 단계의 피드백에 따라 향후 변경될 수 있습니다.

이 수준의 적합성 수준은 필터 유형에 따라 정의됩니다.

- All core filters must be supported by all implementations that support GRPCRoute. - 구현자는 확장 필터를 지원하는 것이 좋습니다. - 구현별 사용자 지정 필터에는 구현에 API가 보장되지 않습니다.

필터에 명시적으로 표시되지 않는 한 동일한 필터를 여러 번 지정하는 것은 지원되지 않습니다.

구현에서 필터 조합을 지원할 수 없는 경우 해당 제한을 명확하게 문서화해야 합니다. 호환되지 않거나 지원되지 않는 필터가 지정되고 Accepted 조건이 False 상태로 설정되는 경우 구현에서 IncompatibleFilters 이유를 사용하여 이 구성 오류를 지정할 수 있습니다.

지원: Core

filters[]

object

GRPCRouteFilter는 요청 또는 응답 라이프사이클 중에 완료해야 하는 처리 단계를 정의합니다. GRPCRouteFilters는 게이트웨이 구현에서 수행할 수 있는 처리를 나타내는 확장 지점입니다. 일부 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한 및 트래픽 형성이 포함됩니다. API Guarantee/conformance는 필터 유형에 따라 정의됩니다.

일치

array

matches는 들어오는 gRPC 요청과 대조되는 규칙과 일치하는 데 사용되는 조건을 정의합니다. 일치 항목이 독립적입니다. 즉, 일치 항목 중 하나가 충족되면 이 규칙이 일치합니다.

예를 들어 다음과 같은 구성이 일치하도록 합니다.

matches: - method: service: foo.bar headers: values: version: 2 - method: service: foo.bar.v2

이 규칙에 대한 요청이 일치하려면 다음 두 조건 중 EITHER를 충족해야 합니다.

- foo.bar의 서비스 및 헤더 버전을 포함합니다: 2 - foo.bar.v2의 서비스

ANDed할 여러 일치 조건을 지정하는 방법은 GRPCRouteMatch에 대한 설명서를 참조하십시오.

일치하는 항목이 없는 경우 구현이 모든 gRPC 요청과 일치해야 합니다.

GRPCRoutes에서 생성된 프록시 또는 로드 밸런서 라우팅 구성은 다음 기준에 따라 우선 순위를 정하고 연결 상태를 유지해야 합니다. GRPCRoutes와 HTTPRoutes 간에 병합해서는 안 됩니다. 다음 중 가장 큰 수를 가진 규칙에 우선순위를 부여해야 합니다.

일치하는 와일드카드 호스트 이름의 문자입니다. 일치하는 호스트 이름의 문자입니다. 일치하는 서비스의 문자입니다. 일치하는 메서드의 문자입니다. * 헤더 일치.

여러 경로에 걸쳐 연결이 여전히 존재하는 경우 일치하는 우선순위는 다음 기준의 순서대로 결정되어야 하며 연결에서 계속해야 합니다.

* 생성 타임스탬프를 기반으로 하는 가장 오래된 경로입니다. * "{namespace}/{name}"에 의해 알파벳순으로 먼저 나타나는 경로.

우선 순위가 지정된 경로 내에 관계가 있는 경우 위의 기준을 충족하는 첫 번째 일치 규칙에 일치하는 우선순위를 부여해야 합니다.

matches[]

object

GRPCRouteMatch는 지정된 작업에 요청을 일치시키는 데 사용되는 서술자를 정의합니다. 여러 일치 유형이 함께 ANDed됩니다. 즉, 모든 조건이 충족되는 경우에만 일치가 true로 평가됩니다.

예를 들어 아래 일치 항목은 서비스가 foo 이고 version: v1 헤더가 포함된 경우에만 gRPC 요청과 일치합니다.

matches: - method: type: Exact service: "foo" headers: - name: "version" value "v1"

14.1.6. .spec.rules[].backendRefs

설명

BackendRefs는 일치하는 요청을 보내야 하는 백엔드를 정의합니다.

여기에서 실패 동작은 지정된 BackendRef 수와 유효하지 않은 횟수에 따라 달라집니다.

BackendRefs의 모든 항목이 유효하지 않고 이 경로 규칙에 지정된 필터도 없는 경우 이 규칙과 일치하는 모든 트래픽은 UNAVAILABLE 상태를 받아야 합니다.

GRPCBackendRef 단일 GRPCBackendRef를 만드는 방법에 대한 규칙은 GRPCBackendRef 정의를 참조하십시오.

GRPCBackendRef가 유효하지 않으면 잘못된 백엔드로 라우팅된 요청에 대해 UNAVAILABLE 상태를 반환해야 합니다. 여러 백엔드가 지정되고 일부는 유효하지 않은 경우, 그렇지 않으면 잘못된 백엔드로 라우팅된 요청 비율이 UNAVAILABLE 상태를 받아야 합니다.

예를 들어 두 백엔드가 동일한 가중치로 지정되고 하나는 유효하지 않은 경우 트래픽의 50%는 UNAVAILABLE 상태를 수신해야 합니다. 구현은 50%를 결정하는 방법을 선택할 수 있습니다.

지원: Kubernetes 서비스 코어

지원: 다른 리소스에 대한 구현별

가중치 지원: Core

유형
array

14.1.7. .spec.rules[].backendRefs[]

설명

GRPCBackendRef는 GRPCRoute가 gRPC 요청을 전달하는 방법을 정의합니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

유형
object
필수 항목
  • name
Expand
속성유형설명

filters

array

이 수준에서 정의된 필터는 요청이 여기에 정의된 백엔드로 전달되는 경우에만 실행해야 합니다.

지원: 구현에 따라 (필터의 광범위한 지원을 위해 GRPCRouteRule의 Filters 필드를 사용하십시오.)

filters[]

object

GRPCRouteFilter는 요청 또는 응답 라이프사이클 중에 완료해야 하는 처리 단계를 정의합니다. GRPCRouteFilters는 게이트웨이 구현에서 수행할 수 있는 처리를 나타내는 확장 지점입니다. 일부 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한 및 트래픽 형성이 포함됩니다. API Guarantee/conformance는 필터 유형에 따라 정의됩니다.

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

kind는 참조의 Kubernetes 리소스 유형입니다. 예: "Service".

지정하지 않는 경우 기본값은 "Service"입니다.

ExternalName 서비스는 클러스터 외부에 있을 수 있는 CNAME DNS 레코드를 참조할 수 있으므로 적합성 측면에서 이유하기가 어렵습니다. 또한 안전하게 전달하지 못할 수도 있습니다(자세한 내용은 CVE-2021-25740 참조). 구현은 ExternalName 서비스를 지원하지 않아야 합니다.

지원: Core (ExternalName 이외의 유형이 있는 서비스)

지원: 구현별 ( ExternalName 유형의 서비스)

name

string

이름은 참조의 이름입니다.

네임스페이스

string

네임스페이스는 백엔드의 네임스페이스입니다. 지정하지 않으면 로컬 네임스페이스가 유추됩니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

지원: Core

port

integer

port는 이 리소스에 사용할 대상 포트 번호를 지정합니다. 참조가 Kubernetes 서비스인 경우 포트가 필요합니다. 이 경우 포트 번호는 대상 포트가 아닌 서비스 포트 번호입니다. 기타 리소스의 경우 대상 포트가 참조 리소스 또는 이 필드에서 파생될 수 있습니다.

weight

integer

weight는 참조된 백엔드로 전달된 요청 비율을 지정합니다. 이 값은 weight/(이 BackendRefs 목록의 모든 가중치 합계)로 계산됩니다. 0이 아닌 값의 경우 구현에서 지원하는 전체 범위에 따라 여기에 정의된 정확한 비율에서 몇 가지 epsilon이 있을 수 있습니다.For non-zero values, there may be some epsilon from the exact proportion defined here depending on the precision an implementation supports. weight는 백분율이 아니며 가중치 합계는 100과 같을 필요가 없습니다.

하나의 백엔드만 지정되고 가중치가 0보다 크면 트래픽의 100%가 해당 백엔드로 전달됩니다. weight가 0으로 설정된 경우 이 항목에 대해 트래픽을 전달하지 않아야 합니다. 지정되지 않은 경우 weight는 기본적으로 1입니다.

이 필드에 대한 지원은 사용되는 컨텍스트에 따라 다릅니다.

14.1.8. .spec.rules[].backendRefs[].filters

설명

이 수준에서 정의된 필터는 요청이 여기에 정의된 백엔드로 전달되는 경우에만 실행해야 합니다.

지원: 구현에 따라 (필터의 광범위한 지원을 위해 GRPCRouteRule의 Filters 필드를 사용하십시오.)

유형
array

14.1.9. .spec.rules[].backendRefs[].filters[]

설명
GRPCRouteFilter는 요청 또는 응답 라이프사이클 중에 완료해야 하는 처리 단계를 정의합니다. GRPCRouteFilters는 게이트웨이 구현에서 수행할 수 있는 처리를 나타내는 확장 지점입니다. 일부 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한 및 트래픽 형성이 포함됩니다. API Guarantee/conformance는 필터 유형에 따라 정의됩니다.
유형
object
필수 항목
  • type
Expand
속성유형설명

extensionRef

object

ExtensionRef는 "필터" 동작에 대한 구현별 선택적 확장입니다. 예를 들어 "networking.example.net" 그룹의 리소스 "myroutefilter". ExtensionRef는 코어 및 확장 필터에는 사용해서는 안 됩니다.

지원: 구현별

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

requestHeaderModifier

object

RequestHeaderModifier는 요청 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: Core

requestMirror

object

RequestMirror는 요청을 미러링하는 필터의 스키마를 정의합니다. 요청은 지정된 대상으로 전송되지만 해당 대상의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드에 대한 미러링을 지원할 수 있는 것은 아닙니다.

지원: 확장

responseHeaderModifier

object

ResponseHeaderModifier는 응답 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: 확장

type

string

type은 적용할 필터 유형을 식별합니다. 다른 API 필드와 마찬가지로 유형은 세 가지 적합성 수준으로 분류됩니다.

- core: 이 패키지의 "Support: Core"에서 정의한 유형과 해당 구성을 필터링합니다. 예를 들면 다음과 같습니다. "RequestHeaderModifier". GRPCRoute를 지원하는 모든 구현에서는 핵심 필터를 지원해야 합니다.

- Extended: 이 패키지의 "Support: Extended"에 의해 정의된 필터 유형 및 해당 구성, 예를 들면 다음과 같습니다. "RequestMirror". 구현자는 확장 필터를 지원하는 것이 좋습니다.

- 구현별: 특정 공급업체에서 정의하고 지원하는 필터입니다. 향후 여러 구현에 걸쳐 동작에 융합되는 필터가 확장 또는 핵심 적합성 수준에 포함되는 것으로 간주됩니다. 이러한 필터에 대한 필터별 구성은 ExtensionRef 필드를 사용하여 지정됩니다. 사용자 지정 필터에 대해 Type 을 "ExtensionRef"로 설정해야 합니다.

구현자는 구현별 동작을 사용하여 코어 API를 확장하기 위해 사용자 지정 구현 유형을 정의하는 것이 좋습니다.

사용자 지정 필터 유형에 대한 참조를 확인할 수 없는 경우 필터를 건너뛰지 않아야 합니다. 대신 해당 필터로 처리된 요청은 HTTP 오류 응답을 받아야 합니다.

14.1.10. .spec.rules[].backendRefs[].filters[].extensionRef

설명

ExtensionRef는 "필터" 동작에 대한 구현별 선택적 확장입니다. 예를 들어 "networking.example.net" 그룹의 리소스 "myroutefilter". ExtensionRef는 코어 및 확장 필터에는 사용해서는 안 됩니다.

지원: 구현별

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

유형
object
필수 항목
  • group
  • kind
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

이는 일종의 참조입니다. 예: "HTTPRoute" 또는 "Service".

name

string

이름은 참조의 이름입니다.

14.1.11. .spec.rules[].backendRefs[].filters[].requestHeaderModifier

설명

RequestHeaderModifier는 요청 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: Core

유형
object
Expand
속성유형설명

add

array

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

제거

배열(문자열)

작업 전에 HTTP 요청에서 지정된 헤더를 제거합니다. Remove 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

config: remove: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

14.1.12. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.add

설명

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

14.1.13. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

14.1.14. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.set

설명

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

14.1.15. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

14.1.16. .spec.rules[].backendRefs[].filters[].requestMirror

설명

RequestMirror는 요청을 미러링하는 필터의 스키마를 정의합니다. 요청은 지정된 대상으로 전송되지만 해당 대상의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드에 대한 미러링을 지원할 수 있는 것은 아닙니다.

지원: 확장

유형
object
필수 항목
  • backendRef
Expand
속성유형설명

backendRef

object

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 백엔드Ref 내에 있는 끝점 수에 관계없이 이 BackendRef 내의 단일 대상 끝점에만 전송되어야 합니다.

참조자를 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 게이트웨이에서 삭제해야 합니다. 컨트롤러는 경로 상태의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않는지 확인해야 합니다.

ReferenceGrant에서 허용하지 않는 기존 오브젝트에 대한 네임스페이스 간 참조가 있는 경우 컨트롤러는 경로의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않도록 해야 합니다.

두 경우 모두 ResolvedRefs Condition의 Message of the ResolvedRefs Condition을 사용하여 문제에 대한 자세한 정보를 제공해야 합니다.

지원: Kubernetes 서비스에 대한 확장

지원: 다른 리소스에 대한 구현별

분수

object

fraction는 BackendRef로 미러링해야 하는 요청의 일부를 나타냅니다.

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

백분율

integer

percent는 BackendRef에 미러링해야 하는 요청의 백분율을 나타냅니다. 최소 값은 0(요청의 0%를 나타내는)이고 최대값은 100입니다(요청의 100%를 나타냄).

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

14.1.17. .spec.rules[].backendRefs[].filters[].requestMirror.backendRef

설명

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 BackendRef 내에 얼마나 많은 엔드포인트가 있는지에 관계 없이, 이 BackendRef 내의 단일 대상 엔드포인트로만 전송되어야 합니다.

참조 대상을 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 Gateway에서 삭제해야 합니다. 컨트롤러는 Route 상태의 "ResolvedRefs" 조건이 False 로 설정되어 있는지 확인해야 하며 기본 구현에서 이 백엔드를 구성해서는 안 됩니다.

ReferenceGrant에서 허용하지 않는 기존 객체에 대한 교차 네임스페이스 참조가 있는 경우, 컨트롤러는 Route의 "ResolvedRefs" 조건이 "RefNotPermitted" 이유와 함께 status: False 로 설정되어 있는지 확인해야 하며, 기본 구현에서 이 백엔드를 구성하지 않아야 합니다.

두 가지 오류 사례 모두 ResolvedRefs 조건의 메시지를 사용하여 문제에 대한 자세한 내용을 제공해야 합니다.

지원: Kubernetes Service에 대해 확장됨

지원: 다른 리소스에 대한 구현별 지원

유형
object
필수 항목
  • name
Expand
재산유형설명

group

string

그룹은 참조 대상의 그룹입니다. 예를 들어, "gateway.networking.k8s.io". 지정되지 않았거나 빈 문자열인 경우 핵심 API 그룹이 유추됩니다.

kind

string

종류는 참조 대상의 Kubernetes 리소스 종류입니다. 예를 들어 "서비스".

지정하지 않으면 기본적으로 "서비스"가 사용됩니다.

ExternalName 서비스는 클러스터 외부에 있는 CNAME DNS 레코드를 참조할 수 있으므로 적합성 측면에서 추론하기 어렵습니다. 또한 이를 전달하는 것이 안전하지 않을 수도 있습니다(자세한 내용은 CVE-2021-25740 참조). 구현에서는 ExternalName 서비스를 지원하지 않아야 합니다.

지원: Core(ExternalName이 아닌 유형의 서비스)

지원: 구현별(ExternalName 유형의 서비스)

name

string

이름은 지시 대상의 이름입니다.

네임스페이스

string

네임스페이스는 백엔드의 네임스페이스입니다. 지정하지 않으면 로컬 네임스페이스가 유추됩니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 대상 네임스페이스에 ReferenceGrant 개체가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하세요.

지원: 코어

port

integer

포트는 이 리소스에 사용할 대상 포트 번호를 지정합니다. 참조 대상이 Kubernetes 서비스인 경우 포트가 필요합니다. 이 경우 포트 번호는 대상 포트가 아닌 서비스 포트 번호입니다. 다른 리소스의 경우 대상 포트는 참조 리소스나 이 필드에서 파생될 수 있습니다.

14.1.18. .spec.rules[].backendRefs[].filters[].requestMirror.fraction

설명

분수는 BackendRef에 미러링되어야 하는 요청의 분수를 나타냅니다.

분수 또는 백분율 중 하나만 지정할 수 있습니다. 두 필드 모두 지정되지 않으면 요청의 100%가 미러링됩니다.

유형
object
필수 항목
  • 분자
Expand
재산유형설명

분모

integer

 

분자

integer

 

14.1.19. .spec.rules[].backendRefs[].filters[].responseHeaderModifier

설명

ResponseHeaderModifier는 응답 헤더를 수정하는 필터에 대한 스키마를 정의합니다.

지원: 확장됨

유형
object
Expand
재산유형설명

add

array

Add는 작업 전에 요청에 지정된 헤더(이름, 값)를 추가합니다. 헤더 이름과 연관된 기존 값에 추가됩니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 추가: - 이름: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.

제거하다

배열(문자열)

작업 전에 HTTP 요청에서 주어진 헤더를 제거합니다. Remove의 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2 참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

구성: 제거: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

Set은 작업 전에 주어진 헤더(이름, 값)로 요청을 덮어씁니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 설정: - 이름: "my-header" 값: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.

14.1.20. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.add

설명

Add는 작업 전에 요청에 지정된 헤더(이름, 값)를 추가합니다. 헤더 이름과 연관된 기존 값에 추가됩니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 추가: - 이름: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

14.1.21. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
재산유형설명

name

string

Name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2 참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 동등한 이름을 가진 첫 번째 항목은 반드시 일치하는 것으로 간주됩니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름은 대소문자를 구분하지 않으므로 "foo"와 "Foo"는 동일한 것으로 간주됩니다.

value

string

Value는 일치시킬 HTTP 헤더의 값입니다.

14.1.22. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.set

설명

Set은 작업 전에 주어진 헤더(이름, 값)로 요청을 덮어씁니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 설정: - 이름: "my-header" 값: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

14.1.23. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
재산유형설명

name

string

Name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2 참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 동등한 이름을 가진 첫 번째 항목은 반드시 일치하는 것으로 간주됩니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름은 대소문자를 구분하지 않으므로 "foo"와 "Foo"는 동일한 것으로 간주됩니다.

value

string

Value는 일치시킬 HTTP 헤더의 값입니다.

14.1.24. .spec.rules[].filters

설명

필터는 이 규칙과 일치하는 요청에 적용되는 필터를 정의합니다.

현재로선 여러 행동의 순서가 미치는 영향은 구체적으로 밝혀지지 않았습니다. 이는 알파 단계의 피드백을 바탕으로 향후 변경될 수 있습니다.

이 수준의 적합성 수준은 필터 유형에 따라 정의됩니다.

  • 모든 핵심 필터는 GRPCRoute를 지원하는 모든 구현에서 지원되어야 합니다.
  • 구현자는 확장 필터를 지원하는 것이 좋습니다.
  • 구현에 따른 사용자 정의 필터는 구현 전반에 걸쳐 API 보장이 없습니다.

필터에 명시적으로 지정하지 않는 한 동일한 필터를 여러 번 지정하는 것은 지원되지 않습니다.

구현에서 필터 조합을 지원할 수 없는 경우 해당 제한 사항을 명확하게 문서화해야 합니다. 호환되지 않거나 지원되지 않는 필터가 지정되어 Accepted 조건이 False 상태로 설정되는 경우 구현에서는 IncompatibleFilters 이유를 사용하여 이 구성 오류를 지정할 수 있습니다.

지원: 코어

유형
array

14.1.25. .spec.rules[].filters[]

설명
GRPCRouteFilter는 요청 또는 응답 라이프사이클 동안 완료되어야 하는 처리 단계를 정의합니다. GRPCRouteFilters는 Gateway 구현에서 수행될 수 있는 처리를 표현하기 위한 확장 지점으로 사용됩니다. 몇 가지 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한, 트래픽 조정 등이 있습니다. API 보장/적합성은 필터 유형에 따라 정의됩니다.
유형
object
필수 항목
  • type
Expand
재산유형설명

extensionRef

object

ExtensionRef는 "필터" 동작에 대한 선택적이고 구현에 맞는 확장입니다. 예를 들어, 그룹 "networking.example.net"의 리소스 "myroutefilter"입니다. ExtensionRef는 핵심 필터와 확장 필터에 사용해서는 안 됩니다.

지원: 구현별

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

requestHeaderModifier

object

RequestHeaderModifier는 요청 헤더를 수정하는 필터에 대한 스키마를 정의합니다.

지원: 코어

requestMirror

object

RequestMirror는 요청을 미러링하는 필터에 대한 스키마를 정의합니다. 요청은 지정된 대상지로 전송되지만 해당 대상에서의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드로의 미러링을 지원할 수 있는 것은 아니라는 점에 유의하세요.

지원: 확장됨

responseHeaderModifier

object

ResponseHeaderModifier는 응답 헤더를 수정하는 필터에 대한 스키마를 정의합니다.

지원: 확장됨

type

string

유형은 적용할 필터의 유형을 식별합니다. 다른 API 필드와 마찬가지로 유형은 세 가지 적합성 수준으로 분류됩니다.

- Core: 이 패키지의 "지원: Core"에서 정의된 필터 유형 및 해당 구성, 예: "RequestHeaderModifier". GRPCRoute를 지원하는 모든 구현은 핵심 필터를 지원해야 합니다.

- 확장: 이 패키지의 "지원: 확장"에서 정의된 필터 유형 및 해당 구성, 예: "RequestMirror". 구현자는 확장 필터를 지원하는 것이 좋습니다.

- 구현별: 특정 공급업체에서 정의하고 지원하는 필터입니다. 앞으로는 여러 구현에서 동작의 수렴을 보여주는 필터가 확장 또는 핵심 적합성 수준에 포함되는 것이 고려될 것입니다. 이러한 필터에 대한 필터별 구성은 ExtensionRef 필드를 사용하여 지정됩니다. 사용자 지정 필터의 경우 유형을 "ExtensionRef"로 설정해야 합니다.

구현자는 구현에 맞는 동작으로 핵심 API를 확장하기 위해 사용자 정의 구현 유형을 정의하는 것이 좋습니다.

사용자 지정 필터 유형에 대한 참조를 확인할 수 없는 경우 필터를 건너뛰어서는 안 됩니다. 대신, 해당 필터에 의해 처리될 요청은 반드시 HTTP 오류 응답을 받아야 합니다.

14.1.26. .spec.rules[].filters[].extensionRef

설명

ExtensionRef는 "필터" 동작에 대한 선택적이고 구현에 맞는 확장입니다. 예를 들어, 그룹 "networking.example.net"의 리소스 "myroutefilter"입니다. ExtensionRef는 핵심 필터와 확장 필터에 사용해서는 안 됩니다.

지원: 구현별

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

유형
object
필수 항목
  • group
  • kind
  • name
Expand
재산유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

이는 일종의 참조입니다. 예: "HTTPRoute" 또는 "Service".

name

string

이름은 참조의 이름입니다.

14.1.27. .spec.rules[].filters[].requestHeaderModifier

설명

RequestHeaderModifier는 요청 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: Core

유형
object
Expand
속성유형설명

add

array

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

제거

배열(문자열)

작업 전에 HTTP 요청에서 지정된 헤더를 제거합니다. Remove 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

config: remove: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

14.1.28. .spec.rules[].filters[].requestHeaderModifier.add

설명

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

14.1.29. .spec.rules[].filters[].requestHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

14.1.30. .spec.rules[].filters[].requestHeaderModifier.set

설명

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

14.1.31. .spec.rules[].filters[].requestHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

14.1.32. .spec.rules[].filters[].requestMirror

설명

RequestMirror는 요청을 미러링하는 필터의 스키마를 정의합니다. 요청은 지정된 대상으로 전송되지만 해당 대상의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드에 대한 미러링을 지원할 수 있는 것은 아닙니다.

지원: 확장

유형
object
필수 항목
  • backendRef
Expand
속성유형설명

backendRef

object

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 백엔드Ref 내에 있는 끝점 수에 관계없이 이 BackendRef 내의 단일 대상 끝점에만 전송되어야 합니다.

참조자를 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 게이트웨이에서 삭제해야 합니다. 컨트롤러는 경로 상태의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않는지 확인해야 합니다.

ReferenceGrant에서 허용하지 않는 기존 오브젝트에 대한 네임스페이스 간 참조가 있는 경우 컨트롤러는 경로의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않도록 해야 합니다.

두 경우 모두 ResolvedRefs Condition의 Message of the ResolvedRefs Condition을 사용하여 문제에 대한 자세한 정보를 제공해야 합니다.

지원: Kubernetes 서비스에 대한 확장

지원: 다른 리소스에 대한 구현별

분수

object

fraction는 BackendRef로 미러링해야 하는 요청의 일부를 나타냅니다.

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

백분율

integer

percent는 BackendRef에 미러링해야 하는 요청의 백분율을 나타냅니다. 최소 값은 0(요청의 0%를 나타내는)이고 최대값은 100입니다(요청의 100%를 나타냄).

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

14.1.33. .spec.rules[].filters[].requestMirror.backendRef

설명

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 백엔드Ref 내에 있는 끝점 수에 관계없이 이 BackendRef 내의 단일 대상 끝점에만 전송되어야 합니다.

참조자를 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 게이트웨이에서 삭제해야 합니다. 컨트롤러는 경로 상태의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않는지 확인해야 합니다.

ReferenceGrant에서 허용하지 않는 기존 오브젝트에 대한 네임스페이스 간 참조가 있는 경우 컨트롤러는 경로의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않도록 해야 합니다.

두 경우 모두 ResolvedRefs Condition의 Message of the ResolvedRefs Condition을 사용하여 문제에 대한 자세한 정보를 제공해야 합니다.

지원: Kubernetes 서비스에 대한 확장

지원: 다른 리소스에 대한 구현별

유형
object
필수 항목
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

kind는 참조의 Kubernetes 리소스 유형입니다. 예: "Service".

지정하지 않는 경우 기본값은 "Service"입니다.

ExternalName 서비스는 클러스터 외부에 있을 수 있는 CNAME DNS 레코드를 참조할 수 있으므로 적합성 측면에서 이유하기가 어렵습니다. 또한 안전하게 전달하지 못할 수도 있습니다(자세한 내용은 CVE-2021-25740 참조). 구현은 ExternalName 서비스를 지원하지 않아야 합니다.

지원: Core (ExternalName 이외의 유형이 있는 서비스)

지원: 구현별 ( ExternalName 유형의 서비스)

name

string

이름은 참조의 이름입니다.

네임스페이스

string

네임스페이스는 백엔드의 네임스페이스입니다. 지정하지 않으면 로컬 네임스페이스가 유추됩니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

지원: Core

port

integer

port는 이 리소스에 사용할 대상 포트 번호를 지정합니다. 참조가 Kubernetes 서비스인 경우 포트가 필요합니다. 이 경우 포트 번호는 대상 포트가 아닌 서비스 포트 번호입니다. 기타 리소스의 경우 대상 포트가 참조 리소스 또는 이 필드에서 파생될 수 있습니다.

14.1.34. .spec.rules[].filters[].requestMirror.fraction

설명

fraction는 BackendRef로 미러링해야 하는 요청의 일부를 나타냅니다.

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

유형
object
필수 항목
  • numerator
Expand
속성유형설명

denominator

integer

 

numerator

integer

 

14.1.35. .spec.rules[].filters[].responseHeaderModifier

설명

ResponseHeaderModifier는 응답 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: 확장

유형
object
Expand
속성유형설명

add

array

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

제거

배열(문자열)

작업 전에 HTTP 요청에서 지정된 헤더를 제거합니다. Remove 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

config: remove: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

14.1.36. .spec.rules[].filters[].responseHeaderModifier.add

설명

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

14.1.37. .spec.rules[].filters[].responseHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

14.1.38. .spec.rules[].filters[].responseHeaderModifier.set

설명

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

14.1.39. .spec.rules[].filters[].responseHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

14.1.40. .spec.rules[].matches

설명

matches는 들어오는 gRPC 요청과 대조되는 규칙과 일치하는 데 사용되는 조건을 정의합니다. 일치 항목이 독립적입니다. 즉, 일치 항목 중 하나가 충족되면 이 규칙이 일치합니다.

예를 들어 다음과 같은 구성이 일치하도록 합니다.

matches: - method: service: foo.bar headers: values: version: 2 - method: service: foo.bar.v2

이 규칙에 대한 요청이 일치하려면 다음 두 조건 중 EITHER를 충족해야 합니다.

  • foo.bar 서비스 및 헤더 버전을 포함합니다: 2
  • foo.bar.v2 서비스

ANDed할 여러 일치 조건을 지정하는 방법은 GRPCRouteMatch에 대한 설명서를 참조하십시오.

일치하는 항목이 없는 경우 구현이 모든 gRPC 요청과 일치해야 합니다.

GRPCRoutes에서 생성된 프록시 또는 로드 밸런서 라우팅 구성은 다음 기준에 따라 우선 순위를 정하고 연결 상태를 유지해야 합니다. GRPCRoutes와 HTTPRoutes 간에 병합해서는 안 됩니다. 다음 중 가장 큰 수를 가진 규칙에 우선순위를 부여해야 합니다.

  • 일치하는 와일드카드 호스트 이름의 문자입니다.
  • 일치하는 호스트 이름의 문자입니다.
  • 일치하는 서비스의 문자입니다.
  • 일치하는 메서드의 문자입니다.
  • 헤더가 일치합니다.

여러 경로에 걸쳐 연결이 여전히 존재하는 경우 일치하는 우선순위는 다음 기준의 순서대로 결정되어야 하며 연결에서 계속해야 합니다.

  • 생성 타임스탬프를 기반으로 하는 가장 오래된 경로입니다.
  • 경로는 "{namespace}/{name}"에 의해 알파벳순으로 먼저 나타납니다.

우선 순위가 지정된 경로 내에 관계가 있는 경우 위의 기준을 충족하는 첫 번째 일치 규칙에 일치하는 우선순위를 부여해야 합니다.

유형
array

14.1.41. .spec.rules[].matches[]

설명

GRPCRouteMatch는 지정된 작업에 요청을 일치시키는 데 사용되는 서술자를 정의합니다. 여러 일치 유형이 함께 ANDed됩니다. 즉, 모든 조건이 충족되는 경우에만 일치가 true로 평가됩니다.

예를 들어 아래 일치 항목은 서비스가 foo 이고 version: v1 헤더가 포함된 경우에만 gRPC 요청과 일치합니다.

matches: - method: type: Exact service: "foo" headers: - name: "version" value "v1"

유형
object
Expand
속성유형설명

headers

array

헤더는 gRPC 요청 헤더 일치자를 지정합니다. 여러 일치 값은 함께 ANDed되며, 즉, 경로를 선택하기 위해 지정된 모든 헤더와 일치해야 합니다.

headers[]

object

GRPCHeaderMatch는 gRPC 요청 헤더와 일치하여 gRPC 경로를 선택하는 방법을 설명합니다.

method

object

method는 gRPC 요청 서비스/메서드 선택기를 지정합니다. 이 필드를 지정하지 않으면 모든 서비스와 방법이 일치합니다.

14.1.42. .spec.rules[].matches[].headers

설명
헤더는 gRPC 요청 헤더 일치자를 지정합니다. 여러 일치 값은 함께 ANDed되며, 즉, 경로를 선택하기 위해 지정된 모든 헤더와 일치해야 합니다.
유형
array

14.1.43. .spec.rules[].matches[].headers[]

설명
GRPCHeaderMatch는 gRPC 요청 헤더와 일치하여 gRPC 경로를 선택하는 방법을 설명합니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 gRPC 헤더의 이름입니다.

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 항목이 동일한 이름을 가진 첫 번째 항목만 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

type

string

type은 헤더 값과 일치하는 방법을 지정합니다.

value

string

value는 일치시킬 gRPC 헤더의 값입니다.

14.1.44. .spec.rules[].matches[].method

설명
method는 gRPC 요청 서비스/메서드 선택기를 지정합니다. 이 필드를 지정하지 않으면 모든 서비스와 방법이 일치합니다.
유형
object
Expand
속성유형설명

method

string

일치시킬 메서드의 값입니다. 비워 두거나 생략한 경우 는 모든 서비스와 일치합니다.

Service 및 Method 중 하나 이상이 비어 있지 않은 문자열이어야 합니다.

서비스

string

일치시킬 서비스의 값입니다. 비어 있거나 생략된 경우 는 서비스와 일치합니다.

Service 및 Method 중 하나 이상이 비어 있지 않은 문자열이어야 합니다.

type

string

type은 서비스 및/또는 방법과 일치하는 방법을 지정합니다. 지원: Core (service 및 method specified 사용)

지원: 구현에 따라 (지정된 방법은 적용되지만 서비스가 지정되지 않은 경우)

지원: 구현별 (RegularExpression)

14.1.45. .status

설명
상태는 GRPCRoute의 현재 상태를 정의합니다.
유형
object
필수 항목
  • 부모
Expand
속성유형설명

부모

array

상위 리소스(일반적으로 게이트웨이)는 경로와 연결된 상위 리소스 목록 및 각 상위와 관련된 경로의 상태입니다. 이 경로가 상위에 연결되면 컨트롤러가 먼저 경로를 볼 때 상위 목록을 관리하는 컨트롤러에서 해당 경로를 볼 때 해당 목록에 항목을 추가해야 하며 경로 또는 게이트웨이가 수정될 때 항목을 적절하게 업데이트해야 합니다.

이 API의 구현으로 해결할 수 없는 상위 참조는 이 목록에 추가되지 않습니다. 이 API의 구현은 담당하는 Gateways/parent 리소스의 경로 상태만 채울 수 있습니다.

이 목록에 최대 32 개의 게이트웨이가 표시됩니다. 빈 목록은 경로가 게이트웨이에 연결되지 않았음을 의미합니다.

parents[]

object

RouteParentStatus는 관련 상위와 관련하여 경로의 상태를 설명합니다.

14.1.46. .status.parents

설명

상위 리소스(일반적으로 게이트웨이)는 경로와 연결된 상위 리소스 목록 및 각 상위와 관련된 경로의 상태입니다. 이 경로가 상위에 연결되면 컨트롤러가 먼저 경로를 볼 때 상위 목록을 관리하는 컨트롤러에서 해당 경로를 볼 때 해당 목록에 항목을 추가해야 하며 경로 또는 게이트웨이가 수정될 때 항목을 적절하게 업데이트해야 합니다.

이 API의 구현으로 해결할 수 없는 상위 참조는 이 목록에 추가되지 않습니다. 이 API의 구현은 담당하는 Gateways/parent 리소스의 경로 상태만 채울 수 있습니다.

이 목록에 최대 32 개의 게이트웨이가 표시됩니다. 빈 목록은 경로가 게이트웨이에 연결되지 않았음을 의미합니다.

유형
array

14.1.47. .status.parents[]

설명
RouteParentStatus는 관련 상위와 관련하여 경로의 상태를 설명합니다.
유형
object
필수 항목
  • controllerName
  • parentRef
Expand
속성유형설명

conditions

array

conditions는 게이트웨이와 관련된 경로 상태를 설명합니다. 경로의 가용성은 게이트웨이의 자체 상태 조건 및 리스너 상태에도 적용됩니다.

경로의 ParentRef가 이러한 종류의 경로를 지원하는 기존 게이트웨이를 지정하고 게이트웨이의 컨트롤러에 충분한 액세스 권한이 있는 경우 게이트웨이의 컨트롤러에서 경로에 "Accepted" 조건을 설정해야 하며 게이트웨이에서 경로가 수락되었는지 또는 거부되었는지 여부를 나타냅니다.

경로 중 하나 이상이 게이트웨이에 의해 구현되는 경우 경로 "Accepted"로 간주되어야 합니다.

다음과 같은 경우를 포함하여 컨트롤러 가시성 부족으로 인해 "Accepted" 조건이 설정되지 않을 수 있습니다.

* 경로는 존재하지 않는 부모를 나타냅니다. * 경로는 컨트롤러가 지원하지 않는 유형입니다. * 컨트롤러가 액세스할 수 없는 네임스페이스에 있습니다.

conditions[]

object

condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.

controllerName

string

ControllerName은 이 상태를 작성한 컨트롤러의 이름을 나타내는 domain/path 문자열입니다. 이는 GatewayClass의 controllerName 필드에 해당합니다.

Example: "example.net/gateway-controller".

이 필드의 형식은 DOMAIN "/" PATH입니다. 여기서 DOMAIN 및 PATH는 유효한 Kubernetes 이름(https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names)입니다.

컨트롤러는 상태를 작성할 때 이 필드를 채워야 합니다. 컨트롤러는 ControllerName으로 채워진 상태에 대한 항목이 더 이상 필요하지 않을 때 정리되도록 해야 합니다.

parentRef

object

ParentRef는 이 RouteParentStatus 구조가 의 상태를 설명하는 사양의 ParentRef에 해당합니다.

14.1.48. .status.parents[].conditions

설명

conditions는 게이트웨이와 관련된 경로 상태를 설명합니다. 경로의 가용성은 게이트웨이의 자체 상태 조건 및 리스너 상태에도 적용됩니다.

경로의 ParentRef가 이러한 종류의 경로를 지원하는 기존 게이트웨이를 지정하고 게이트웨이의 컨트롤러에 충분한 액세스 권한이 있는 경우 게이트웨이의 컨트롤러에서 경로에 "Accepted" 조건을 설정해야 하며 게이트웨이에서 경로가 수락되었는지 또는 거부되었는지 여부를 나타냅니다.

경로 중 하나 이상이 게이트웨이에 의해 구현되는 경우 경로 "Accepted"로 간주되어야 합니다.

다음과 같은 경우를 포함하여 컨트롤러 가시성 부족으로 인해 "Accepted" 조건이 설정되지 않을 수 있습니다.

  • 경로는 존재하지 않는 부모를 나타냅니다.
  • 경로는 컨트롤러가 지원하지 않는 유형입니다.
  • 경로는 컨트롤러가 액세스할 수 없는 네임스페이스에 있습니다.
유형
array

14.1.49. .status.parents[].conditions[]

설명
condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
속성유형설명

lastTransitionTime

string

lastTransitionTime은 마지막으로 한 상태에서 다른 상태로 전환된 시간입니다. 기본 조건이 변경된 경우여야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

message는 변환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건에 따라 설정된 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 현재 인스턴스 상태와 관련된 조건이 최신 상태가 아닙니다.

reason

string

이유에는 조건의 마지막 전환 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 예상되는 값과 의미를 정의할 수 있으며 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있지 않을 수 있습니다.

status

string

조건의 상태, True, False, 알 수 없음.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

14.1.50. .status.parents[].parentRef

설명
ParentRef는 이 RouteParentStatus 구조가 의 상태를 설명하는 사양의 ParentRef에 해당합니다.
유형
object
필수 항목
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 지정되지 않은 경우 "gateway.networking.k8s.io"가 유추됩니다. 코어 API 그룹(예: "Service" kind referent의 경우)을 설정하려면 그룹을 명시적으로 ""(빈 문자열)로 설정해야 합니다.

지원: Core

kind

string

이는 일종의 참조입니다.

"Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

* 게이트웨이 (Gateway 적합성 프로파일) * 서비스 (Mesh 적합성 프로파일, ClusterIP 서비스 만 해당)

다른 리소스에 대한 지원은 Implementation-Specific입니다.

name

string

이름은 참조의 이름입니다.

지원: Core

네임스페이스

string

네임스페이스는 참조의 네임스페이스입니다. 지정되지 않은 경우 경로의 로컬 네임스페이스를 나타냅니다.

네임스페이스 경계를 통과하는 ParentRefs에 대한 특정 규칙이 있습니다. 네임스페이스 간 참조는 참조하는 네임스페이스의 항목에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어 게이트웨이에는 AllowedRoutes 필드가 있으며 ReferenceGrant는 다른 종류의 네임스페이스를 활성화하는 일반적인 방법을 제공합니다.

지원: Core

port

integer

port는 이 경로가 대상으로 하는 네트워크 포트입니다. 상위 리소스 유형에 따라 다르게 해석될 수 있습니다.

상위 리소스가 게이트웨이인 경우 이러한 종류의 경로도 지원하는 지정된 포트에서 수신 대기 중인 모든 리스너를 대상으로 하고 이 경로를 선택합니다. 경로에 지정된 네트워킹 동작을 포트를 변경할 수 있는 리스너와 달리 특정 포트에 적용해야 하는 경우를 제외하고 Port 를 설정하지 않는 것이 좋습니다. Port 및 sectionName을 둘 다 지정하면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 상위 리소스를 지원하도록 선택할 수 있습니다. 다른 유형의 상위 리소스를 지원하는 구현은 Port가 해석되는 방법을 명확하게 문서화해야 합니다.

상태를 위해 상위 리소스에서 부분적으로 수락하면 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: 확장

sectionName

string

sectionName은 대상 리소스에 있는 섹션의 이름입니다. 다음 리소스에서 sectionName은 다음과 같이 해석됩니다.

* 게이트웨이: 리스너 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다. * 서비스: 포트 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 리소스에 경로 연결을 지원하도록 선택할 수 있습니다. 이 경우 sectionName을 해석하는 방법을 명확하게 문서화해야 합니다.

지정되지 않은 경우(빈 문자열) 전체 리소스를 참조합니다. 상태의 목적을 위해 부모 리소스의 하나 이상의 섹션에서 이를 수락하는 경우 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: Core

14.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/gateway.networking.k8s.io/v1/grpcroutes

    • GET: GRPCRoute 유형의 오브젝트 나열
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/grpcroutes

    • DELETE: GRPCRoute 컬렉션 삭제
    • GET: GRPCRoute 유형의 오브젝트 나열
    • POST: GRPCRoute를 생성
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/grpcroutes/{name}

    • DELETE: GRPCRoute 삭제
    • GET: 지정된 GRPCRoute 읽기
    • PATCH: 지정된 GRPCRoute를 부분적으로 업데이트
    • PUT: 지정된 GRPCRoute로 교체
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/grpcroutes/{name}/status

    • GET: 지정된 GRPCRoute의 읽기 상태
    • PATCH: 지정된 GRPCRoute의 부분 업데이트 상태
    • PUT: 지정된 GRPCRoute의 상태 교체

14.2.1. /apis/gateway.networking.k8s.io/v1/grpcroutes

HTTP 방법
GET
설명
GRPCRoute 유형의 오브젝트 나열
Expand
표 14.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRouteList schema

401 - 무단

14.2.2. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/grpcroutes

HTTP 방법
DELETE
설명
GRPCRoute 컬렉션 삭제
Expand
표 14.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
GRPCRoute 유형의 오브젝트 나열
Expand
표 14.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRouteList schema

401 - 무단

HTTP 방법
POST
설명
GRPCRoute를 생성
Expand
표 14.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 14.5. 본문 매개변수
매개변수유형설명

body

GRPCRoute 스키마

 
Expand
표 14.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRoute 스키마

201 - 생성됨

GRPCRoute 스키마

202 - 승인됨

GRPCRoute 스키마

401 - 무단

14.2.3. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/grpcroutes/{name}

Expand
표 14.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

GRPCRoute 이름

HTTP 방법
DELETE
설명
delete a GRPCRoute
Expand
표 14.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 14.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 GRPCRoute 읽기
Expand
표 14.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRoute 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 GRPCRoute를 부분적으로 업데이트
Expand
표 14.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 14.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRoute 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 GRPCRoute를 교체
Expand
표 14.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 14.14. 본문 매개변수
매개변수유형설명

body

GRPCRoute 스키마

 
Expand
표 14.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRoute 스키마

201 - 생성됨

GRPCRoute 스키마

401 - 무단

14.2.4. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/grpcroutes/{name}/status

Expand
표 14.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

GRPCRoute 이름

HTTP 방법
GET
설명
지정된 GRPCRoute의 상태 보기
Expand
표 14.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRoute 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 GRPCRoute의 상태를 부분적으로 업데이트
Expand
표 14.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 14.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRoute 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 GRPCRoute의 상태 교체
Expand
표 14.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 14.21. 본문 매개변수
매개변수유형설명

body

GRPCRoute 스키마

 
Expand
표 14.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GRPCRoute 스키마

201 - 생성됨

GRPCRoute 스키마

401 - 무단

15장. Gateway [gateway.networking.k8s.io/v1]

설명
gateway는 Listeners를 IP 주소 집합에 바인딩하여 서비스 트래픽 처리 인프라의 인스턴스를 나타냅니다.
유형
object
필수 항목
  • spec

15.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec은 원하는 게이트웨이 상태를 정의합니다.

status

object

상태는 게이트웨이의 현재 상태를 정의합니다.

15.1.1. .spec

설명
spec은 원하는 게이트웨이 상태를 정의합니다.
유형
object
필수 항목
  • gatewayClassName
  • 리스너
Expand
속성유형설명

주소

array

이 게이트웨이에 대해 요청된 주소입니다. 이는 선택 사항이며 동작은 구현에 따라 달라질 수 있습니다. 사양에서 값이 설정되고 요청된 주소가 유효하지 않거나 사용할 수 없는 경우 구현은 GatewayStatus.Addresses의 연결된 항목에서 이 주소를 지정해야 합니다.

address 필드는 이 게이트웨이에 바인딩된 트래픽이 사용할 "게이트웨이"의 주소에 대한 요청을 나타냅니다. 이는 외부 로드 밸런서 또는 기타 네트워킹 인프라의 IP 주소 또는 호스트 이름 또는 트래픽이 전송될 다른 주소일 수 있습니다.

주소를 지정하지 않으면 구현에 따라 게이트웨이를 예약하여 적절한 주소 집합을 할당할 수 있습니다.

구현은 게이트웨이에 할당하는 모든 GatewayAddress에 모든 Listeners를 바인딩하고 GatewayStatus.Addresses에서 해당 항목을 추가해야 합니다.

지원: 확장

addresses[]

object

GatewayAddress는 게이트웨이에 바인딩할 수 있는 주소를 설명합니다.

gatewayClassName

string

이 게이트웨이에 사용되는 GatewayClassName입니다. 이는 GatewayClass 리소스의 이름입니다.

인프라

object

infrastructure는 이 게이트웨이 인스턴스에 대한 인프라 수준 속성을 정의합니다.

지원: 확장

리스너

array

이 게이트웨이와 연결된 리스너입니다. 리스너는 이 게이트웨이의 주소에 바인딩된 논리 끝점을 정의합니다. 하나 이상의 리스너를 지정해야 합니다.

별도의 Listeners

Listeners 세트(예: 단일 게이트웨이)의 각 리스너는 고유 해야 하며 트래픽 흐름을 정확히 하나의 리스너에 할당할 수 있어야 합니다. (이 섹션에서는 구현이 여러 게이트웨이에서 단일 데이터 플레인으로 구성을 병합할 수 있고 이러한 규칙이 적용되기 때문에 단일 게이트웨이의 "Listeners" 대신 " Listeners" 집합을 사용합니다.

실제로 이는 세트의 각 리스너가 포트, 프로토콜, 그리고 프로토콜에서 지원하는 경우 호스트 이름의 고유한 조합을 가져야 함을 의미합니다.

포트, 프로토콜 및 TLS 설정의 일부 조합은 핵심 지원으로 간주되며 지원하는 개체에 따라 구현에서 지원되어야 합니다.

HTTPRoute

1. HTTPRoute, 포트: 80, 프로토콜: HTTP 2. HTTPRoute, 포트: 443, 프로토콜: HTTPS, TLS 모드: 종료, TLS 키페어 제공

TLSRoute

1. TLSRoute, 포트: 443, 프로토콜: TLS, TLS 모드: 패스스루

"Distinct" 리스너는 다음과 같은 속성을 갖습니다.

구현 시 인바운드 요청을 단일의 고유한 Listener에 일치시킬 수 있습니다 .

여러 리스너가 필드 값을 공유하는 경우(예: 두 리스너가 동일한 포트 값을 갖는 경우), 구현 시 다른 리스너 필드를 사용하여 해당 리스너 중 하나에만 요청을 일치시킬 수 있습니다.

여러 리스너가 Protocol 필드에 대해 동일한 값을 갖는 경우, 일치하는 Protocol 값을 갖는 각 리스너는 다른 필드에 대해 서로 다른 값을 가져야 합니다.

리스너에 대해 반드시 달라야 하는 필드 세트는 프로토콜마다 다릅니다. 다음 규칙은 현재 Gateway API 사양에 정의된 각 프로토콜과 별도로 Listener에 대해 반드시 고려해야 하는 필드에 대한 규칙을 정의합니다.

모든 프로토콜 값을 공유하는 리스너 세트는 다음 필드 중 하나 이상 이 서로 다르기 위해 서로 다른 값을 가져야 합니다.

* HTTP, HTTPS, TLS : 포트, 호스트 이름 * TCP, UDP : 포트

구현 시 발생하는 일과 관련하여 주의해야 할 매우 중요한 규칙이 있습니다.

* TCP 프로토콜 리스너는 물론 HTTP, HTTPS 또는 TLS 프로토콜 리스너도 지원하고, * TCP 프로토콜과 동일한 포트를 사용하는 HTTP, HTTPS 또는 TLS 프로토콜을 확인합니다.

이 경우 TCP 리스너와 포트를 공유하는 모든 리스너는 서로 다르므로 수락되어서는 안 됩니다.

구현이 TCP 프로토콜 리스너를 지원하지 않는 경우 이전 규칙은 적용되지 않으며, TCP 리스너는 수락되어서는 안 됩니다.

tls 필드는 리스너가 고유한지 여부를 판별하는 데 사용되지 않습니다. TLS 구성 다른 리스너는 모든 경우에 충돌하기 때문입니다.

# 호스트 이름으로만 구별되는 리스너

호스트 이름만으로 리스너가 구별되는 경우, 올바른 리스너와 연관된 경로 세트를 선택하려면 인바운드 요청 호스트 이름이 가장 구체적인 호스트 이름 값부터 덜 구체적인 호스트 이름 값까지 일치해야 합니다.

정확한 일치는 와일드카드 일치보다 먼저 처리되어야 하며, 와일드카드 일치는 폴백(빈 호스트 이름 값) 일치보다 먼저 처리되어야 합니다. 예를 들어, "foo.example.com""*.example.com" 보다 우선하고, "\*.example.com"은 "" 보다 우선합니다.

또한, 와일드카드 항목이 여러 개 있는 경우 덜 구체적인 와일드카드 항목보다 더 구체적인 와일드카드 항목을 먼저 처리해야 합니다. 예를 들어, "*.foo.example.com"은 "\*.example.com" 보다 우선합니다.

여기서 정확한 정의는 와일드카드 문자 오른쪽에 있는 호스트 이름의 점의 수가 많을수록 우선순위가 높다는 것입니다.

와일드카드 문자는 왼쪽에 있는 아무리 많은 문자 와 점과도 일치합니다. 따라서 "*.example.com"은 "foo.bar.example.com" "bar.example.com" 모두와 일치합니다.

불분명한 리스너 처리

리스너 세트에 서로 구별되지 않는 리스너가 포함된 경우 해당 리스너는 충돌 상태 이며, 구현 시 리스너 상태의 "충돌" 조건을 "참"으로 설정해야 합니다.

이 문서의 목적상 "불분명한"과 "갈등된"이라는 단어는 동일한 것으로 간주됩니다.

구현에서는 충돌하는 리스너가 없는 부분 리스너 세트만 허용하는 경우에만 충돌하는 리스너가 있는 게이트웨이를 허용하기로 선택할 수 있습니다.

특히, 구현은 다음 규칙에 따라 부분적인 Listener 세트를 허용할 수 있습니다.

* 구현 시 충돌하는 리스너 중 하나를 승자로 선택해서는 안 됩니다. 모든 indistinct Listeners는 처리를 위해 허용되지 않아야 합니다. * 하나 이상의 고유 Listener가 있어야 하며, 그렇지 않은 경우 게이트웨이에는 청취자가 효과적으로 포함되어 있어야 하며 전체 처리에서 거부되어야 합니다.

게이트웨이 상태에 게이트웨이에 충돌된 청취자가 포함될 때 게이트웨이 상태에 "ListenersNotValid" 조건을 설정해야 합니다. 해당 상태는 수신 대기자가 충돌하고 수락되는 메시지에 명확하게 표시되어야 합니다. 또한 이러한 리스너의 Listener 상태는 충돌하고 수락되지 않는 Listeners를 나타냅니다.

일반 리스너 동작

모든 고유 Listeners의 경우 요청은 최대 하나의 Listener로 일치해야 합니다. 예를 들어, 청취자가 "foo.example.com" 및 "*.example.com"에 대해 정의된 경우 "foo.example.com" SHOULD에 대한 요청은 "foo.example.com" Listener에 연결된 경로만 사용하여 라우팅됩니다('*.example.com" Listener가 아님).

이 개념을 "Listener Isolation"이라고 하며 게이트웨이 API의 확장 기능입니다. Listener 격리를 지원하지 않는 구현은 이를 명확하게 문서화해야 하며 GatewayHTTPListenerIsolation 기능에 대한 지원을 요청해서는 안 됩니다.

확장 게이트웨이HTTP ListenerIsolation 기능에 대한 Listener Isolation SHOULD 클레임을 지원하는 구현에서는 관련 적합성 테스트를 전달합니다.

호환되는 Listeners

게이트웨이의 Listeners는 다음과 같은 경우 호환되는 것으로 간주됩니다.

1. 구분되어 있습니다. 2. 구현은 할당된 모든 주소에서 모든 Listeners를 사용할 수 있는 주소 요구 사항을 준수하여 제공할 수 있습니다.

확장 지원에서 호환되는 조합은 구현마다 다를 것으로 예상됩니다. 한 구현에 호환되는 조합이 다른 구현과 호환되지 않을 수 있습니다.

예를 들어 동일한 주소에서 TCP 및 UDP 리스너를 모두 제공할 수 없거나 동일한 포트에서 HTTPS와 일반 TLS 청취를 혼합할 수 없는 구현은 고유하더라도 이러한 케이스와 호환되는 경우를 고려하지 않습니다.

구현은 모든 게이트웨이의 모든 Listeners가 호환되는 경우 단일 주소 집합에 별도의 게이트웨이를 병합할 수 있습니다.Implementations MAY merge separate Gateways to a single set of addresses if all Listeners across all Gateways are compatible.

향후 릴리스에서는 MinItems=1 요구 사항이 삭제될 수 있습니다.

지원: Core

listeners[]

object

리스너는 게이트웨이가 네트워크 연결을 수락하는 논리 끝점의 개념을 나타냅니다.

15.1.2. .spec.addresses

설명

이 게이트웨이에 대해 요청된 주소입니다. 이는 선택 사항이며 동작은 구현에 따라 달라질 수 있습니다. 사양에서 값이 설정되고 요청된 주소가 유효하지 않거나 사용할 수 없는 경우 구현은 GatewayStatus.Addresses의 연결된 항목에서 이 주소를 지정해야 합니다.

address 필드는 이 게이트웨이에 바인딩된 트래픽이 사용할 "게이트웨이"의 주소에 대한 요청을 나타냅니다. 이는 외부 로드 밸런서 또는 기타 네트워킹 인프라의 IP 주소 또는 호스트 이름 또는 트래픽이 전송될 다른 주소일 수 있습니다.

주소를 지정하지 않으면 구현에 따라 게이트웨이를 예약하여 적절한 주소 집합을 할당할 수 있습니다.

구현은 게이트웨이에 할당하는 모든 GatewayAddress에 모든 Listeners를 바인딩하고 GatewayStatus.Addresses에서 해당 항목을 추가해야 합니다.

지원: 확장

유형
array

15.1.3. .spec.addresses[]

설명
GatewayAddress는 게이트웨이에 바인딩할 수 있는 주소를 설명합니다.
유형
object
필수 항목
  • value
Expand
속성유형설명

type

string

주소 유형입니다.

value

string

주소의 값입니다. 값의 유효성은 컨트롤러의 유형 및 지원에 따라 달라집니다.

예: 1.2.3.4,128::1,my-ip-address.

15.1.4. .spec.infrastructure

설명

infrastructure는 이 게이트웨이 인스턴스에 대한 인프라 수준 속성을 정의합니다.

지원: 확장

유형
object
Expand
속성유형설명

annotations

오브젝트(문자열)

이 게이트웨이에 대한 응답으로 생성된 모든 리소스에 적용해야 하는 주석입니다.

다른 Kubernetes 오브젝트를 생성하는 구현의 경우 리소스의 metadata.annotations 필드여야 합니다. 다른 구현예의 경우, 이는 임의의 관련(특정 구현) "항상" 개념을 나타냅니다.

구현 시 적합한 것으로 간주되는 구현별 주석을 추가하도록 선택할 수 있습니다.

지원: 확장

labels

오브젝트(문자열)

이 게이트웨이에 대한 응답으로 생성된 모든 리소스에 적용해야 하는 라벨입니다.

다른 Kubernetes 오브젝트를 생성하는 구현의 경우 리소스의 metadata.labels 필드여야 합니다. 다른 구현예의 경우 이는 관련(특정 구현) "레이블" 개념을 나타냅니다.

구현 시 적합한 것으로 간주되는 구현별 레이블을 추가하도록 선택할 수 있습니다.

구현에서 이러한 레이블을 Pod에 매핑하거나 라벨이 변경될 때 다시 생성해야 하는 기타 리소스는 문서에서 이 동작에 대해 명확하게 경고해야 합니다.

지원: 확장

parametersRef

object

ParametersRef는 게이트웨이에 해당하는 구성 매개 변수가 포함된 리소스에 대한 참조입니다. 컨트롤러에 추가 구성이 필요하지 않은 경우 선택 사항입니다.

이는 GatewayClass의 매개변수Ref 와 동일한 시맨틱을 따르지만Gateway를 기반으로 합니다.

게이트웨이의 GatewayClass는 자체 매개변수Ref 를 제공할 수 있습니다. 둘 다 지정되면 병합 동작이 구현됩니다. 일반적으로 GatewayClass는 Gateway에서 재정의할 수 있는 기본값을 제공하는 것이 좋습니다.

참조자를 찾을 수 없거나 지원되지 않는 종류 또는 해당 리소스 내의 데이터가 잘못된 경우 "Accepted" 상태 조건 및 "InvalidParameters"로 설정된 "Accepted" 상태 조건과 함께 게이트웨이가 거부됩니다.

지원: 구현별

15.1.5. .spec.infrastructure.parametersRef

설명

ParametersRef는 게이트웨이에 해당하는 구성 매개 변수가 포함된 리소스에 대한 참조입니다. 컨트롤러에 추가 구성이 필요하지 않은 경우 선택 사항입니다.

이는 GatewayClass의 매개변수Ref 와 동일한 시맨틱을 따르지만Gateway를 기반으로 합니다.

게이트웨이의 GatewayClass는 자체 매개변수Ref 를 제공할 수 있습니다. 둘 다 지정되면 병합 동작이 구현됩니다. 일반적으로 GatewayClass는 Gateway에서 재정의할 수 있는 기본값을 제공하는 것이 좋습니다.

참조자를 찾을 수 없거나 지원되지 않는 종류 또는 해당 리소스 내의 데이터가 잘못된 경우 "Accepted" 상태 조건 및 "InvalidParameters"로 설정된 "Accepted" 상태 조건과 함께 게이트웨이가 거부됩니다.

지원: 구현별

유형
object
필수 항목
  • group
  • kind
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다.

kind

string

이는 일종의 참조입니다.

name

string

이름은 참조의 이름입니다.

15.1.6. .spec.listeners

설명

이 게이트웨이와 연결된 리스너입니다. 리스너는 이 게이트웨이의 주소에 바인딩된 논리 끝점을 정의합니다. 하나 이상의 리스너를 지정해야 합니다.

##별 Listeners

Listeners 세트(예: 단일 게이트웨이)의 각 리스너는 고유 해야 하며 트래픽 흐름을 정확히 하나의 리스너에 할당할 수 있어야 합니다. (이 섹션에서는 구현이 여러 게이트웨이에서 단일 데이터 플레인으로 구성을 병합할 수 있고 이러한 규칙이 적용되기 때문에 단일 게이트웨이의 "Listeners" 대신 " Listeners" 집합을 사용합니다.

대략적으로, 이는 세트의 각 리스너가 포트, 프로토콜 및 프로토콜에서 지원하는 경우 고유 한 조합을 가져야 함을 의미합니다.

포트, 프로토콜 및 TLS 설정의 일부 조합은 Core 지원으로 간주되며 지원하는 개체를 기반으로 구현에서 지원해야 합니다.

HTTPRoute

  1. HTTPRoute, Port: 80, Protocol: HTTP
  2. HTTPRoute, Port: 443, Protocol: HTTPS, TLS 모드: Terminate, TLS 키 쌍 제공

TLSRoute

  1. TLSRoute, Port: 443, Protocol: TLS, TLS Mode: Passthrough

"distinct" Listeners에는 다음과 같은 속성이 있습니다.

구현은 인바운드 요청을 하나의 고유 Listener로 일치시킬 수 있습니다.

여러 Listeners가 필드에 대한 값을 공유하는 경우(예: 동일한 포트 값이 있는 두 개의 Listeners) 구현에서 다른 Listener 필드를 사용하는 Listeners 중 하나에만 요청을 일치시킬 수 있습니다.

여러 리스너가 Protocol 필드에 대해 동일한 값을 갖는 경우, Protocol 값이 일치하는 각 Listeners는 다른 필드에 대해 서로 다른 값을 가져야 합니다.

Listener마다 달라야 하는 필드 세트는 프로토콜마다 다릅니다. 다음 규칙은 Listeners가 현재 게이트웨이 API 사양에 정의된 각 프로토콜과 구별되도록 고려해야 하는 필드에 대한 규칙을 정의합니다.

모두 프로토콜 값을 공유하는 리스너 세트는 다음 필드 중 하나 이상이 구별되도록 서로 다른 값을 가져야 합니다.

  • HTTP, HTTPS, TLS: 포트, 호스트 이름
  • TCP, UDP: 포트

호출해야 할 매우 중요한 규칙 중 하나는 구현 시 발생하는 작업을 포함합니다.

  • TCP 프로토콜 Listeners와 HTTP, HTTPS 또는 TLS 프로토콜 Listeners를 지원하며,
  • TCP 프로토콜이 있는 포트와 동일한 포트 를 사용하는 HTTP, HTTPS 또는 TLS 프로토콜을 참조하십시오.

이 경우 TCP 리스너와 포트를 공유하는 모든 Listeners는 고유하지 않으므로 수락해서는 안 됩니다.

구현에서 TCP Protocol Listeners를 지원하지 않으면 이전 규칙이 적용되지 않으며 TCP Listeners SHOULD는 허용되지 않습니다.

모든 경우에 TLS 구성 다르므로 tls 필드는 리스너가 구별되는지 확인하는 데 사용되지 않습니다.

# Hostname에 의해서만 구분되는 리스너

Listeners가 호스트 이름에만 따라 구분되는 경우 인바운드 요청 호스트 이름은 올바른 Listener 및 관련 경로 세트를 선택하기 위해 가장 구체적인 호스트 이름 값에서 일치해야 합니다.

일치하는 와일드카드를 일치하기 전에 정확히 일치해야 하며, 폴백(비어 있는 호스트 이름 값)이 일치하기 전에 와일드카드 일치를 처리해야 합니다. 예를 들어 "foo.example.com""*.example.com" 보다 우선하며 "\*.example.com""" 보다 우선합니다.

또한 와일드카드 항목이 여러 개인 경우 더 적은 특정 와일드카드 항목보다 먼저 와일드카드 항목을 처리해야 합니다. 예를 들어 "*.foo.example.com""\*.example.com" 보다 우선합니다.

여기서 정확한 정의는 와일드카드 문자 오른쪽에 있는 호스트 이름의 점 수가 클수록 우선순위가 높습니다.

와일드카드 문자는 원하는 수의 문자 와 점과 일치하지만, 따라서 "\*.example.com""foo.bar.example.com" "bar.example.com" 모두 일치합니다.

## 처리 인디언더

Listeners 세트에 고유하지 않은 Listeners가 포함된 경우, 해당 Listeners가 충돌하고 구현은 Listener Status의 " Conflicted " 조건을 "True"로 설정해야 합니다.

"indistinct" 및 "conflicted"라는 단어는 이 문서의 목적에 따라 동일하게 간주됩니다.

구현은 Conflicted Listeners가 없는 부분 리스너 세트만 수락하는 경우에만 일부 Conflicted Listeners가 있는 게이트웨이를 수락하도록 선택할 수 있습니다.

특히 구현에서는 다음 규칙에 따라 설정된 부분 리스너를 허용할 수 있습니다.

  • 구현이 실패로 충돌하는 요인 중 하나를 선택할 수 없습니다. 모든 indistinct Listeners는 처리를 위해 허용되지 않아야 합니다.
  • 하나 이상의 고유 Listener가 있어야 하며, 그렇지 않은 경우 게이트웨이에는 청취자가 효과적으로 포함되어 있어야 하며 전체 처리에서 거부되어야 합니다.

게이트웨이 상태에 게이트웨이에 충돌된 청취자가 포함될 때 게이트웨이 상태에 "ListenersNotValid" 조건을 설정해야 합니다. 해당 상태는 수신 대기자가 충돌하고 수락되는 메시지에 명확하게 표시되어야 합니다. 또한 이러한 리스너의 Listener 상태는 충돌하고 수락되지 않는 Listeners를 나타냅니다.

## 일반 리스너 동작

모든 고유 Listeners의 경우 요청은 최대 하나의 Listener로 일치해야 합니다. 예를 들어 Listeners가 "foo.example.com" 및 ". example.com"에 대해 정의된 경우 "foo.example.com" SHOULD에 대한 요청은 "foo.example.com" Listener에 연결된 경로만 사용하여 라우팅됩니다(' .example.com" Listener가 아님 ).

이 개념을 "Listener Isolation"이라고 하며 게이트웨이 API의 확장 기능입니다. Listener 격리를 지원하지 않는 구현은 이를 명확하게 문서화해야 하며 GatewayHTTPListenerIsolation 기능에 대한 지원을 요청해서는 안 됩니다.

확장 게이트웨이HTTP ListenerIsolation 기능에 대한 Listener Isolation SHOULD 클레임을 지원하는 구현에서는 관련 적합성 테스트를 전달합니다.

## 호환되는 Listeners

게이트웨이의 Listeners는 다음과 같은 경우 호환되는 것으로 간주됩니다.

  1. 구분되어 있습니다.
  2. 구현은 할당된 모든 주소에서 모든 Listeners를 사용할 수 있는 주소 요구 사항을 준수하여 제공할 수 있습니다.

확장 지원에서 호환되는 조합은 구현마다 다를 것으로 예상됩니다. 한 구현에 호환되는 조합이 다른 구현과 호환되지 않을 수 있습니다.

예를 들어 동일한 주소에서 TCP 및 UDP 리스너를 모두 제공할 수 없거나 동일한 포트에서 HTTPS와 일반 TLS 청취를 혼합할 수 없는 구현은 고유하더라도 이러한 케이스와 호환되는 경우를 고려하지 않습니다.

구현은 모든 게이트웨이의 모든 Listeners가 호환되는 경우 단일 주소 집합에 별도의 게이트웨이를 병합할 수 있습니다.Implementations MAY merge separate Gateways to a single set of addresses if all Listeners across all Gateways are compatible.

향후 릴리스에서는 MinItems=1 요구 사항이 삭제될 수 있습니다.

지원: Core

유형
array

15.1.7. .spec.listeners[]

설명
리스너는 게이트웨이가 네트워크 연결을 수락하는 논리 끝점의 개념을 나타냅니다.
유형
object
필수 항목
  • name
  • port
  • 프로토콜
Expand
속성유형설명

allowedRoutes

object

AllowedRoutes는 Listener에 연결할 수 있는 경로 유형과 해당 Route 리소스가 있을 수 있는 신뢰할 수 있는 네임스페이스를 정의합니다.

클라이언트 요청이 여러 경로 규칙과 일치할 수 있지만 하나의 규칙만 궁극적으로 요청을 수신할 수 있습니다. 일치하는 우선순위는 다음 기준의 순서대로 결정되어야 합니다.

경로 유형에서 정의한 가장 구체적인 일치입니다. * 생성 타임스탬프를 기반으로 하는 가장 오래된 경로입니다. 예를 들어 "2020-09-08 01:02:03" 생성 타임스탬프가 있는 경로의 생성 타임스탬프가 "2020-09-08 01:02:04"인 경로보다 우선합니다. * 다른 모든 항목이 동일한 경우 경로는 알파벳순(네임스페이스/이름)으로 먼저 표시됩니다. 예를 들어 foo/bar는 foo/baz보다 우선합니다.

이 Listener에 연결된 경로 내의 모든 유효한 규칙을 구현해야 합니다. 잘못된 경로 규칙을 무시할 수 있습니다(때로 전체 경로를 의미합니다). 경로 규칙이 유효하지 않은 상태로 전환되는 경우 일관성을 보장하기 위해 해당 경로 규칙에 대한 지원을 삭제해야 합니다. 예를 들어 경로 규칙에 의해 지정된 필터가 유효하지 않은 경우에도 해당 경로 내의 나머지 규칙을 계속 지원해야 합니다.

지원: Core

hostname

string

hostname은 이 개념을 정의하는 프로토콜 유형에 대해 일치시킬 가상 호스트 이름을 지정합니다. 지정되지 않은 경우 모든 호스트 이름이 일치합니다. 이 필드는 호스트 이름 기반 일치가 필요하지 않은 프로토콜에 대해 무시됩니다.

구현은 다음 프로토콜 각각에 적절하게 일치하는 Hostname을 적용해야 합니다.

* TLS: 리스너 호스트 이름은 SNI와 일치해야 합니다. * HTTP: 리스너 호스트 이름은 요청의 Host 헤더와 일치해야 합니다. * HTTPS: 리스너 호스트 이름은 SNI 및 Host 헤더와 일치해야 합니다. SNI 및 Host 헤더가 같을 필요는 없습니다. 이에 대한 의미 체계는 아래에 자세히 설명되어 있습니다.

보안을 보장하기 위해 RFC-6066 섹션 11.1은 SNI 호스트 이름 일치에 의존하는 서버 구현도 애플리케이션 프로토콜 내의 호스트 이름도 확인해야 함을 강조합니다.

RFC-7540 섹션 9.1.2는 서버가 HTTP 421 Misdirected Request 상태 코드로 응답하여 연결 재사용을 거부할 수 있는 메커니즘을 제공합니다. 이는 원본 서버가 잘못 리디렉션된 것처럼 보이므로 오리진 서버가 요청을 거부했음을 나타냅니다.

잘못 리디렉션된 요청을 감지하려면 게이트웨이가 동일한 포트 및 프로토콜의 모든 Gateway Listeners에 구성된 모든 SNI 호스트 이름을 가진 요청 권한과 일치해야 합니다.

* 다른 Listener에 정확히 일치하는 와일드카드 항목이 있는 경우 게이트웨이는 421을 반환합니다. * ClientHello에서 선택한 현재 Listener가 Host: * 다른 Listener가 호스트와 일치하는 경우 게이트웨이 SHOULD는 421을 반환합니다. * 다른 리스너가 호스트와 일치하지 않는 경우 게이트웨이는 404를 반환해야 합니다.

HTTPRoute 및 TLSRoute 리소스의 경우 spec.hostnames 어레이와 상호 작용합니다. 리스너와 경로 모두 호스트 이름을 지정하는 경우 경로 허용의 값 사이에 교집합이 있어야 합니다. 자세한 내용은 경로별 호스트 이름 설명서를 참조하십시오.

와일드카드 레이블(*.) 접두사가 붙은 호스트 이름은 접미사 일치로 해석됩니다. 즉, *. example.com 에 대한 일치는 test.example.comfoo.test.example.com 과 일치하지만 example.com은 일치하지 않습니다.

지원: Core

name

string

name은 Listener의 이름입니다. 이 이름은 게이트웨이 내에서 고유해야 합니다.

지원: Core

port

integer

port는 네트워크 포트입니다. Listener 호환성 규칙에 따라 여러 리스너가 동일한 포트를 사용할 수 있습니다.

지원: Core

프로토콜

string

protocol은 이 리스너가 수신할 것으로 예상되는 네트워크 프로토콜을 지정합니다.

지원: Core

tls

object

TLS는 Listener의 TLS 구성입니다. Protocol 필드가 "HTTPS" 또는 "TLS"인 경우 이 필드가 필요합니다. Protocol 필드가 "HTTP", "TCP" 또는 "UDP"인 경우 이 필드를 설정하는 것은 유효하지 않습니다.

GatewayTLSConfig에 정의된 SNI와 인증서 연결은 이 리스너의 Hostname 필드를 기반으로 정의됩니다.

GatewayClass는 모든 TLS 핸드셰이크에 사용 가능한 모든 인증서 중 가장 긴 일치 SNI를 사용해야 합니다.

지원: Core

15.1.8. .spec.listeners[].allowedRoutes

설명

AllowedRoutes는 Listener에 연결할 수 있는 경로 유형과 해당 Route 리소스가 있을 수 있는 신뢰할 수 있는 네임스페이스를 정의합니다.

클라이언트 요청이 여러 경로 규칙과 일치할 수 있지만 하나의 규칙만 궁극적으로 요청을 수신할 수 있습니다. 일치하는 우선순위는 다음 기준의 순서대로 결정되어야 합니다.

  • 경로 유형에서 정의한 가장 구체적인 일치입니다.
  • 생성 타임스탬프를 기반으로 하는 가장 오래된 경로입니다. 예를 들어 "2020-09-08 01:02:03" 생성 타임스탬프가 있는 경로의 생성 타임스탬프가 "2020-09-08 01:02:04"인 경로보다 우선합니다.
  • 다른 모든 항목이 동일한 경우 경로 앞에 알파벳순(네임스페이스/이름)이 지정되어야 합니다. 예를 들어 foo/bar는 foo/baz보다 우선합니다.

이 Listener에 연결된 경로 내의 모든 유효한 규칙을 구현해야 합니다. 잘못된 경로 규칙을 무시할 수 있습니다(때로 전체 경로를 의미합니다). 경로 규칙이 유효하지 않은 상태로 전환되는 경우 일관성을 보장하기 위해 해당 경로 규칙에 대한 지원을 삭제해야 합니다. 예를 들어 경로 규칙에 의해 지정된 필터가 유효하지 않은 경우에도 해당 경로 내의 나머지 규칙을 계속 지원해야 합니다.

지원: Core

유형
object
Expand
속성유형설명

kinds

array

kinds은 이 게이트웨이 리스너에 바인딩할 수 있는 경로의 그룹 및 종류를 지정합니다. 지정되지 않았거나 비어 있으면 선택한 경로의 종류가 Listener 프로토콜을 사용하여 결정됩니다.

RouteGroupKind는 Listener의 프로토콜 필드에 지정된 애플리케이션 프로토콜과 호환되는 경로의 종류와 일치해야 합니다. 구현에서 이 리소스 유형을 지원하거나 인식하지 못하는 경우 "ResolvedRefs" 조건을 "InvalidRouteKinds" 이유와 함께 False로 설정해야 합니다.

지원: Core

kinds[]

object

RouteGroupKind는 경로 리소스의 그룹 및 종류를 나타냅니다.

네임스페이스

object

네임스페이스는 경로가 이 리스너에 연결될 수 있는 네임스페이스를 나타냅니다. 이는 기본적으로 이 게이트웨이의 네임스페이스로 제한됩니다.

지원: Core

15.1.9. .spec.listeners[].allowedRoutes.kinds

설명

kinds은 이 게이트웨이 리스너에 바인딩할 수 있는 경로의 그룹 및 종류를 지정합니다. 지정되지 않았거나 비어 있으면 선택한 경로의 종류가 Listener 프로토콜을 사용하여 결정됩니다.

RouteGroupKind는 Listener의 프로토콜 필드에 지정된 애플리케이션 프로토콜과 호환되는 경로의 종류와 일치해야 합니다. 구현에서 이 리소스 유형을 지원하거나 인식하지 못하는 경우 "ResolvedRefs" 조건을 "InvalidRouteKinds" 이유와 함께 False로 설정해야 합니다.

지원: Core

유형
array

15.1.10. .spec.listeners[].allowedRoutes.kinds[]

설명
RouteGroupKind는 경로 리소스의 그룹 및 종류를 나타냅니다.
유형
object
필수 항목
  • kind
Expand
속성유형설명

group

string

group은 경로의 그룹입니다.

kind

string

kind는 경로의 종류입니다.

15.1.11. .spec.listeners[].allowedRoutes.namespaces

설명

네임스페이스는 경로가 이 리스너에 연결될 수 있는 네임스페이스를 나타냅니다. 이는 기본적으로 이 게이트웨이의 네임스페이스로 제한됩니다.

지원: Core

유형
object
Expand
속성유형설명

from

string

from은 이 게이트웨이에 대해 경로가 선택됨을 나타냅니다. 가능한 값은 다음과 같습니다.

* all: 모든 네임스페이스의 경로는 이 게이트웨이에서 사용할 수 있습니다. * selector: 선택기에서 선택한 네임스페이스의 경로는 이 게이트웨이에서 사용할 수 있습니다. *동일한: 이 게이트웨이에서 동일한 네임스페이스의 경로만 사용할 수 있습니다.

지원: Core

선택기

object

선택기는 From이 "Selector"로 설정된 경우 지정해야 합니다. 이 경우 이 Selector와 일치하는 네임스페이스의 경로만 이 게이트웨이에서 선택됩니다. 이 필드는 "From"의 다른 값에 대해 무시됩니다.

지원: Core

15.1.12. .spec.listeners[].allowedRoutes.namespaces.selector

설명

선택기는 From이 "Selector"로 설정된 경우 지정해야 합니다. 이 경우 이 Selector와 일치하는 네임스페이스의 경로만 이 게이트웨이에서 선택됩니다. 이 필드는 "From"의 다른 값에 대해 무시됩니다.

지원: 코어

유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 "key"이고, 연산자는 "In"이며, 값 배열에는 "value"만 포함됩니다. 요구 사항은 AND로 처리됩니다.

15.1.13. .spec.listeners[].allowedRoutes.namespaces.selector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

15.1.14. .spec.listeners[].allowedRoutes.namespaces.selector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

15.1.15. .spec.listeners[].tls

설명

TLS는 리스너에 대한 TLS 구성입니다. 프로토콜 필드가 "HTTPS" 또는 "TLS"인 경우 이 필드는 필수입니다. 프로토콜 필드가 "HTTP", "TCP" 또는 "UDP"인 경우 이 필드를 설정할 수 없습니다.

GatewayTLSConfig에 정의된 인증서에 대한 SNI 연결은 이 리스너의 호스트 이름 필드를 기반으로 정의됩니다.

GatewayClass는 모든 TLS 핸드셰이크에 대해 사용 가능한 모든 인증서 중에서 가장 긴 일치 SNI를 사용해야 합니다.

지원: 코어

유형
object
Expand
재산유형설명

certificateRefs

array

CertificateRefs에는 TLS 인증서와 개인 키가 포함된 Kubernetes 개체에 대한 일련의 참조가 포함되어 있습니다. 이러한 인증서는 연관된 리스너의 호스트 이름과 일치하는 요청에 대한 TLS 핸드셰이크를 설정하는 데 사용됩니다.

Kubernetes Secret에 대한 단일 CertificateRef에는 "Core" 지원이 있습니다. 구현에서는 리스너에 여러 인증서를 첨부하도록 선택할 수 있지만, 이러한 동작은 구현에 따라 다릅니다.

대상 네임스페이스에 인증서를 첨부할 수 있는 ReferenceGrant가 없는 한, 다른 네임스페이스의 리소스에 대한 참조는 유효하지 않습니다. ReferenceGrant가 이 참조를 허용하지 않으면 "ResolvedRefs" 조건은 "RefNotPermitted" 이유로 이 리스너에 대해 False로 설정되어야 합니다.

모드가 "종료"(기본값)로 설정된 경우 이 필드에는 최소한 하나의 요소가 있어야 하며, 그렇지 않은 경우에는 선택 사항입니다.

CertificateRefs는 표준 Kubernetes 리소스(예: Secret)나 구현에 맞는 사용자 정의 리소스를 참조할 수 있습니다.

지원: Core - kubernetes.io/tls 유형의 Kubernetes Secret에 대한 단일 참조

지원: 구현별(두 개 이상의 참조 또는 기타 리소스 유형)

certificateRefs[]

object

SecretObjectReference는 네임스페이스를 포함한 API 객체를 식별하며, 기본값은 Secret입니다.

API 객체는 클러스터에서 유효해야 하며, 이 참조가 유효하려면 그룹과 종류가 클러스터에 등록되어야 합니다.

잘못된 Group과 Kind가 있는 객체에 대한 참조는 유효하지 않으며, 포함 객체에 적절한 조건이 설정된 상태에서 구현에서 거부되어야 합니다.

mode

string

모드는 클라이언트가 시작한 TLS 세션에 대한 TLS 동작을 정의합니다. 가능한 모드는 두 가지가 있습니다.

- 종료: 다운스트림 클라이언트와 게이트웨이 간의 TLS 세션이 게이트웨이에서 종료됩니다. 이 모드에서는 certificateRefs 필드를 채우는 등의 방법으로 인증서를 지정해야 합니다. - 패스스루: TLS 세션은 게이트웨이에 의해 종료되지 않습니다. 이는 게이트웨이가 TLS 프로토콜의 ClientHello 메시지를 제외한 TLS 스트림을 해독할 수 없음을 의미합니다. 이 모드에서는 certificateRefs 필드가 무시됩니다.

지원: 코어

options

객체(문자열)

옵션은 각 구현에 대한 확장된 TLS 구성을 활성화하는 키/값 쌍의 목록입니다. 예를 들어, 최소 TLS 버전이나 지원되는 암호화 제품군을 구성합니다.

공통 키 세트는 나중에 API에서 정의될 수 있습니다. 모호성을 피하기 위해 구현별 정의는 example.com/my-custom-option 과 같이 도메인 접두사가 붙은 이름을 사용해야 합니다. 접두사가 없는 이름은 Gateway API에서 정의한 키 이름에만 사용됩니다.

지원: 구현별

15.1.16. .spec.listeners[].tls.certificateRefs

설명

CertificateRefs에는 TLS 인증서와 개인 키가 포함된 Kubernetes 개체에 대한 일련의 참조가 포함되어 있습니다. 이러한 인증서는 연관된 리스너의 호스트 이름과 일치하는 요청에 대한 TLS 핸드셰이크를 설정하는 데 사용됩니다.

Kubernetes Secret에 대한 단일 CertificateRef에는 "Core" 지원이 있습니다. 구현에서는 리스너에 여러 인증서를 첨부하도록 선택할 수 있지만, 이러한 동작은 구현에 따라 다릅니다.

대상 네임스페이스에 인증서를 첨부할 수 있는 ReferenceGrant가 없는 한, 다른 네임스페이스의 리소스에 대한 참조는 유효하지 않습니다. ReferenceGrant가 이 참조를 허용하지 않으면 "ResolvedRefs" 조건은 "RefNotPermitted" 이유로 이 리스너에 대해 False로 설정되어야 합니다.

모드가 "종료"(기본값)로 설정된 경우 이 필드에는 최소한 하나의 요소가 있어야 하며, 그렇지 않은 경우에는 선택 사항입니다.

CertificateRefs는 표준 Kubernetes 리소스(예: Secret)나 구현에 맞는 사용자 정의 리소스를 참조할 수 있습니다.

지원: Core - kubernetes.io/tls 유형의 Kubernetes Secret에 대한 단일 참조

지원: 구현별(두 개 이상의 참조 또는 기타 리소스 유형)

유형
array

15.1.17. .spec.listeners[].tls.certificateRefs[]

설명

SecretObjectReference는 네임스페이스를 포함한 API 객체를 식별하며, 기본값은 Secret입니다.

API 객체는 클러스터에서 유효해야 하며, 이 참조가 유효하려면 그룹과 종류가 클러스터에 등록되어야 합니다.

잘못된 Group과 Kind가 있는 객체에 대한 참조는 유효하지 않으며, 포함 객체에 적절한 조건이 설정된 상태에서 구현에서 거부되어야 합니다.

유형
object
필수 항목
  • name
Expand
재산유형설명

group

string

그룹은 참조 대상의 그룹입니다. 예를 들어, "gateway.networking.k8s.io". 지정되지 않았거나 빈 문자열인 경우 핵심 API 그룹이 유추됩니다.

kind

string

친절은 지시대상의 친절함입니다. 예를 들어 "비밀".

name

string

이름은 지시 대상의 이름입니다.

네임스페이스

string

네임스페이스는 참조된 객체의 네임스페이스입니다. 지정하지 않으면 로컬 네임스페이스가 유추됩니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 대상 네임스페이스에 ReferenceGrant 개체가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하세요.

지원: 코어

15.1.18. .status

설명
상태는 Gateway의 현재 상태를 정의합니다.
유형
object
Expand
재산유형설명

구애

array

주소는 게이트웨이에 바인딩된 네트워크 주소를 나열합니다.

다음과 같은 조건에 따라 이 목록은 사양에 제공된 주소와 다를 수 있습니다.

* 주소가 지정되지 않음, 모든 주소는 동적으로 할당됨 * 지정된 주소와 동적 주소의 조합이 할당됨 * 지정된 주소가 사용할 수 없음(예: 이미 사용 중)

addresses[]

object

GatewayStatusAddress는 Gateway에 바인딩된 네트워크 주소를 설명합니다.

conditions

array

조건은 게이트웨이의 현재 조건을 설명합니다.

구현에서는 GatewayConditionTypeGatewayConditionReason 상수를 사용하여 Gateway 조건을 표현하는 것이 좋습니다. 이렇게 하면 연산자와 도구가 Gateway 상태를 설명하기 위해 공통 어휘로 수렴할 수 있습니다.

알려진 조건 유형은 다음과 같습니다.

* "승인됨" * "프로그래밍됨" * "준비됨"

conditions[]

object

조건에는 이 API 리소스의 현재 상태의 한 측면에 대한 세부 정보가 포함되어 있습니다.

청취자

array

리스너는 사양에 정의된 각 고유 리스너 포트에 대한 상태를 제공합니다.

listeners[]

object

ListenerStatus는 Listener와 연관된 상태입니다.

15.1.19. .status.addresses

설명

주소는 게이트웨이에 바인딩된 네트워크 주소를 나열합니다.

다음과 같은 조건에 따라 이 목록은 사양에 제공된 주소와 다를 수 있습니다.

  • 주소가 지정되지 않으며 모든 주소는 동적으로 할당됩니다.
  • 지정된 주소와 동적 주소의 조합이 할당됩니다.
  • 지정된 주소가 사용할 수 없습니다(예: 이미 사용 중)
유형
array

15.1.20. .status.addresses[]

설명
GatewayStatusAddress는 게이트웨이에 바인딩된 네트워크 주소를 나타냅니다.
유형
object
필수 항목
  • value
Expand
속성유형설명

type

string

주소 유형입니다.

value

string

주소의 값입니다. 값의 유효성은 컨트롤러의 유형 및 지원에 따라 달라집니다.

예: 1.2.3.4,128::1,my-ip-address.

15.1.21. .status.conditions

설명

conditions는 게이트웨이의 현재 조건을 설명합니다.

구현은 GatewayConditionTypeGatewayConditionReason 상수를 사용하여 게이트웨이 조건을 표시하는 것을 선호하여 운영자와 툴이 게이트웨이 상태를 설명하기 위해 공통 용어에 통합할 수 있도록 해야 합니다.

알려진 조건 유형은 다음과 같습니다.

  • "허용됨"
  • "프로그래밍"
  • "ready"
유형
array

15.1.22. .status.conditions[]

설명
condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
속성유형설명

lastTransitionTime

string

lastTransitionTime은 마지막으로 한 상태에서 다른 상태로 전환된 시간입니다. 기본 조건이 변경된 경우여야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

message는 변환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건에 따라 설정된 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 현재 인스턴스 상태와 관련된 조건이 최신 상태가 아닙니다.

reason

string

이유에는 조건의 마지막 전환 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 예상되는 값과 의미를 정의할 수 있으며 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있지 않을 수 있습니다.

status

string

조건의 상태, True, False, 알 수 없음.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

15.1.23. .status.listeners

설명
리스너는 Spec에 정의된 각 고유 리스너 포트에 대한 상태를 제공합니다.
유형
array

15.1.24. .status.listeners[]

설명
ListenerStatus는 Listener와 연결된 상태입니다.
유형
object
필수 항목
  • attachedRoutes
  • conditions
  • name
  • 지원되는Kinds
Expand
속성유형설명

attachedRoutes

integer

AttachedRoutes는 이 Listener에 성공적으로 연결된 총 경로 수를 나타냅니다.

Listener로의 경로를 성공적으로 첨부하는 것은 해당 Listener 및 경로의 ParentRefs 필드의 AllowedRoutes 필드의 조합만을 기반으로 합니다. Listener의 AllowedRoutes 필드에서 선택한 Route가 Listener에 성공적으로 연결되고 경로에 전체 게이트웨이 리소스 또는 특정 Listener를 상위 리소스로 선택하는 유효한 ParentRef가 있습니다(연결 의미에 대한 자세한 내용은 다양한 경로 종류의 ParentRefs 필드에 대한 문서에서 찾을 수 있음). 리스너 또는 경로 상태는 성공적인 첨부 파일에 영향을 미치지 않습니다. 즉, AttachedRoutes 필드 수는 Accepted: false 조건이 있는 Listeners에 대해 설정되어야 하며, 사용자가 수락할 수 있는 성공적으로 연결된 경로를 계산해야 합니다: false 조건.

이 필드에는 경로 첨부 문제 해결 및 Listener에 대한 변경 사항의 마지막 반경/영향을 측정하는 작업이 포함됩니다.

conditions

array

conditions는 이 리스너의 현재 조건을 설명합니다.

conditions[]

object

condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.

name

string

name은 이 상태가 해당하는 Listener의 이름입니다.

지원되는Kinds

array

SupportedKinds는 이 리스너에서 지원하는 종류의 종류를 나타내는 목록입니다. 이 값은 구현에서 해당 Listener 구성에 대해 지원하는 종류를 표현해야 합니다.

지원되지 않는 Spec에 종류가 지정되면 이 목록에 표시되지 않아야 하며 구현은 "ResolvedRefs" 조건을 "False"로 설정해야 합니다. 유효한 경로 종류와 유효하지 않은 경로 종류를 모두 지정하면 구현에서 지정된 유효한 경로 종류를 참조해야 합니다.

supportedKinds[]

object

RouteGroupKind는 경로 리소스의 그룹 및 종류를 나타냅니다.

15.1.25. .status.listeners[].conditions

설명
conditions는 이 리스너의 현재 조건을 설명합니다.
유형
array

15.1.26. .status.listeners[].conditions[]

설명
condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
속성유형설명

lastTransitionTime

string

lastTransitionTime은 마지막으로 한 상태에서 다른 상태로 전환된 시간입니다. 기본 조건이 변경된 경우여야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

message는 변환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건에 따라 설정된 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 현재 인스턴스 상태와 관련된 조건이 최신 상태가 아닙니다.

reason

string

이유에는 조건의 마지막 전환 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 예상되는 값과 의미를 정의할 수 있으며 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있지 않을 수 있습니다.

status

string

조건의 상태, True, False, 알 수 없음.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

15.1.27. .status.listeners[].supportedKinds

설명

SupportedKinds는 이 리스너에서 지원하는 종류의 종류를 나타내는 목록입니다. 이 값은 구현에서 해당 Listener 구성에 대해 지원하는 종류를 표현해야 합니다.

지원되지 않는 Spec에 종류가 지정되면 이 목록에 표시되지 않아야 하며 구현은 "ResolvedRefs" 조건을 "False"로 설정해야 합니다. 유효한 경로 종류와 유효하지 않은 경로 종류를 모두 지정하면 구현에서 지정된 유효한 경로 종류를 참조해야 합니다.

유형
array

15.1.28. .status.listeners[].supportedKinds[]

설명
RouteGroupKind는 경로 리소스의 그룹 및 종류를 나타냅니다.
유형
object
필수 항목
  • kind
Expand
속성유형설명

group

string

group은 경로의 그룹입니다.

kind

string

kind는 경로의 종류입니다.

15.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/gateway.networking.k8s.io/v1/gateways

    • GET: 종류의 게이트웨이 오브젝트 나열
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/gateways

    • DELETE: Gateway의 컬렉션 삭제
    • GET: 종류의 게이트웨이 오브젝트 나열
    • POST: 게이트웨이 생성
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/gateways/{name}

    • DELETE: Gateway 삭제
    • GET: 지정된 게이트웨이 읽기
    • PATCH: 지정된 게이트웨이를 부분적으로 업데이트
    • PUT: 지정된 게이트웨이를 교체
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/gateways/{name}/status

    • GET: 지정된 게이트웨이의 읽기 상태
    • PATCH: 지정된 게이트웨이의 부분 업데이트 상태
    • PUT: 지정된 게이트웨이의 상태 교체

15.2.1. /apis/gateway.networking.k8s.io/v1/gateways

HTTP 방법
GET
설명
게이트웨이 유형의 오브젝트 나열
Expand
표 15.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GatewayList 스키마

401 - 무단

15.2.2. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/gateways

HTTP 방법
DELETE
설명
게이트웨이 컬렉션 삭제
Expand
표 15.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
게이트웨이 유형의 오브젝트 나열
Expand
표 15.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

GatewayList 스키마

401 - 무단

HTTP 방법
POST
설명
게이트웨이 만들기
Expand
표 15.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 15.5. 본문 매개변수
매개변수유형설명

body

게이트웨이 스키마

 
Expand
표 15.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

게이트웨이 스키마

201 - 생성됨

게이트웨이 스키마

202 - 승인됨

게이트웨이 스키마

401 - 무단

15.2.3. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/gateways/{name}

Expand
표 15.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

게이트웨이 이름

HTTP 방법
DELETE
설명
게이트웨이 삭제
Expand
표 15.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 15.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 게이트웨이 읽기
Expand
표 15.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

게이트웨이 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 게이트웨이를 부분적으로 업데이트
Expand
표 15.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 15.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

게이트웨이 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 게이트웨이 교체
Expand
표 15.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 15.14. 본문 매개변수
매개변수유형설명

body

게이트웨이 스키마

 
Expand
표 15.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

게이트웨이 스키마

201 - 생성됨

게이트웨이 스키마

401 - 무단

15.2.4. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/gateways/{name}/status

Expand
표 15.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

게이트웨이 이름

HTTP 방법
GET
설명
지정된 게이트웨이의 읽기 상태
Expand
표 15.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

게이트웨이 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 게이트웨이의 부분적으로 업데이트 상태
Expand
표 15.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 15.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

게이트웨이 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 게이트웨이의 상태 교체
Expand
표 15.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 15.21. 본문 매개변수
매개변수유형설명

body

게이트웨이 스키마

 
Expand
표 15.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

게이트웨이 스키마

201 - 생성됨

게이트웨이 스키마

401 - 무단

16장. GatewayClass [gateway.networking.k8s.io/v1]

설명

GatewayClass는 사용자가 게이트웨이 리소스를 만드는 데 사용할 수 있는 게이트웨이 클래스를 설명합니다.

이 리소스를 게이트웨이의 템플릿으로 사용하는 것이 좋습니다. 즉, 게이트웨이는 생성 시 GatewayClass의 상태를 기반으로 하며 GatewayClass 또는 관련 매개변수에 대한 변경 사항은 기존 게이트웨이로 전파되지 않습니다. 이 권장 사항은 GatewayClass 또는 관련 매개변수로 변경의 마지막 반경을 제한하기 위한 것입니다. 구현에서 GatewayClass 변경 사항을 기존 게이트웨이에 전파하는 경우 구현에 따라 명확하게 문서화해야 합니다.

하나 이상의 게이트웨이에서 GatewayClass를 사용할 때마다 SHOULD 구현에서는 연결된 GatewayClass에서 gateway-exists-finalizer.gateway.networking.k8s.io 종료자를 추가합니다. 이렇게 하면 사용 중인 동안 게이트웨이와 연결된 GatewayClass가 삭제되지 않습니다.

GatewayClass는 클러스터 수준 리소스입니다.

유형
object
필수 항목
  • spec

16.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec은 GatewayClass의 원하는 상태를 정의합니다.

status

object

상태는 GatewayClass의 현재 상태를 정의합니다.

구현은 컨트롤러 이름을 지정하는 모든 GatewayClass 리소스에 상태를 채워야 합니다.

16.1.1. .spec

설명
spec은 GatewayClass의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • controllerName
Expand
속성유형설명

controllerName

string

ControllerName은 이 클래스의 게이트웨이를 관리하는 컨트롤러의 이름입니다. 이 필드의 값은 도메인 접두사 경로여야 합니다.

Example: "example.net/gateway-controller".

이 필드는 변경할 수 없으며 비워 둘 수 없습니다.

지원: Core

description

string

설명은 GatewayClass에 대한 자세한 내용을 설명하는 데 도움이 됩니다.

parametersRef

object

ParametersRef는 GatewayClass에 해당하는 구성 매개변수를 포함하는 리소스에 대한 참조입니다. 컨트롤러에 추가 구성이 필요하지 않은 경우 선택 사항입니다.

ParametersRef는 표준 Kubernetes 리소스(예: ConfigMap 또는 구현별 사용자 정의 리소스)를 참조할 수 있습니다. 리소스는 클러스터 범위 또는 네임스페이스 범위일 수 있습니다.

참조자를 찾을 수 없거나 지원되지 않는 종류를 참조하거나 해당 리소스 내의 데이터가 잘못된 형식인 경우 GatewayClass SHOULD는 "False"로 설정된 "Accepted" 상태 조건 및 "InvalidParameters" 이유와 함께 거부됩니다.

이 GatewayClass의 게이트웨이는 자체 매개변수Ref 를 제공할 수 있습니다. 둘 다 지정되면 병합 동작이 구현됩니다. 일반적으로 GatewayClass는 Gateway에서 재정의할 수 있는 기본값을 제공하는 것이 좋습니다.

지원: 구현별

16.1.2. .spec.parametersRef

설명

ParametersRef는 GatewayClass에 해당하는 구성 매개변수를 포함하는 리소스에 대한 참조입니다. 컨트롤러에 추가 구성이 필요하지 않은 경우 선택 사항입니다.

ParametersRef는 표준 Kubernetes 리소스(예: ConfigMap 또는 구현별 사용자 정의 리소스)를 참조할 수 있습니다. 리소스는 클러스터 범위 또는 네임스페이스 범위일 수 있습니다.

참조자를 찾을 수 없거나 지원되지 않는 종류를 참조하거나 해당 리소스 내의 데이터가 잘못된 형식인 경우 GatewayClass SHOULD는 "False"로 설정된 "Accepted" 상태 조건 및 "InvalidParameters" 이유와 함께 거부됩니다.

이 GatewayClass의 게이트웨이는 자체 매개변수Ref 를 제공할 수 있습니다. 둘 다 지정되면 병합 동작이 구현됩니다. 일반적으로 GatewayClass는 Gateway에서 재정의할 수 있는 기본값을 제공하는 것이 좋습니다.

지원: 구현별

유형
object
필수 항목
  • group
  • kind
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다.

kind

string

이는 일종의 참조입니다.

name

string

이름은 참조의 이름입니다.

네임스페이스

string

네임스페이스는 참조의 네임스페이스입니다. 이 필드는 네임스페이스 범위 리소스를 참조할 때 필요하며 클러스터 범위 리소스를 참조할 때 설정되지 않아야 합니다.

16.1.3. .status

설명

상태는 GatewayClass의 현재 상태를 정의합니다.

구현은 컨트롤러 이름을 지정하는 모든 GatewayClass 리소스에 상태를 채워야 합니다.

유형
object
Expand
속성유형설명

conditions

array

conditions는 이 GatewayClass에 대한 컨트롤러의 현재 상태입니다.

컨트롤러는 각 조건의 유형에 대해 GatewayClassConditionType 값을 사용하여 조건을 게시하는 것을 선호해야 합니다.

conditions[]

object

condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.

16.1.4. .status.conditions

설명

conditions는 이 GatewayClass에 대한 컨트롤러의 현재 상태입니다.

컨트롤러는 각 조건의 유형에 대해 GatewayClassConditionType 값을 사용하여 조건을 게시하는 것을 선호해야 합니다.

유형
array

16.1.5. .status.conditions[]

설명
condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
재산유형설명

lastTransitionTime

string

lastTransitionTime은 조건이 한 상태에서 다른 상태로 전환된 마지막 시간입니다. 이는 기본 조건이 변경된 시점이어야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

메시지는 전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건이 설정된 .metadata.generation을 나타냅니다. 예를 들어, .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 해당 조건은 인스턴스의 현재 상태를 기준으로 오래되었습니다.

reason

string

reason에는 조건의 마지막 전환에 대한 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 대한 예상 값과 의미를 정의하고, 해당 값이 보장된 API로 간주되는지 여부를 결정할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있을 수 없습니다.

status

string

조건의 상태는 True, False, Unknown 중 하나입니다.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

16.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/gateway.networking.k8s.io/v1/gatewayclasses

    • DELETE : GatewayClass 컬렉션 삭제
    • GET : GatewayClass 종류의 객체 목록
    • POST : GatewayClass 생성
  • /apis/gateway.networking.k8s.io/v1/gatewayclasses/{name}

    • DELETE : GatewayClass 삭제
    • GET : 지정된 GatewayClass를 읽습니다.
    • PATCH : 지정된 GatewayClass를 부분적으로 업데이트합니다.
    • PUT : 지정된 GatewayClass를 교체합니다.
  • /apis/gateway.networking.k8s.io/v1/gatewayclasses/{name}/status

    • GET : 지정된 GatewayClass의 상태를 읽습니다.
    • PATCH : 지정된 GatewayClass의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 GatewayClass의 상태를 바꿉니다.

16.2.1. /apis/gateway.networking.k8s.io/v1/gatewayclasses

HTTP 방법
DELETE
설명
GatewayClass 컬렉션 삭제
Expand
표 16.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
GatewayClass 종류의 객체 목록
Expand
표 16.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClassList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
GatewayClass를 생성하세요
Expand
표 16.3. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 16.4. 신체 매개변수
매개변수유형설명

body

GatewayClass 스키마

 
Expand
표 16.5. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClass 스키마

201 - 생성됨

GatewayClass 스키마

202 - 승인됨

GatewayClass 스키마

401 - 승인되지 않음

비어 있는

16.2.2. /apis/gateway.networking.k8s.io/v1/gatewayclasses/{name}

Expand
표 16.6. 글로벌 경로 매개변수
매개변수유형설명

name

string

GatewayClass의 이름

HTTP 방법
DELETE
설명
delete a GatewayClass
Expand
표 16.7. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 16.8. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 GatewayClass를 읽습니다.
Expand
표 16.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClass 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 GatewayClass를 부분적으로 업데이트합니다.
Expand
표 16.10. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 16.11. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClass 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 GatewayClass를 교체합니다
Expand
표 16.12. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 16.13. 신체 매개변수
매개변수유형설명

body

GatewayClass 스키마

 
Expand
표 16.14. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClass 스키마

201 - 생성됨

GatewayClass 스키마

401 - 승인되지 않음

비어 있는

16.2.3. /apis/gateway.networking.k8s.io/v1/gatewayclasses/{name}/status

Expand
표 16.15. 글로벌 경로 매개변수
매개변수유형설명

name

string

GatewayClass의 이름

HTTP 방법
얻다
설명
지정된 GatewayClass의 상태를 읽습니다.
Expand
표 16.16. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClass 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 GatewayClass의 상태를 부분적으로 업데이트합니다.
Expand
표 16.17. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 16.18. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClass 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 GatewayClass의 상태를 바꿉니다.
Expand
표 16.19. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 16.20. 신체 매개변수
매개변수유형설명

body

GatewayClass 스키마

 
Expand
표 16.21. HTTP 응답
HTTP 코드응답 본문

200 - 확인

GatewayClass 스키마

201 - 생성됨

GatewayClass 스키마

401 - 승인되지 않음

비어 있는

17장. HTTPRoute [gateway.networking.k8s.io/v1]

설명
HTTPRoute는 HTTP 요청을 라우팅하는 방법을 제공합니다. 여기에는 호스트 이름, 경로, 헤더 또는 쿼리 매개변수를 기준으로 요청을 일치시키는 기능이 포함됩니다. 필터를 사용하여 추가적인 처리 단계를 지정할 수 있습니다. 백엔드는 일치하는 요청이 어디로 라우팅되어야 하는지 지정합니다.
유형
object
필수 항목
  • spec

17.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

사양은 HTTPRoute의 원하는 상태를 정의합니다.

status

object

상태는 HTTPRoute의 현재 상태를 정의합니다.

17.1.1. .spec

설명
사양은 HTTPRoute의 원하는 상태를 정의합니다.
유형
object
Expand
재산유형설명

호스트 이름

배열(문자열)

호스트 이름은 요청을 처리하는 데 사용되는 HTTPRoute를 선택하기 위해 HTTP 호스트 헤더와 일치해야 하는 호스트 이름 세트를 정의합니다. 구현은 매치를 수행하는 동안 HTTP 호스트 헤더에 지정된 모든 포트 값을 무시해야 하며 (적용 가능한 헤더 수정 구성이 없는 경우) 이 헤더를 수정하지 않고 백엔드로 전달해야 합니다.

호스트 이름에 대한 유효한 값은 RFC 1123 호스트 이름 정의에 따라 결정되며, 두 가지 주목할 만한 예외가 있습니다.

1. IP는 허용되지 않습니다. 2. 호스트 이름 앞에는 와일드카드 레이블( *. )을 붙일 수 있습니다. 와일드카드 레이블은 첫 번째 레이블로 단독으로 나타나야 합니다.

Listener와 HTTPRoute 모두 호스트 이름을 지정하는 경우 HTTPRoute가 Listener에 연결되려면 최소한 하나 이상의 교차하는 호스트 이름이 있어야 합니다. 예를 들면 다음과 같습니다.

* 호스트 이름이 test.example.com 인 Listener는 호스트 이름을 지정하지 않았거나 test.example.com 또는 *.example.com 중 하나 이상을 지정한 HTTPRoutes와 일치합니다. * 호스트 이름이 *.example.com 인 Listener는 호스트 이름을 지정하지 않았거나 Listener 호스트 이름과 일치하는 호스트 이름을 하나 이상 지정한 HTTPRoutes와 일치합니다. 예를 들어, \*.example.com , test.example.com , foo.test.example.com 은 모두 일치합니다. 반면, example.comtest.example.net은 일치하지 않습니다.

와일드카드 레이블( *. )이 접두사로 붙은 호스트 이름은 접미사 일치로 해석됩니다. 즉, *.example.com 에 대한 일치 항목은 test.example.comfoo.test.example.com 둘 다와 일치하지만 example.com 과 는 일치하지 않습니다.

Listener와 HTTPRoute가 모두 호스트 이름을 지정한 경우 Listener 호스트 이름과 일치하지 않는 HTTPRoute 호스트 이름은 반드시 무시해야 합니다. 예를 들어, Listener가 *.example.com을 지정하고 HTTPRoute가 test.example.comtest.example.net을 지정한 경우 test.example.net은 일치 항목으로 간주되어서는 안 됩니다.

Listener와 HTTPRoute가 모두 호스트 이름을 지정했고 위의 기준과 일치하는 것이 없으면 HTTPRoute는 허용되지 않습니다. 구현에서는 해당 RouteParentStatus에서 False 상태의 '수락됨' 조건을 발생시켜야 합니다.

여러 HTTPRoute가 교차하는 호스트 이름(예: 중복되는 와일드카드 일치 및 정확히 일치하는 호스트 이름)을 지정하는 경우 다음 중 가장 많은 수의 HTTPRoute의 규칙이 우선해야 합니다.

* 일치하는 와일드카드가 아닌 호스트 이름의 문자입니다. * 호스트 이름이 일치하는 문자입니다.

여러 경로에 걸쳐 연결이 존재하는 경우 HTTPRouteMatches에 대한 일치 우선순위 규칙이 적용됩니다.

지원: 코어

parentRefs

array

ParentRefs는 Route가 연결되길 원하는 리소스(일반적으로 Gateway)를 참조합니다. 첨부 파일을 완성하려면 참조된 상위 리소스에서 이를 허용해야 합니다. 게이트웨이의 경우 게이트웨이가 이러한 종류와 네임스페이스의 경로에서의 첨부를 허용해야 함을 의미합니다. 서비스의 경우, 서비스는 "생산자" 경로에 대해 동일한 네임스페이스에 있어야 하거나 메시 구현은 참조된 서비스에 대한 "소비자" 경로를 지원하고 허용해야 함을 의미합니다. ReferenceGrant는 서비스에 대한 ParentRefs를 관리하는 데 적용할 수 없습니다. Route와 다른 네임스페이스에 있는 서비스에 대한 "생산자" 경로를 만드는 것은 불가능합니다.

"핵심" 지원을 제공하는 두 가지 유형의 부모 리소스가 있습니다.

* 게이트웨이(게이트웨이 적합성 프로파일) * 서비스(메시 적합성 프로파일, ClusterIP 서비스만 해당)

이 API는 향후에 추가 종류의 부모 리소스를 지원하도록 확장될 수 있습니다.

ParentRefs는 서로 달라야 합니다. 이는 다음을 의미합니다.

* 그들은 다양한 물건을 선택합니다. 이 경우 parentRef 항목은 서로 다릅니다. 필드 측면에서 이는 group , kind , namespacename 으로 정의된 다중 부분 키가 Route의 모든 parentRef 항목에서 고유해야 함을 의미합니다. * 이들은 서로 다른 객체를 선택하지 않지만, 사용된 각 선택적 필드에 대해 동일한 객체를 선택하는 각 ParentRef는 동일한 선택적 필드 집합을 다른 값으로 설정해야 합니다. 한 ParentRef가 선택적 필드의 조합을 설정하는 경우, 모든 ParentRef는 동일한 조합을 설정해야 합니다.

몇 가지 예:

* 하나의 ParentRef가 sectionName을 설정하는 경우, 동일한 객체를 참조하는 모든 ParentRef도 sectionName을 설정해야 합니다. * 하나의 ParentRef가 port를 설정하는 경우, 동일한 객체를 참조하는 모든 ParentRef도 port를 설정해야 합니다. * 하나의 ParentRef가 sectionNameport를 설정하는 경우, 동일한 객체를 참조하는 모든 ParentRef도 sectionNameport를 설정해야 합니다.

구현에 따라 축소될 수 있는 여러 개의 개별 객체를 별도로 참조하는 것이 가능합니다. 예를 들어, 일부 구현에서는 호환 가능한 Gateway Listener를 병합하기로 선택할 수 있습니다. 그렇다면 해당 리소스에 연결된 경로 목록도 병합해야 합니다.

네임스페이스 경계를 넘는 ParentRefs의 경우 특정 규칙이 있습니다. 교차 네임스페이스 참조는 참조하는 네임스페이스의 어떤 것에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어, Gateway에는 AllowedRoutes 필드가 있고 ReferenceGrant는 다른 종류의 크로스 네임스페이스 참조를 활성화하는 일반적인 방법을 제공합니다.

parentRefs[]

object

ParentReference는 이 리소스(일반적으로 경로)의 부모로 간주될 수 있는 API 객체(일반적으로 게이트웨이)를 식별합니다. "핵심" 지원을 제공하는 두 가지 유형의 부모 리소스가 있습니다.

* 게이트웨이(게이트웨이 적합성 프로파일) * 서비스(메시 적합성 프로파일, ClusterIP 서비스만 해당)

이 API는 향후에 추가 종류의 부모 리소스를 지원하도록 확장될 수 있습니다.

API 객체는 클러스터에서 유효해야 하며, 이 참조가 유효하려면 그룹과 종류가 클러스터에 등록되어야 합니다.

규칙

array

규칙은 HTTP 매처, 필터 및 작업의 목록입니다.

rules[]

object

HTTPRouteRule은 조건(일치)에 따라 HTTP 요청을 매칭하고, 이를 처리(필터)하고, API 객체(backendRefs)로 요청을 전달하기 위한 의미를 정의합니다.

17.1.2. .spec.parentRefs

설명

ParentRefs는 Route가 연결되길 원하는 리소스(일반적으로 Gateway)를 참조합니다. 첨부 파일을 완성하려면 참조된 상위 리소스에서 이를 허용해야 합니다. 게이트웨이의 경우 게이트웨이는 이 종류 및 네임스페이스의 경로에서 연결을 허용해야 함을 의미합니다. 서비스의 경우 서비스는 "producer" 경로에 대해 동일한 네임스페이스에 있거나 메시 구현에서 참조된 서비스에 대한 "소유자" 경로를 지원하고 허용해야 함을 의미합니다. ReferenceGrant는 서비스에 대한 상위 참조 관리에는 적용되지 않습니다 - 경로와 다른 네임스페이스에서 서비스에 대한 "생성자" 경로를 생성할 수 없습니다.

"Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

  • 게이트웨이 (Gateway 적합성 프로파일)
  • 서비스(Mesh 적합성 프로필, ClusterIP 서비스만 해당)

이 API는 나중에 추가 종류의 상위 리소스를 지원하도록 확장될 수 있습니다.

parentRef는 구별 되어야 합니다. 즉, 다음과 같습니다.

  • 다양한 오브젝트를 선택합니다. 이 경우 parentRef 항목이 구분됩니다. 필드 측면에서 이는 그룹,종류,네임스페이스, name 으로 정의된 다중 파트 키가 경로의 모든 parentRef 항목에서 고유해야 함을 의미합니다.
  • 서로 다른 오브젝트를 선택하지 않지만, 사용된 각 선택적 필드의 경우 동일한 오브젝트를 선택하는 각 ParentRef는 동일한 선택적 필드 집합을 다른 값으로 설정해야 합니다. 하나의 ParentRef가 선택적 필드의 조합을 설정하는 경우 모두 동일한 조합을 설정해야 합니다.

몇 가지 예:

  • 하나의 ParentRef가 sectionName 을 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 sectionName 을 설정해야 합니다.
  • 하나의 ParentRef가 포트 를 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 포트 를 설정해야 합니다.
  • 하나의 ParentRef가 sectionNameport 를 설정하는 경우 동일한 오브젝트를 참조하는 모든 ParentRefs도 sectionNameport 를 설정해야 합니다.

구현에 의해 축소될 수 있는 여러 개의 개별 개체를 별도로 참조할 수 있습니다. 예를 들어 일부 구현에서는 호환 가능한 게이트웨이 수신기를 함께 병합하도록 선택할 수 있습니다. 이 경우 해당 리소스에 연결된 경로 목록도 병합해야 합니다.

parentRefs의 경우 네임스페이스 경계를 통한 특정 규칙이 있습니다. 네임스페이스 간 참조는 참조하는 네임스페이스의 항목에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어 게이트웨이에는 AllowedRoutes 필드가 있으며 ReferenceGrant는 다른 종류의 네임스페이스를 사용할 수 있는 일반적인 방법을 제공합니다.

유형
array

17.1.3. .spec.parentRefs[]

설명

ParentReference는 이 리소스의 상위(일반적으로 경로)로 간주할 수 있는 API 오브젝트(일반적으로 게이트웨이)를 식별합니다. "Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

  • 게이트웨이 (Gateway 적합성 프로파일)
  • 서비스(Mesh 적합성 프로필, ClusterIP 서비스만 해당)

이 API는 나중에 추가 종류의 상위 리소스를 지원하도록 확장될 수 있습니다.

API 오브젝트는 클러스터에서 유효해야 합니다. 이 참조가 유효하려면 Group 및 Kind를 클러스터에 등록해야 합니다.

유형
object
필수 항목
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 지정되지 않은 경우 "gateway.networking.k8s.io"가 유추됩니다. 코어 API 그룹(예: "Service" kind referent의 경우)을 설정하려면 그룹을 명시적으로 ""(빈 문자열)로 설정해야 합니다.

지원: Core

kind

string

이는 일종의 참조입니다.

"Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

* 게이트웨이 (Gateway 적합성 프로파일) * 서비스 (Mesh 적합성 프로파일, ClusterIP 서비스 만 해당)

다른 리소스에 대한 지원은 Implementation-Specific입니다.

name

string

이름은 참조의 이름입니다.

지원: Core

네임스페이스

string

네임스페이스는 참조의 네임스페이스입니다. 지정되지 않은 경우 경로의 로컬 네임스페이스를 나타냅니다.

네임스페이스 경계를 통과하는 ParentRefs에 대한 특정 규칙이 있습니다. 네임스페이스 간 참조는 참조하는 네임스페이스의 항목에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어 게이트웨이에는 AllowedRoutes 필드가 있으며 ReferenceGrant는 다른 종류의 네임스페이스를 활성화하는 일반적인 방법을 제공합니다.

지원: Core

port

integer

port는 이 경로가 대상으로 하는 네트워크 포트입니다. 상위 리소스 유형에 따라 다르게 해석될 수 있습니다.

상위 리소스가 게이트웨이인 경우 이러한 종류의 경로도 지원하는 지정된 포트에서 수신 대기 중인 모든 리스너를 대상으로 하고 이 경로를 선택합니다. 경로에 지정된 네트워킹 동작을 포트를 변경할 수 있는 리스너와 달리 특정 포트에 적용해야 하는 경우를 제외하고 Port 를 설정하지 않는 것이 좋습니다. Port 및 sectionName을 둘 다 지정하면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 상위 리소스를 지원하도록 선택할 수 있습니다. 다른 유형의 상위 리소스를 지원하는 구현은 Port가 해석되는 방법을 명확하게 문서화해야 합니다.

상태를 위해 상위 리소스에서 부분적으로 수락하면 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: 확장

sectionName

string

sectionName은 대상 리소스에 있는 섹션의 이름입니다. 다음 리소스에서 sectionName은 다음과 같이 해석됩니다.

* 게이트웨이: 리스너 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다. * 서비스: 포트 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 리소스에 경로 연결을 지원하도록 선택할 수 있습니다. 이 경우 sectionName을 해석하는 방법을 명확하게 문서화해야 합니다.

지정되지 않은 경우(빈 문자열) 전체 리소스를 참조합니다. 상태의 목적을 위해 부모 리소스의 하나 이상의 섹션에서 이를 수락하는 경우 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: Core

17.1.4. .spec.rules

설명
규칙은 HTTP 일치자, 필터 및 작업 목록입니다.
유형
array

17.1.5. .spec.rules[]

설명
HTTPRouteRule은 조건(matches), 처리(filters) 및 API 오브젝트(backendRefs)로 요청을 전달하는 HTTP 요청 일치에 대한 의미 체계를 정의합니다.
유형
object
Expand
속성유형설명

backendRefs

array

BackendRefs는 일치하는 요청을 보내야 하는 백엔드를 정의합니다.

여기에서 실패 동작은 지정된 BackendRef 수와 유효하지 않은 횟수에 따라 달라집니다.

BackendRefs의 모든 항목이 유효하지 않고 이 경로 규칙에 지정된 필터도 없는 경우 이 규칙과 일치하는 모든 트래픽은 500 상태 코드를 받아야 합니다.

단일 HTTPBackendRef가 유효하지 않은 항목에 대한 규칙은 HTTPBackendRef 정의를 참조하십시오.

HTTPBackendRef가 유효하지 않으면 잘못된 백엔드로 라우팅된 요청에 대해 500 상태 코드를 반환해야 합니다. 여러 백엔드가 지정되고 일부는 유효하지 않은 경우, 그렇지 않으면 잘못된 백엔드로 라우팅된 요청 비율이 500 상태 코드를 수신해야 합니다.

예를 들어 두 백엔드가 동일한 가중치로 지정되고 하나는 유효하지 않은 경우 트래픽의 50 %가 500을 수신해야 합니다. 구현은 50%를 결정하는 방법을 선택할 수 있습니다.

HTTPBackendRef가 준비되지 않은 엔드포인트가 없는 서비스를 참조하면 구현에서 해당 백엔드에 대한 요청에 대해 503을 반환해야 합니다. 구현에서 이 작업을 수행하는 경우 500 응답에 대한 위의 모든 규칙도 503을 반환하는 응답을 적용해야 합니다.

지원: Kubernetes 서비스 코어

지원: Kubernetes ServiceImport에 대한 확장

지원: 다른 리소스에 대한 구현별

가중치 지원: Core

backendRefs[]

object

HTTPBackendRef는 HTTPRoute가 HTTP 요청을 전달하는 방법을 정의합니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

filters

array

필터는 이 규칙과 일치하는 요청에 적용되는 필터를 정의합니다.

가능한 경우 구현에서는 지정된 순서대로 필터를 구현해야 합니다.

구현은 이러한 순서를 엄격하게 구현하여 지원되지 않는 필터의 조합 또는 순서를 거부합니다. 구현에서 필터 순서의 엄격한 해석을 선택하는 경우 해당 동작을 명확하게 문서화해야 합니다.

잘못된 조합 또는 필터 순서를 거부하려면 구현이 이 구성이 잘못된 경로 규칙으로 간주해야 합니다. 경로의 모든 경로 규칙이 유효하지 않으면 전체 경로가 유효하지 않은 것으로 간주됩니다. 경로 규칙의 일부만 유효하지 않은 경우 구현에서는 경로에 대해 "PartiallyInvalid" 조건을 설정해야 합니다.

이 수준의 적합성 수준은 필터 유형에 따라 정의됩니다.

- 모든 핵심 필터는 모든 구현에서 지원해야 합니다. - 구현자는 확장된 필터를 지원하는 것이 좋습니다. - 구현별 사용자 지정 필터에는 구현마다 API가 보장되지 않습니다.

필터에 명시적으로 표시되지 않는 한 동일한 필터를 여러 번 지정하는 것은 지원되지 않습니다.

결합할 수 없는 URLRewrite 및 RequestRedirect 필터를 제외하고 모든 필터가 서로 호환되어야 합니다. 구현에서 다른 필터 조합을 지원할 수 없는 경우 해당 제한을 명확하게 문서화해야 합니다. 호환되지 않거나 지원되지 않는 필터가 지정되고 Accepted 조건이 False 상태로 설정되는 경우 구현에서 IncompatibleFilters 이유를 사용하여 이 구성 오류를 지정할 수 있습니다.

지원: Core

filters[]

object

HTTPRouteFilter는 요청 또는 응답 라이프사이클 중에 완료해야 하는 처리 단계를 정의합니다. HTTPRouteFilter는 게이트웨이 구현에서 수행될 수 있는 처리의 확장 지점입니다. 일부 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한 및 트래픽 형성이 포함됩니다. API Guarantee/conformance는 필터 유형에 따라 정의됩니다.

일치

array

matches는 들어오는 HTTP 요청과 대한 규칙과 일치하는 데 사용되는 조건을 정의합니다. 일치 항목이 독립적입니다. 즉, 일치 항목 중 하나가 충족되면 이 규칙이 일치합니다.

예를 들어 다음과 같은 구성이 일치하도록 합니다.

matches: - path: value: "/foo" headers: - name: "version" value: "v2" - path: value: "/v2/foo"

이 규칙에 대한 요청이 일치하려면 다음 두 조건 중 EITHER 요청을 충족해야 합니다.

- /foo AND로 접두사가 지정된 경로에는 헤더 버전이 포함되어 있습니다. v2 - 경로 접두사 /v2/foo

ANDed여야 하는 여러 일치 조건을 지정하는 방법은 HTTPRouteMatch에 대한 설명서를 참조하십시오.

일치하는 항목이 없는 경우 기본값은 "/"와 일치하는 접두사 경로입니다. 이 경로는 모든 HTTP 요청과 일치하는 효과가 있는 "/"입니다.

HTTPRoutes에서 생성된 프록시 또는 로드 밸런서 라우팅 구성은 다음 기준에 따라 일치하는 항목을 우선시하여 연결 상태를 유지해야 합니다. 해당 경로에 지정된 모든 규칙에서 일치 항목에 우선순위를 지정해야 합니다.

* "exact" 경로가 일치합니다. * "prefix" 경로는 가장 큰 문자 수와 일치합니다. * 방법이 일치합니다. * 가장 많은 헤더가 일치하는 경우입니다. * 가장 많은 쿼리 매개 변수가 일치합니다.

참고: 정규식 경로 일치의 우선순위는 구현에 따라 다릅니다.

여러 경로에 걸쳐 연결이 여전히 존재하는 경우 일치하는 우선순위는 다음 기준의 순서대로 결정되어야 하며 연결에서 계속해야 합니다.

* 생성 타임스탬프를 기반으로 하는 가장 오래된 경로입니다. * "{namespace}/{name}"에 의해 알파벳순으로 먼저 나타나는 경로.

If ties still within an HTTPRoute, matching precedence must be granted to the FIRST matching rule (in list order) with a match meet the above criteria.

요청과 일치하는 규칙이 부모에 성공적으로 첨부되지 않은 경우 요청이 수신되는 경우 HTTP 404 상태 코드를 반환해야 합니다.

matches[]

object

HTTPRouteMatch는 지정된 작업에 요청을 일치시키는 데 사용되는 서술자를 정의합니다. 여러 일치 유형이 함께 ANDed됩니다. 즉, 모든 조건이 충족되는 경우에만 일치가 true로 평가됩니다.

예를 들어 아래 일치 항목은 경로가 /foo 로 시작되고 version: v1 헤더가 포함된 경우에만 HTTP 요청과 일치합니다.

일치:

path: value: "/foo" headers: - name: "version" value "v1"

시간 초과

object

시간 초과는 HTTP 요청에 구성할 수 있는 타임아웃을 정의합니다.

지원: 확장

17.1.6. .spec.rules[].backendRefs

설명

BackendRefs는 일치하는 요청을 보내야 하는 백엔드를 정의합니다.

여기에서 실패 동작은 지정된 BackendRef 수와 유효하지 않은 횟수에 따라 달라집니다.

BackendRefs의 모든 항목이 유효하지 않고 이 경로 규칙에 지정된 필터도 없는 경우 이 규칙과 일치하는 모든 트래픽은 500 상태 코드를 받아야 합니다.

단일 HTTPBackendRef가 유효하지 않은 항목에 대한 규칙은 HTTPBackendRef 정의를 참조하십시오.

HTTPBackendRef가 유효하지 않으면 잘못된 백엔드로 라우팅된 요청에 대해 500 상태 코드를 반환해야 합니다. 여러 백엔드가 지정되고 일부는 유효하지 않은 경우, 그렇지 않으면 잘못된 백엔드로 라우팅된 요청 비율이 500 상태 코드를 수신해야 합니다.

예를 들어 두 백엔드가 동일한 가중치로 지정되고 하나는 유효하지 않은 경우 트래픽의 50 %가 500을 수신해야 합니다. 구현은 50%를 결정하는 방법을 선택할 수 있습니다.

HTTPBackendRef가 준비되지 않은 엔드포인트가 없는 서비스를 참조하면 구현에서 해당 백엔드에 대한 요청에 대해 503을 반환해야 합니다. 구현에서 이 작업을 수행하는 경우 500 응답에 대한 위의 모든 규칙도 503을 반환하는 응답을 적용해야 합니다.

지원: Kubernetes 서비스 코어

지원: Kubernetes ServiceImport에 대한 확장

지원: 다른 리소스에 대한 구현별

가중치 지원: Core

유형
array

17.1.7. .spec.rules[].backendRefs[]

설명

HTTPBackendRef는 HTTPRoute가 HTTP 요청을 전달하는 방법을 정의합니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

유형
object
필수 항목
  • name
Expand
속성유형설명

filters

array

요청이 여기에 정의된 백엔드로 전달되는 경우에만 이 수준에 정의된 필터를 실행해야 합니다.

지원: 구현별(광범위한 필터를 사용하려면 HTTPRouteRule의 필터 필드를 사용합니다.)

filters[]

object

HTTPRouteFilter는 요청 또는 응답 라이프사이클 중에 완료해야 하는 처리 단계를 정의합니다. HTTPRouteFilter는 게이트웨이 구현에서 수행될 수 있는 처리의 확장 지점입니다. 일부 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한 및 트래픽 형성이 포함됩니다. API Guarantee/conformance는 필터 유형에 따라 정의됩니다.

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

kind는 참조의 Kubernetes 리소스 유형입니다. 예: "Service".

지정하지 않는 경우 기본값은 "Service"입니다.

ExternalName 서비스는 클러스터 외부에 있을 수 있는 CNAME DNS 레코드를 참조할 수 있으므로 적합성 측면에서 이유하기가 어렵습니다. 또한 안전하게 전달하지 못할 수도 있습니다(자세한 내용은 CVE-2021-25740 참조). 구현은 ExternalName 서비스를 지원하지 않아야 합니다.

지원: Core (ExternalName 이외의 유형이 있는 서비스)

지원: 구현별 ( ExternalName 유형의 서비스)

name

string

이름은 참조의 이름입니다.

네임스페이스

string

네임스페이스는 백엔드의 네임스페이스입니다. 지정하지 않으면 로컬 네임스페이스가 유추됩니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

지원: Core

port

integer

port는 이 리소스에 사용할 대상 포트 번호를 지정합니다. 참조가 Kubernetes 서비스인 경우 포트가 필요합니다. 이 경우 포트 번호는 대상 포트가 아닌 서비스 포트 번호입니다. 기타 리소스의 경우 대상 포트가 참조 리소스 또는 이 필드에서 파생될 수 있습니다.

weight

integer

weight는 참조된 백엔드로 전달된 요청 비율을 지정합니다. 이 값은 weight/(이 BackendRefs 목록의 모든 가중치 합계)로 계산됩니다. 0이 아닌 값의 경우 구현에서 지원하는 전체 범위에 따라 여기에 정의된 정확한 비율에서 몇 가지 epsilon이 있을 수 있습니다.For non-zero values, there may be some epsilon from the exact proportion defined here depending on the precision an implementation supports. weight는 백분율이 아니며 가중치 합계는 100과 같을 필요가 없습니다.

하나의 백엔드만 지정되고 가중치가 0보다 크면 트래픽의 100%가 해당 백엔드로 전달됩니다. weight가 0으로 설정된 경우 이 항목에 대해 트래픽을 전달하지 않아야 합니다. 지정되지 않은 경우 weight는 기본적으로 1입니다.

이 필드에 대한 지원은 사용되는 컨텍스트에 따라 다릅니다.

17.1.8. .spec.rules[].backendRefs[].filters

설명

요청이 여기에 정의된 백엔드로 전달되는 경우에만 이 수준에 정의된 필터를 실행해야 합니다.

지원: 구현별(광범위한 필터를 사용하려면 HTTPRouteRule의 필터 필드를 사용합니다.)

유형
array

17.1.9. .spec.rules[].backendRefs[].filters[]

설명
HTTPRouteFilter는 요청 또는 응답 라이프사이클 중에 완료해야 하는 처리 단계를 정의합니다. HTTPRouteFilter는 게이트웨이 구현에서 수행될 수 있는 처리의 확장 지점입니다. 일부 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한 및 트래픽 형성이 포함됩니다. API Guarantee/conformance는 필터 유형에 따라 정의됩니다.
유형
object
필수 항목
  • type
Expand
속성유형설명

extensionRef

object

ExtensionRef는 "필터" 동작에 대한 구현별 선택적 확장입니다. 예를 들어 "networking.example.net" 그룹의 리소스 "myroutefilter". ExtensionRef는 코어 및 확장 필터에는 사용해서는 안 됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

지원: 구현별

requestHeaderModifier

object

RequestHeaderModifier는 요청 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: Core

requestMirror

object

RequestMirror는 요청을 미러링하는 필터의 스키마를 정의합니다. 요청은 지정된 대상으로 전송되지만 해당 대상의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드에 대한 미러링을 지원할 수 있는 것은 아닙니다.

지원: 확장

requestRedirect

object

RequestRedirect는 HTTP 리디렉션을 사용하여 요청에 응답하는 필터의 스키마를 정의합니다.

지원: Core

responseHeaderModifier

object

ResponseHeaderModifier는 응답 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: 확장

type

string

type은 적용할 필터 유형을 식별합니다. 다른 API 필드와 마찬가지로 유형은 세 가지 적합성 수준으로 분류됩니다.

- core: 이 패키지의 "Support: Core"에서 정의한 유형과 해당 구성을 필터링합니다. 예를 들면 다음과 같습니다. "RequestHeaderModifier". 모든 구현에서는 핵심 필터를 지원해야 합니다.

- Extended: 이 패키지의 "Support: Extended"에 의해 정의된 필터 유형 및 해당 구성, 예를 들면 다음과 같습니다. "RequestMirror". 구현자는 확장 필터를 지원하는 것이 좋습니다.

- 구현별: 특정 공급업체에서 정의하고 지원하는 필터입니다. 향후 여러 구현에 걸쳐 동작에 융합되는 필터가 확장 또는 핵심 적합성 수준에 포함되는 것으로 간주됩니다. 이러한 필터에 대한 필터별 구성은 ExtensionRef 필드를 사용하여 지정됩니다. 사용자 지정 필터에 대해 type을 "ExtensionRef"로 설정해야 합니다.

구현자는 구현별 동작을 사용하여 코어 API를 확장하기 위해 사용자 지정 구현 유형을 정의하는 것이 좋습니다.

사용자 지정 필터 유형에 대한 참조를 확인할 수 없는 경우 필터를 건너뛰지 않아야 합니다. 대신 해당 필터로 처리된 요청은 HTTP 오류 응답을 받아야 합니다.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

urlRewrite

object

URLRewrite는 전달 중에 요청을 수정하는 필터의 스키마를 정의합니다.

지원: 확장

17.1.10. .spec.rules[].backendRefs[].filters[].extensionRef

설명

ExtensionRef는 "필터" 동작에 대한 구현별 선택적 확장입니다. 예를 들어 "networking.example.net" 그룹의 리소스 "myroutefilter". ExtensionRef는 코어 및 확장 필터에는 사용해서는 안 됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

지원: 구현별

유형
object
필수 항목
  • group
  • kind
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

이는 일종의 참조입니다. 예: "HTTPRoute" 또는 "Service".

name

string

이름은 참조의 이름입니다.

17.1.11. .spec.rules[].backendRefs[].filters[].requestHeaderModifier

설명

RequestHeaderModifier는 요청 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: Core

유형
object
Expand
속성유형설명

add

array

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

제거

배열(문자열)

작업 전에 HTTP 요청에서 지정된 헤더를 제거합니다. Remove 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

config: remove: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

17.1.12. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.add

설명

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

17.1.13. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

17.1.14. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.set

설명

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

17.1.15. .spec.rules[].backendRefs[].filters[].requestHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

17.1.16. .spec.rules[].backendRefs[].filters[].requestMirror

설명

RequestMirror는 요청을 미러링하는 필터의 스키마를 정의합니다. 요청은 지정된 대상으로 전송되지만 해당 대상의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드에 대한 미러링을 지원할 수 있는 것은 아닙니다.

지원: 확장

유형
object
필수 항목
  • backendRef
Expand
속성유형설명

backendRef

object

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 백엔드Ref 내에 있는 끝점 수에 관계없이 이 BackendRef 내의 단일 대상 끝점에만 전송되어야 합니다.

참조자를 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 게이트웨이에서 삭제해야 합니다. 컨트롤러는 경로 상태의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않는지 확인해야 합니다.

ReferenceGrant에서 허용하지 않는 기존 오브젝트에 대한 네임스페이스 간 참조가 있는 경우 컨트롤러는 경로의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않도록 해야 합니다.

두 경우 모두 ResolvedRefs Condition의 Message of the ResolvedRefs Condition을 사용하여 문제에 대한 자세한 정보를 제공해야 합니다.

지원: Kubernetes 서비스에 대한 확장

지원: 다른 리소스에 대한 구현별

분수

object

fraction는 BackendRef로 미러링해야 하는 요청의 일부를 나타냅니다.

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

백분율

integer

percent는 BackendRef에 미러링해야 하는 요청의 백분율을 나타냅니다. 최소 값은 0(요청의 0%를 나타내는)이고 최대값은 100입니다(요청의 100%를 나타냄).

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

17.1.17. .spec.rules[].backendRefs[].filters[].requestMirror.backendRef

설명

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 백엔드Ref 내에 있는 끝점 수에 관계없이 이 BackendRef 내의 단일 대상 끝점에만 전송되어야 합니다.

참조자를 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 게이트웨이에서 삭제해야 합니다. 컨트롤러는 경로 상태의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않는지 확인해야 합니다.

ReferenceGrant에서 허용하지 않는 기존 오브젝트에 대한 네임스페이스 간 참조가 있는 경우 컨트롤러는 경로의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않도록 해야 합니다.

두 경우 모두 ResolvedRefs Condition의 Message of the ResolvedRefs Condition을 사용하여 문제에 대한 자세한 정보를 제공해야 합니다.

지원: Kubernetes 서비스에 대한 확장

지원: 다른 리소스에 대한 구현별

유형
object
필수 항목
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

kind는 참조의 Kubernetes 리소스 유형입니다. 예: "Service".

지정하지 않는 경우 기본값은 "Service"입니다.

ExternalName 서비스는 클러스터 외부에 있을 수 있는 CNAME DNS 레코드를 참조할 수 있으므로 적합성 측면에서 이유하기가 어렵습니다. 또한 안전하게 전달하지 못할 수도 있습니다(자세한 내용은 CVE-2021-25740 참조). 구현은 ExternalName 서비스를 지원하지 않아야 합니다.

지원: Core (ExternalName 이외의 유형이 있는 서비스)

지원: 구현별 ( ExternalName 유형의 서비스)

name

string

이름은 참조의 이름입니다.

네임스페이스

string

네임스페이스는 백엔드의 네임스페이스입니다. 지정하지 않으면 로컬 네임스페이스가 유추됩니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

지원: Core

port

integer

port는 이 리소스에 사용할 대상 포트 번호를 지정합니다. 참조가 Kubernetes 서비스인 경우 포트가 필요합니다. 이 경우 포트 번호는 대상 포트가 아닌 서비스 포트 번호입니다. 기타 리소스의 경우 대상 포트가 참조 리소스 또는 이 필드에서 파생될 수 있습니다.

17.1.18. .spec.rules[].backendRefs[].filters[].requestMirror.fraction

설명

fraction는 BackendRef로 미러링해야 하는 요청의 일부를 나타냅니다.

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

유형
object
필수 항목
  • numerator
Expand
속성유형설명

denominator

integer

 

numerator

integer

 

17.1.19. .spec.rules[].backendRefs[].filters[].requestRedirect

설명

RequestRedirect는 HTTP 리디렉션을 사용하여 요청에 응답하는 필터의 스키마를 정의합니다.

지원: Core

유형
object
Expand
속성유형설명

hostname

string

hostname은 응답의 Location 헤더 값에 사용할 호스트 이름입니다. 비어 있으면 요청의 Host 헤더에 있는 호스트 이름이 사용됩니다.

지원: Core

path

object

path는 들어오는 요청의 경로를 수정하는 데 사용되는 매개변수를 정의합니다. 그런 다음 수정된 경로를 사용하여 Location 헤더를 구성합니다. 비어있는 경우 요청 경로가 그대로 사용됩니다.

지원: 확장

port

integer

port는 응답의 Location 헤더 값에 사용할 포트입니다.

포트를 지정하지 않으면 다음 규칙을 사용하여 리디렉션 포트를 파생해야 합니다.

* 리디렉션 스키마가 비어 있지 않은 경우 리디렉션 포트는 리디렉션 체계와 연결된 잘 알려진 포트여야 합니다. 특히 포트 80 및 "https"를 포트 443으로 포트 "http"로 설정합니다. 리디렉션 체계에 잘 알려진 포트가 없으면 게이트웨이의 리스너 포트를 사용해야 합니다. * 리디렉션 스키마가 비어 있는 경우 리디렉션 포트는 Gateway Listener 포트여야 합니다.

구현은 다음과 같은 경우 'Location' 헤더에 포트 번호를 추가하지 않아야 합니다.

* HTTP를 사용할 Location 헤더(Listener 프로토콜 또는 Scheme 필드를 통해 결정됨)를 사용하고 포트 80을 사용합니다. * HTTPS를 사용할 위치 헤더(Listener 프로토콜 또는 Scheme 필드를 통해 결정됨)를 사용하고 포트 443을 사용합니다.

지원: 확장

스키마

string

스키마는 응답의 Location 헤더 값에 사용할 스키마입니다. 비어있는 경우 요청 스키마가 사용됩니다.

스키마 리디렉션은 리디렉션 포트에 영향을 줄 수 있습니다. 자세한 내용은 이 필터의 포트 필드에 대한 설명서를 참조하십시오.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

지원: 확장

statusCode

integer

StatusCode는 응답에 사용할 HTTP 상태 코드입니다.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

지원: Core

17.1.20. .spec.rules[].backendRefs[].filters[].requestRedirect.path

설명

path는 들어오는 요청의 경로를 수정하는 데 사용되는 매개변수를 정의합니다. 그런 다음 수정된 경로를 사용하여 Location 헤더를 구성합니다. 비어있는 경우 요청 경로가 그대로 사용됩니다.

지원: 확장

유형
object
필수 항목
  • type
Expand
속성유형설명

replaceFullPath

string

ReplaceFullPath는 재작성 또는 리디렉션 중에 요청의 전체 경로를 교체할 값을 지정합니다.

replacePrefixMatch

string

ReplacePrefixMatch는 재작성 또는 리디렉션 중에 요청의 접두사 일치를 교체할 값을 지정합니다. 예를 들어 접두사 일치 "/foo"와 "/xyz"의 ReplacePrefixMatch가 "/xyz/bar"인 "/foo/bar"에 대한 요청이 수정됩니다.

이는 PathPrefix 일치 유형의 동작과 일치합니다. 이는 전체 경로 요소와 일치합니다. path 요소는 경로의 레이블 목록을 / 구분 기호로 분할한 것입니다. 지정하면 후행 / 가 무시됩니다. 예를 들어 /abc,/abc/, /abc/def 경로는 모두 접두사 /abc 과 일치하지만 경로 /abcd 는 그렇지 않습니다.

ReplacePrefixMatch는 PathPrefix HTTPRouteMatch와만 호환됩니다. 동일한 HTTPRouteRule에서 다른 HTTPRouteMatch 유형을 사용하면 경로의 Accepted Condition이 status: False 로 설정됩니다.

요청 경로 | 접두사 일치 | 접두사 교체 | 접두사 | 경로 교체

type

string

type은 경로 수정자의 유형을 정의합니다. 향후 API 릴리스에 추가 유형이 추가될 수 있습니다.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

17.1.21. .spec.rules[].backendRefs[].filters[].responseHeaderModifier

설명

ResponseHeaderModifier는 응답 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: 확장

유형
object
Expand
속성유형설명

add

array

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

제거

배열(문자열)

작업 전에 HTTP 요청에서 지정된 헤더를 제거합니다. Remove 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

config: remove: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

17.1.22. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.add

설명

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

17.1.23. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

17.1.24. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.set

설명

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

17.1.25. .spec.rules[].backendRefs[].filters[].responseHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 일치하는 이름을 가진 첫 번째 항목을 고려해야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름의 case-insitivity로 인해 "foo" 및 "Foo"는 동등한 것으로 간주됩니다.

value

string

value는 일치시킬 HTTP 헤더의 값입니다.

17.1.26. .spec.rules[].backendRefs[].filters[].urlRewrite

설명

URLRewrite는 전달 중에 요청을 수정하는 필터의 스키마를 정의합니다.

지원: 확장

유형
object
Expand
속성유형설명

hostname

string

hostname은 전달 중에 Host 헤더 값을 교체하는 데 사용할 값입니다.

지원: 확장

path

object

path는 경로 재작성을 정의합니다.

지원: 확장

17.1.27. .spec.rules[].backendRefs[].filters[].urlRewrite.path

설명

path는 경로 재작성을 정의합니다.

지원: 확장

유형
object
필수 항목
  • type
Expand
속성유형설명

replaceFullPath

string

ReplaceFullPath는 재작성 또는 리디렉션 중에 요청의 전체 경로를 교체할 값을 지정합니다.

replacePrefixMatch

string

ReplacePrefixMatch는 재작성 또는 리디렉션 중에 요청의 접두사 일치를 교체할 값을 지정합니다. 예를 들어 접두사 일치 "/foo"와 "/xyz"의 ReplacePrefixMatch가 "/xyz/bar"인 "/foo/bar"에 대한 요청이 수정됩니다.

이는 PathPrefix 일치 유형의 동작과 일치합니다. 이는 전체 경로 요소와 일치합니다. path 요소는 경로의 레이블 목록을 / 구분 기호로 분할한 것입니다. 지정하면 후행 / 가 무시됩니다. 예를 들어 /abc,/abc/, /abc/def 경로는 모두 접두사 /abc 과 일치하지만 경로 /abcd 는 그렇지 않습니다.

ReplacePrefixMatch는 PathPrefix HTTPRouteMatch와만 호환됩니다. 동일한 HTTPRouteRule에서 다른 HTTPRouteMatch 유형을 사용하면 경로의 Accepted Condition이 status: False 로 설정됩니다.

요청 경로 | 접두사 일치 | 접두사 교체 | 접두사 | 경로 교체

type

string

type은 경로 수정자의 유형을 정의합니다. 향후 API 릴리스에 추가 유형이 추가될 수 있습니다.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

17.1.28. .spec.rules[].filters

설명

필터는 이 규칙과 일치하는 요청에 적용되는 필터를 정의합니다.

가능한 경우 구현에서는 지정된 순서대로 필터를 구현해야 합니다.

구현은 이러한 순서를 엄격하게 구현하여 지원되지 않는 필터의 조합 또는 순서를 거부합니다. 구현에서 필터 순서의 엄격한 해석을 선택하는 경우 해당 동작을 명확하게 문서화해야 합니다.

잘못된 조합 또는 필터 순서를 거부하려면 구현이 이 구성이 잘못된 경로 규칙으로 간주해야 합니다. 경로의 모든 경로 규칙이 유효하지 않으면 전체 경로가 유효하지 않은 것으로 간주됩니다. 경로 규칙의 일부만 유효하지 않은 경우 구현에서는 경로에 대해 "PartiallyInvalid" 조건을 설정해야 합니다.

이 수준의 적합성 수준은 필터 유형에 따라 정의됩니다.

  • 모든 핵심 필터는 모든 구현에서 지원해야 합니다.
  • 구현자는 확장 필터를 지원하는 것이 좋습니다.
  • 구현별 사용자 지정 필터에는 구현 시 API가 보장되지 않습니다.

필터에 명시적으로 표시되지 않는 한 동일한 필터를 여러 번 지정하는 것은 지원되지 않습니다.

결합할 수 없는 URLRewrite 및 RequestRedirect 필터를 제외하고 모든 필터가 서로 호환되어야 합니다. 구현에서 다른 필터 조합을 지원할 수 없는 경우 해당 제한을 명확하게 문서화해야 합니다. 호환되지 않거나 지원되지 않는 필터가 지정되고 Accepted 조건이 False 상태로 설정되는 경우 구현에서 IncompatibleFilters 이유를 사용하여 이 구성 오류를 지정할 수 있습니다.

지원: Core

유형
array

17.1.29. .spec.rules[].filters[]

설명
HTTPRouteFilter는 요청 또는 응답 라이프사이클 중에 완료해야 하는 처리 단계를 정의합니다. HTTPRouteFilter는 게이트웨이 구현에서 수행될 수 있는 처리의 확장 지점입니다. 일부 예로는 요청 또는 응답 수정, 인증 전략 구현, 속도 제한 및 트래픽 형성이 포함됩니다. API Guarantee/conformance는 필터 유형에 따라 정의됩니다.
유형
object
필수 항목
  • type
Expand
속성유형설명

extensionRef

object

ExtensionRef는 "필터" 동작에 대한 구현별 선택적 확장입니다. 예를 들어 "networking.example.net" 그룹의 리소스 "myroutefilter". ExtensionRef는 코어 및 확장 필터에는 사용해서는 안 됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

지원: 구현별

requestHeaderModifier

object

RequestHeaderModifier는 요청 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: Core

requestMirror

object

RequestMirror는 요청을 미러링하는 필터의 스키마를 정의합니다. 요청은 지정된 대상으로 전송되지만 해당 대상의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드에 대한 미러링을 지원할 수 있는 것은 아닙니다.

지원: 확장

requestRedirect

object

RequestRedirect는 HTTP 리디렉션을 사용하여 요청에 응답하는 필터의 스키마를 정의합니다.

지원: Core

responseHeaderModifier

object

ResponseHeaderModifier는 응답 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: 확장

type

string

type은 적용할 필터 유형을 식별합니다. 다른 API 필드와 마찬가지로 유형은 세 가지 적합성 수준으로 분류됩니다.

- core: 이 패키지의 "Support: Core"에서 정의한 유형과 해당 구성을 필터링합니다. 예를 들면 다음과 같습니다. "RequestHeaderModifier". 모든 구현에서는 핵심 필터를 지원해야 합니다.

- Extended: 이 패키지의 "Support: Extended"에 의해 정의된 필터 유형 및 해당 구성, 예를 들면 다음과 같습니다. "RequestMirror". 구현자는 확장 필터를 지원하는 것이 좋습니다.

- 구현별: 특정 공급업체에서 정의하고 지원하는 필터입니다. 향후 여러 구현에 걸쳐 동작에 융합되는 필터가 확장 또는 핵심 적합성 수준에 포함되는 것으로 간주됩니다. 이러한 필터에 대한 필터별 구성은 ExtensionRef 필드를 사용하여 지정됩니다. 사용자 지정 필터에 대해 type을 "ExtensionRef"로 설정해야 합니다.

구현자는 구현별 동작을 사용하여 코어 API를 확장하기 위해 사용자 지정 구현 유형을 정의하는 것이 좋습니다.

사용자 지정 필터 유형에 대한 참조를 확인할 수 없는 경우 필터를 건너뛰지 않아야 합니다. 대신 해당 필터로 처리된 요청은 HTTP 오류 응답을 받아야 합니다.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

urlRewrite

object

URLRewrite는 전달 중에 요청을 수정하는 필터의 스키마를 정의합니다.

지원: 확장

17.1.30. .spec.rules[].filters[].extensionRef

설명

ExtensionRef는 "필터" 동작에 대한 구현별 선택적 확장입니다. 예를 들어 "networking.example.net" 그룹의 리소스 "myroutefilter". ExtensionRef는 코어 및 확장 필터에는 사용해서는 안 됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다.

지원: 구현별

유형
object
필수 항목
  • group
  • kind
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

이는 일종의 참조입니다. 예: "HTTPRoute" 또는 "Service".

name

string

이름은 참조의 이름입니다.

17.1.31. .spec.rules[].filters[].requestHeaderModifier

설명

RequestHeaderModifier는 요청 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: Core

유형
object
Expand
재산유형설명

add

array

Add는 작업 전에 요청에 지정된 헤더(이름, 값)를 추가합니다. 헤더 이름과 연관된 기존 값에 추가됩니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 추가: - 이름: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.

제거하다

배열(문자열)

작업 전에 HTTP 요청에서 주어진 헤더를 제거합니다. Remove의 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2 참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

구성: 제거: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

Set은 작업 전에 주어진 헤더(이름, 값)로 요청을 덮어씁니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 설정: - 이름: "my-header" 값: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.

17.1.32. .spec.rules[].filters[].requestHeaderModifier.add

설명

Add는 작업 전에 요청에 지정된 헤더(이름, 값)를 추가합니다. 헤더 이름과 연관된 기존 값에 추가됩니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 추가: - 이름: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

17.1.33. .spec.rules[].filters[].requestHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
재산유형설명

name

string

Name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2 참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 동등한 이름을 가진 첫 번째 항목은 반드시 일치하는 것으로 간주됩니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름은 대소문자를 구분하지 않으므로 "foo"와 "Foo"는 동일한 것으로 간주됩니다.

value

string

Value는 일치시킬 HTTP 헤더의 값입니다.

17.1.34. .spec.rules[].filters[].requestHeaderModifier.set

설명

Set은 작업 전에 주어진 헤더(이름, 값)로 요청을 덮어씁니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 설정: - 이름: "my-header" 값: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

17.1.35. .spec.rules[].filters[].requestHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
재산유형설명

name

string

Name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2 참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 동등한 이름을 가진 첫 번째 항목은 반드시 일치하는 것으로 간주됩니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름은 대소문자를 구분하지 않으므로 "foo"와 "Foo"는 동일한 것으로 간주됩니다.

value

string

Value는 일치시킬 HTTP 헤더의 값입니다.

17.1.36. .spec.rules[].filters[].requestMirror

설명

RequestMirror는 요청을 미러링하는 필터에 대한 스키마를 정의합니다. 요청은 지정된 대상지로 전송되지만 해당 대상에서의 응답은 무시됩니다.

이 필터는 동일한 규칙 내에서 여러 번 사용할 수 있습니다. 모든 구현이 여러 백엔드로의 미러링을 지원할 수 있는 것은 아니라는 점에 유의하세요.

지원: 확장됨

유형
object
필수 항목
  • backendRef
Expand
속성유형설명

backendRef

object

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 백엔드Ref 내에 있는 끝점 수에 관계없이 이 BackendRef 내의 단일 대상 끝점에만 전송되어야 합니다.

참조자를 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 게이트웨이에서 삭제해야 합니다. 컨트롤러는 경로 상태의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않는지 확인해야 합니다.

ReferenceGrant에서 허용하지 않는 기존 오브젝트에 대한 네임스페이스 간 참조가 있는 경우 컨트롤러는 경로의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않도록 해야 합니다.

두 경우 모두 ResolvedRefs Condition의 Message of the ResolvedRefs Condition을 사용하여 문제에 대한 자세한 정보를 제공해야 합니다.

지원: Kubernetes 서비스에 대한 확장

지원: 다른 리소스에 대한 구현별

분수

object

fraction는 BackendRef로 미러링해야 하는 요청의 일부를 나타냅니다.

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

백분율

integer

percent는 BackendRef에 미러링해야 하는 요청의 백분율을 나타냅니다. 최소 값은 0(요청의 0%를 나타내는)이고 최대값은 100입니다(요청의 100%를 나타냄).

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

17.1.37. .spec.rules[].filters[].requestMirror.backendRef

설명

BackendRef는 미러링된 요청이 전송되는 리소스를 참조합니다.

미러링된 요청은 이 백엔드Ref 내에 있는 끝점 수에 관계없이 이 BackendRef 내의 단일 대상 끝점에만 전송되어야 합니다.

참조자를 찾을 수 없는 경우 이 BackendRef는 유효하지 않으며 게이트웨이에서 삭제해야 합니다. 컨트롤러는 경로 상태의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않는지 확인해야 합니다.

ReferenceGrant에서 허용하지 않는 기존 오브젝트에 대한 네임스페이스 간 참조가 있는 경우 컨트롤러는 경로의 "ResolvedRefs" 조건이 status: False 로 설정되어 있고 기본 구현에서 이 백엔드를 구성하지 않도록 해야 합니다.

두 경우 모두 ResolvedRefs Condition의 Message of the ResolvedRefs Condition을 사용하여 문제에 대한 자세한 정보를 제공해야 합니다.

지원: Kubernetes 서비스에 대한 확장

지원: 다른 리소스에 대한 구현별

유형
object
필수 항목
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 예를 들면 "gateway.networking.k8s.io"입니다. 지정되지 않았거나 빈 문자열인 경우 코어 API 그룹이 유추됩니다.

kind

string

kind는 참조의 Kubernetes 리소스 유형입니다. 예: "Service".

지정하지 않는 경우 기본값은 "Service"입니다.

ExternalName 서비스는 클러스터 외부에 있을 수 있는 CNAME DNS 레코드를 참조할 수 있으므로 적합성 측면에서 이유하기가 어렵습니다. 또한 안전하게 전달하지 못할 수도 있습니다(자세한 내용은 CVE-2021-25740 참조). 구현은 ExternalName 서비스를 지원하지 않아야 합니다.

지원: Core (ExternalName 이외의 유형이 있는 서비스)

지원: 구현별 ( ExternalName 유형의 서비스)

name

string

이름은 참조의 이름입니다.

네임스페이스

string

네임스페이스는 백엔드의 네임스페이스입니다. 지정하지 않으면 로컬 네임스페이스가 유추됩니다.

로컬 네임스페이스와 다른 네임스페이스가 지정되면 해당 네임스페이스의 소유자가 참조를 수락할 수 있도록 참조 네임스페이스에 ReferenceGrant 오브젝트가 필요합니다. 자세한 내용은 ReferenceGrant 문서를 참조하십시오.

지원: Core

port

integer

port는 이 리소스에 사용할 대상 포트 번호를 지정합니다. 참조가 Kubernetes 서비스인 경우 포트가 필요합니다. 이 경우 포트 번호는 대상 포트가 아닌 서비스 포트 번호입니다. 기타 리소스의 경우 대상 포트가 참조 리소스 또는 이 필드에서 파생될 수 있습니다.

17.1.38. .spec.rules[].filters[].requestMirror.fraction

설명

fraction는 BackendRef로 미러링해야 하는 요청의 일부를 나타냅니다.

Fraction 또는 Percent 중 하나만 지정할 수 있습니다. 둘 다 지정하지 않으면 요청의 100%가 미러링됩니다.

유형
object
필수 항목
  • numerator
Expand
속성유형설명

denominator

integer

 

numerator

integer

 

17.1.39. .spec.rules[].filters[].requestRedirect

설명

RequestRedirect는 HTTP 리디렉션을 사용하여 요청에 응답하는 필터의 스키마를 정의합니다.

지원: Core

유형
object
Expand
속성유형설명

hostname

string

hostname은 응답의 Location 헤더 값에 사용할 호스트 이름입니다. 비어 있으면 요청의 Host 헤더에 있는 호스트 이름이 사용됩니다.

지원: Core

path

object

path는 들어오는 요청의 경로를 수정하는 데 사용되는 매개변수를 정의합니다. 그런 다음 수정된 경로를 사용하여 Location 헤더를 구성합니다. 비어있는 경우 요청 경로가 그대로 사용됩니다.

지원: 확장

port

integer

port는 응답의 Location 헤더 값에 사용할 포트입니다.

포트를 지정하지 않으면 다음 규칙을 사용하여 리디렉션 포트를 파생해야 합니다.

* 리디렉션 스키마가 비어 있지 않은 경우 리디렉션 포트는 리디렉션 체계와 연결된 잘 알려진 포트여야 합니다. 특히 포트 80 및 "https"를 포트 443으로 포트 "http"로 설정합니다. 리디렉션 체계에 잘 알려진 포트가 없으면 게이트웨이의 리스너 포트를 사용해야 합니다. * 리디렉션 스키마가 비어 있는 경우 리디렉션 포트는 Gateway Listener 포트여야 합니다.

구현은 다음과 같은 경우 'Location' 헤더에 포트 번호를 추가하지 않아야 합니다.

* HTTP를 사용할 Location 헤더(Listener 프로토콜 또는 Scheme 필드를 통해 결정됨)를 사용하고 포트 80을 사용합니다. * HTTPS를 사용할 위치 헤더(Listener 프로토콜 또는 Scheme 필드를 통해 결정됨)를 사용하고 포트 443을 사용합니다.

지원: 확장

스키마

string

스키마는 응답의 Location 헤더 값에 사용할 스키마입니다. 비어있는 경우 요청 스키마가 사용됩니다.

스키마 리디렉션은 리디렉션 포트에 영향을 줄 수 있습니다. 자세한 내용은 이 필터의 포트 필드에 대한 설명서를 참조하십시오.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

지원: 확장

statusCode

integer

StatusCode는 응답에 사용할 HTTP 상태 코드입니다.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

지원: Core

17.1.40. .spec.rules[].filters[].requestRedirect.path

설명

path는 들어오는 요청의 경로를 수정하는 데 사용되는 매개변수를 정의합니다. 그런 다음 수정된 경로를 사용하여 Location 헤더를 구성합니다. 비어있는 경우 요청 경로가 그대로 사용됩니다.

지원: 확장

유형
object
필수 항목
  • type
Expand
속성유형설명

replaceFullPath

string

ReplaceFullPath는 재작성 또는 리디렉션 중에 요청의 전체 경로를 교체할 값을 지정합니다.

replacePrefixMatch

string

ReplacePrefixMatch는 재작성 또는 리디렉션 중에 요청의 접두사 일치를 교체할 값을 지정합니다. 예를 들어 접두사 일치 "/foo"와 "/xyz"의 ReplacePrefixMatch가 "/xyz/bar"인 "/foo/bar"에 대한 요청이 수정됩니다.

이는 PathPrefix 일치 유형의 동작과 일치합니다. 이는 전체 경로 요소와 일치합니다. path 요소는 경로의 레이블 목록을 / 구분 기호로 분할한 것입니다. 지정하면 후행 / 가 무시됩니다. 예를 들어 /abc,/abc/, /abc/def 경로는 모두 접두사 /abc 과 일치하지만 경로 /abcd 는 그렇지 않습니다.

ReplacePrefixMatch는 PathPrefix HTTPRouteMatch와만 호환됩니다. 동일한 HTTPRouteRule에서 다른 HTTPRouteMatch 유형을 사용하면 경로의 Accepted Condition이 status: False 로 설정됩니다.

요청 경로 | 접두사 일치 | 접두사 교체 | 접두사 | 경로 교체

type

string

type은 경로 수정자의 유형을 정의합니다. 향후 API 릴리스에 추가 유형이 추가될 수 있습니다.

이 enum에 값이 추가될 수 있으며, 구현은 알 수 없는 값이 충돌하지 않도록 해야 합니다.Note that values may be added to this enum, implementations must ensure that unknown values will not cause a crash.

여기에서 알 수 없는 값은 경로의 상태가 Accepted Condition으로 설정되어야 합니다. False. , 이유 UnsupportedValue.

17.1.41. .spec.rules[].filters[].responseHeaderModifier

설명

ResponseHeaderModifier는 응답 헤더를 수정하는 필터의 스키마를 정의합니다.

지원: 확장

유형
object
Expand
속성유형설명

add

array

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

add[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

제거

배열(문자열)

작업 전에 HTTP 요청에서 지정된 헤더를 제거합니다. Remove 값은 HTTP 헤더 이름 목록입니다. 헤더 이름은 대소문자를 구분하지 않습니다( https://datatracker.ietf.org/doc/html/rfc2616#section-4.2참조).

입력: GET /foo HTTP/1.1 my-header1: foo my-header2: bar my-header3: baz

config: remove: ["my-header1", "my-header3"]

출력: GET /foo HTTP/1.1 my-header2: bar

set

array

set은 작업 전에 지정된 헤더(이름, 값)로 요청을 덮어씁니다.

input: GET /foo HTTP/1.1 my-header: foo

config: set: - name: "my-header" value: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

set[]

object

HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.

17.1.42. .spec.rules[].filters[].responseHeaderModifier.add

설명

Add는 작업 전에 지정된 헤더(이름, 값)를 요청에 추가합니다. 헤더 이름과 연결된 기존 값에 추가됩니다.

input: GET /foo HTTP/1.1 my-header: foo

config: add: - name: "my-header" 값: "bar,baz"

출력: GET /foo HTTP/1.1 my-header: foo,bar,baz

유형
array

17.1.43. .spec.rules[].filters[].responseHeaderModifier.add[]

설명
HTTPHeader는 RFC 7230에서 정의한 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
속성유형설명

name

string

Name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2 참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 동등한 이름을 가진 첫 번째 항목은 반드시 일치하는 것으로 간주됩니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름은 대소문자를 구분하지 않으므로 "foo"와 "Foo"는 동일한 것으로 간주됩니다.

value

string

Value는 일치시킬 HTTP 헤더의 값입니다.

17.1.44. .spec.rules[].filters[].responseHeaderModifier.set

설명

Set은 작업 전에 주어진 헤더(이름, 값)로 요청을 덮어씁니다.

입력: GET /foo HTTP/1.1 my-header: foo

구성: 설정: - 이름: "my-header" 값: "bar"

출력: GET /foo HTTP/1.1 my-header: bar

유형
array

17.1.45. .spec.rules[].filters[].responseHeaderModifier.set[]

설명
HTTPHeader는 RFC 7230에 정의된 HTTP 헤더 이름과 값을 나타냅니다.
유형
object
필수 항목
  • name
  • value
Expand
재산유형설명

name

string

Name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2 참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우 동등한 이름을 가진 첫 번째 항목은 반드시 일치하는 것으로 간주됩니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름은 대소문자를 구분하지 않으므로 "foo"와 "Foo"는 동일한 것으로 간주됩니다.

value

string

Value는 일치시킬 HTTP 헤더의 값입니다.

17.1.46. .spec.rules[].filters[].urlRewrite

설명

URLRewrite는 전달 중에 요청을 수정하는 필터에 대한 스키마를 정의합니다.

지원: 확장됨

유형
object
Expand
재산유형설명

hostname

string

호스트 이름은 전달 중에 호스트 헤더 값을 대체하는 데 사용되는 값입니다.

지원: 확장됨

path

object

경로는 경로 재작성을 정의합니다.

지원: 확장됨

17.1.47. .spec.rules[].filters[].urlRewrite.path

설명

경로는 경로 재작성을 정의합니다.

지원: 확장됨

유형
object
필수 항목
  • type
Expand
속성유형설명

replaceFullPath

string

ReplaceFullPath는 재작성 또는 리디렉션 중에 요청의 전체 경로를 교체할 값을 지정합니다.

replacePrefixMatch

string

ReplacePrefixMatch는 다시 쓰기 또는 리디렉션 중에 요청의 접두사 일치를 대체할 값을 지정합니다. 예를 들어, "/foo"의 접두사 일치와 "/xyz"의 ReplacePrefixMatch를 갖는 "/foo/bar"에 대한 요청은 "/xyz/bar"로 수정됩니다.

이는 PathPrefix 일치 유형의 동작과 일치한다는 점에 유의하세요. 이는 전체 경로 요소와 일치합니다. 경로 요소는 / 구분 기호로 구분된 경로의 레이블 목록을 참조합니다. 지정된 경우 끝에 오는 /는 무시됩니다. 예를 들어, 경로 /abc , /abc/ , /abc/def 는 모두 접두사 /abc 와 일치하지만 경로 /abcd 는 일치하지 않습니다.

ReplacePrefixMatch는 PathPrefix HTTPRouteMatch와만 호환됩니다. 동일한 HTTPRouteRule에 다른 HTTPRouteMatch 유형을 사용하면 구현에서 경로에 대한 허용 조건이 False 상태로 설정됩니다.

요청 경로 | 접두사 일치 | 접두사 바꾸기 | 수정된 경로

type

string

유형은 경로 수정자의 유형을 정의합니다. API의 향후 릴리스에서는 추가 유형이 추가될 수 있습니다.

이 열거형에 값이 추가될 수 있으며, 구현 시 알 수 없는 값으로 인해 충돌이 발생하지 않도록 해야 합니다.

여기에 알 수 없는 값이 있는 경우 구현에서 Route to status: False 에 대한 Accepted Condition을 설정하고 Reason을 UnsupportedValue 로 설정해야 합니다.

17.1.48. .spec.rules[].matches

설명

일치 항목은 들어오는 HTTP 요청에 대한 규칙의 일치 여부를 결정하는 데 사용되는 조건을 정의합니다. 각 매치는 독립적입니다. 즉, 매치 중 하나 라도 충족되면 이 규칙이 매치됩니다.

예를 들어, 다음의 매치 구성을 살펴보겠습니다.

일치 항목: - 경로: 값: "/foo" 헤더: - 이름: "version" 값: "v2" - 경로: 값: "/v2/foo"

이 규칙에 따라 요청이 일치하려면 요청이 다음 두 조건 중 하나를 충족해야 합니다.

  • /foo 로 시작하는 경로에 헤더 버전 v2가 포함되어 있음
  • /v2/foo 의 경로 접두사

여러 개의 일치 조건을 AND 연산으로 지정하는 방법에 대해서는 HTTPRouteMatch 설명서를 참조하세요.

일치하는 항목이 지정되지 않으면 기본값은 "/"에 대한 접두사 경로 일치이며, 이는 모든 HTTP 요청과 일치하는 효과가 있습니다.

HTTPRoutes에서 생성된 프록시 또는 부하 분산 장치 라우팅 구성은 다음 기준에 따라 일치 항목의 우선순위를 정해야 하며, 동점인 항목도 계속됩니다. 해당 경로에 지정된 모든 규칙에 따라 다음 조건을 충족하는 매치가 우선적으로 적용됩니다.

  • "정확한" 경로 일치.
  • 가장 많은 문자 수를 포함하는 "접두사" 경로 일치.
  • 메서드 일치.
  • 헤더 일치 수가 가장 많습니다.
  • 가장 많은 수의 쿼리 매개변수 일치.

참고: RegularExpression 경로 일치의 우선순위는 구현에 따라 다릅니다.

여러 경로에 걸쳐 여전히 연결이 존재하는 경우, 다음 기준에 따라 일치 우선순위를 결정해야 하며, 연결이 있는 경우 계속됩니다.

  • 생성 타임스탬프를 기준으로 가장 오래된 경로입니다.
  • 알파벳 순으로 "{namespace}/{name}"에 가장 먼저 나타나는 경로입니다.

HTTPRoute 내에 여전히 연결이 존재하는 경우, 위의 기준을 충족하는 일치 항목이 있는 첫 번째 일치 규칙(목록 순서)에 일치 우선순위를 부여해야 합니다.

부모 요청에서 요청에 맞는 규칙이 성공적으로 첨부되지 않은 경우 HTTP 404 상태 코드가 반환되어야 합니다.

유형
array

17.1.49. .spec.rules[].matches[]

설명

HTTPRouteMatch는 요청을 주어진 작업에 일치시키는 데 사용되는 조건을 정의합니다. 여러 개의 일치 유형은 AND 연산을 통해 연결됩니다. 즉, 모든 조건이 충족되는 경우에만 일치가 참으로 평가됩니다.

예를 들어, 아래의 매치는 경로가 /foo 로 시작하고 버전: v1 헤더를 포함하는 경우에만 HTTP 요청과 매치합니다.

성냥:

path:
  value: "/foo"
headers:
- name: "version"
  value "v1"
Copy to Clipboard Toggle word wrap
유형
object
Expand
재산유형설명

headers

array

헤더는 HTTP 요청 헤더 매처를 지정합니다. 여러 개의 일치 값을 AND로 연결하면, 경로를 선택하려면 요청이 지정된 모든 헤더와 일치해야 합니다.

headers[]

object

HTTPHeaderMatch는 HTTP 요청 헤더를 일치시켜 HTTP 경로를 선택하는 방법을 설명합니다.

method

string

메서드는 HTTP 메서드 매처를 지정합니다. 이 옵션이 지정되면, 요청에 지정된 메서드가 있는 경우에만 이 경로가 매칭됩니다.

지원: 확장됨

path

object

Path는 HTTP 요청 경로 매처를 지정합니다. 이 필드가 지정되지 않으면 "/" 경로에 대한 기본 접두사 일치가 제공됩니다.

queryParams

array

QueryParams는 HTTP 쿼리 매개변수 매처를 지정합니다. 여러 개의 일치 값을 AND로 연결하면, 요청은 경로를 선택하기 위해 지정된 모든 쿼리 매개변수와 일치해야 합니다.

지원: 확장됨

queryParams[]

object

HTTPQueryParamMatch는 HTTP 쿼리 매개변수를 일치시켜 HTTP 경로를 선택하는 방법을 설명합니다.

17.1.50. .spec.rules[].matches[].headers

설명
헤더는 HTTP 요청 헤더 매처를 지정합니다. 여러 개의 일치 값을 AND로 연결하면, 경로를 선택하려면 요청이 지정된 모든 헤더와 일치해야 합니다.
유형
array

17.1.51. .spec.rules[].matches[].headers[]

설명
HTTPHeaderMatch는 HTTP 요청 헤더를 일치시켜 HTTP 경로를 선택하는 방법을 설명합니다.
유형
object
필수 항목
  • name
  • value
Expand
재산유형설명

name

string

Name은 일치시킬 HTTP 헤더의 이름입니다. 이름 일치는 대소문자를 구분하지 않아야 합니다. ( https://tools.ietf.org/html/rfc7230#section-3.2 참조).

여러 항목이 동등한 헤더 이름을 지정하는 경우, 동등한 이름을 가진 첫 번째 항목만 일치 항목으로 간주되어야 합니다. 동일한 헤더 이름을 가진 후속 항목은 무시되어야 합니다. 헤더 이름은 대소문자를 구분하지 않으므로 "foo"와 "Foo"는 동일한 것으로 간주됩니다.

HTTP 요청에서 헤더가 반복되는 경우, 이를 표현하는 방법은 구현에 따라 달라집니다. 일반적으로 프록시는 반복 헤더 처리와 관련하여 RFC: https://www.rfc-editor.org/rfc/rfc7230.html#section-3.2.2 의 지침을 따라야 하며, 특히 "Set-Cookie"에 대한 특별 처리가 필요합니다.

type

string

유형은 헤더 값과 일치하는 방법을 지정합니다.

지원: 핵심(정확히)

지원: 구현별(RegularExpression)

RegularExpression HeaderMatchType은 구현에 따라 적합성이 다르므로 구현 시 POSIX, PCRE 또는 기타 정규 표현식 방언을 지원할 수 있습니다. 지원되는 방언을 확인하려면 구현 문서를 읽어보세요.

value

string

Value는 일치시킬 HTTP 헤더의 값입니다.

17.1.52. .spec.rules[].matches[].path

설명
Path는 HTTP 요청 경로 매처를 지정합니다. 이 필드가 지정되지 않으면 "/" 경로에 대한 기본 접두사 일치가 제공됩니다.
유형
object
Expand
재산유형설명

type

string

유형은 경로 값과 일치하는 방법을 지정합니다.

지원: Core(Exact, PathPrefix)

지원: 구현별(RegularExpression)

value

string

일치시킬 HTTP 경로의 값입니다.

17.1.53. .spec.rules[].matches[].queryParams

설명

QueryParams는 HTTP 쿼리 매개변수 매처를 지정합니다. 여러 개의 일치 값을 AND로 연결하면, 요청은 경로를 선택하기 위해 지정된 모든 쿼리 매개변수와 일치해야 합니다.

지원: 확장됨

유형
array

17.1.54. .spec.rules[].matches[].queryParams[]

설명
HTTPQueryParamMatch는 HTTP 쿼리 매개변수를 일치시켜 HTTP 경로를 선택하는 방법을 설명합니다.
유형
object
필수 항목
  • name
  • value
Expand
재산유형설명

name

string

Name은 일치시킬 HTTP 쿼리 매개변수의 이름입니다. 정확히 일치하는 문자열이어야 합니다. ( https://tools.ietf.org/html/rfc7230#section-2.7.3 참조).

여러 항목이 동등한 쿼리 매개변수 이름을 지정하는 경우, 동등한 이름을 가진 첫 번째 항목만 일치 항목으로 간주되어야 합니다. 동일한 쿼리 매개변수 이름을 가진 후속 항목은 무시되어야 합니다.

HTTP 요청에서 쿼리 매개변수가 반복되는 경우, 서로 다른 데이터 플레인의 기능이 다르기 때문에 의도적으로 동작이 정의되지 않은 상태로 남겨둡니다. 그러나 게이트웨이 API 외부의 다른 부하 분산 컨텍스트에서는 이러한 동작이 예상되므로 데이터 플레인이 지원하는 경우 구현은 매개변수의 첫 번째 값과 일치하도록 하는 것이 좋습니다 .

사용자는 구현상의 잠재적인 차이로부터 자신을 보호하기 위해 반복되는 쿼리 매개변수를 기반으로 트래픽을 라우팅해서는 안 됩니다.

type

string

유형은 쿼리 매개변수 값과 일치하는 방법을 지정합니다.

지원: 확장(정확히)

지원: 구현별(RegularExpression)

RegularExpression QueryParamMatchType은 구현에 따라 특정 규칙을 따르므로 구현에서는 POSIX, PCRE 또는 기타 정규 표현식 방언을 지원할 수 있습니다. 지원되는 방언을 확인하려면 구현 문서를 읽어보세요.

value

string

Value는 일치시킬 HTTP 쿼리 매개변수의 값입니다.

17.1.55. .spec.rules[].timeouts

설명

시간 초과는 HTTP 요청에 대해 구성할 수 있는 시간 초과를 정의합니다.

지원: 확장됨

유형
object
Expand
재산유형설명

backendRequest

string

BackendRequest는 게이트웨이에서 백엔드로 가는 개별 요청에 대한 시간 초과를 지정합니다. 여기에는 게이트웨이에서 요청이 처음 전송된 시간부터 백엔드에서 전체 응답을 수신할 때까지의 시간이 포함됩니다.

시간 초과를 0 기간으로 설정(예: "0s")는 시간 초과를 완전히 비활성화해야 합니다. 타임아웃을 완전히 비활성화할 수 없는 구현은 대신 0 기간을 타임아웃을 설정할 수 있는 가장 긴 값으로 해석해야 합니다.

요청 시간 초과에 의해 처리되는 게이트웨이와의 전체 클라이언트 HTTP 트랜잭션은 예를 들어 자동 재시도가 지원되는 경우 게이트웨이에서 대상 백엔드로의 호출을 두 번 이상 발생시킬 수 있습니다.

BackendRequest의 값은 GEP-2257에서 정의한 Gateway API Duration 문자열이어야 합니다. 이 필드가 지정되지 않으면 동작은 구현에 따라 달라집니다. 지정된 경우 BackendRequest 값은 요청 시간 초과 값보다 클 수 없습니다(요청 시간 초과는 BackendRequest 시간 초과를 포함하기 때문입니다).

지원: 확장됨

요구

string

요청은 게이트웨이가 HTTP 요청에 응답하는 데 걸리는 최대 기간을 지정합니다. 게이트웨이가 이 마감 기한을 맞추기 전에 응답하지 못하면 게이트웨이는 시간 초과 오류를 반환해야 합니다.

예를 들어, HTTPRoute 에서 rules.timeouts.request 필드를 값 10s 로 설정하면 클라이언트 요청이 완료되는 데 10초 이상 걸리는 경우 시간 초과가 발생합니다.

시간 초과를 0 기간으로 설정(예: "0s")는 시간 초과를 완전히 비활성화해야 합니다. 타임아웃을 완전히 비활성화할 수 없는 구현은 대신 0 기간을 타임아웃을 설정할 수 있는 가장 긴 값으로 해석해야 합니다.

이 타임아웃은 가능한 한 전체 요청-응답 트랜잭션을 포괄하도록 설계되었지만, 구현에 따라 클라이언트가 트랜잭션을 시작한 직후가 아니라 전체 요청 스트림을 수신한 후에 타임아웃을 시작하도록 선택할 수도 있습니다.

요청 값은 GEP-2257에서 정의한 Gateway API 기간 문자열입니다. 이 필드가 지정되지 않으면 요청 시간 초과 동작은 구현에 따라 달라집니다.

지원: 확장

17.1.56. .status

설명
상태는 HTTPRoute의 현재 상태를 정의합니다.
유형
object
필수 항목
  • 부모
Expand
속성유형설명

부모

array

상위 리소스(일반적으로 게이트웨이)는 경로와 연결된 상위 리소스 목록 및 각 상위와 관련된 경로의 상태입니다. 이 경로가 상위에 연결되면 컨트롤러가 먼저 경로를 볼 때 상위 목록을 관리하는 컨트롤러에서 해당 경로를 볼 때 해당 목록에 항목을 추가해야 하며 경로 또는 게이트웨이가 수정될 때 항목을 적절하게 업데이트해야 합니다.

이 API의 구현으로 해결할 수 없는 상위 참조는 이 목록에 추가되지 않습니다. 이 API의 구현은 담당하는 Gateways/parent 리소스의 경로 상태만 채울 수 있습니다.

이 목록에 최대 32 개의 게이트웨이가 표시됩니다. 빈 목록은 경로가 게이트웨이에 연결되지 않았음을 의미합니다.

parents[]

object

RouteParentStatus는 관련 상위와 관련하여 경로의 상태를 설명합니다.

17.1.57. .status.parents

설명

상위 리소스(일반적으로 게이트웨이)는 경로와 연결된 상위 리소스 목록 및 각 상위와 관련된 경로의 상태입니다. 이 경로가 상위에 연결되면 컨트롤러가 먼저 경로를 볼 때 상위 목록을 관리하는 컨트롤러에서 해당 경로를 볼 때 해당 목록에 항목을 추가해야 하며 경로 또는 게이트웨이가 수정될 때 항목을 적절하게 업데이트해야 합니다.

이 API의 구현으로 해결할 수 없는 상위 참조는 이 목록에 추가되지 않습니다. 이 API의 구현은 담당하는 Gateways/parent 리소스의 경로 상태만 채울 수 있습니다.

이 목록에 최대 32 개의 게이트웨이가 표시됩니다. 빈 목록은 경로가 게이트웨이에 연결되지 않았음을 의미합니다.

유형
array

17.1.58. .status.parents[]

설명
RouteParentStatus는 관련 상위와 관련하여 경로의 상태를 설명합니다.
유형
object
필수 항목
  • controllerName
  • parentRef
Expand
속성유형설명

conditions

array

conditions는 게이트웨이와 관련된 경로 상태를 설명합니다. 경로의 가용성은 게이트웨이의 자체 상태 조건 및 리스너 상태에도 적용됩니다.

경로의 ParentRef가 이러한 종류의 경로를 지원하는 기존 게이트웨이를 지정하고 게이트웨이의 컨트롤러에 충분한 액세스 권한이 있는 경우 게이트웨이의 컨트롤러에서 경로에 "Accepted" 조건을 설정해야 하며 게이트웨이에서 경로가 수락되었는지 또는 거부되었는지 여부를 나타냅니다.

경로 중 하나 이상이 게이트웨이에 의해 구현되는 경우 경로 "Accepted"로 간주되어야 합니다.

다음과 같은 경우를 포함하여 컨트롤러 가시성 부족으로 인해 "Accepted" 조건이 설정되지 않을 수 있습니다.

* 경로는 존재하지 않는 부모를 나타냅니다. * 경로는 컨트롤러가 지원하지 않는 유형입니다. * 컨트롤러가 액세스할 수 없는 네임스페이스에 있습니다.

conditions[]

object

condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.

controllerName

string

ControllerName은 이 상태를 작성한 컨트롤러의 이름을 나타내는 domain/path 문자열입니다. 이는 GatewayClass의 controllerName 필드에 해당합니다.

Example: "example.net/gateway-controller".

이 필드의 형식은 DOMAIN "/" PATH입니다. 여기서 DOMAIN 및 PATH는 유효한 Kubernetes 이름(https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names)입니다.

컨트롤러는 상태를 작성할 때 이 필드를 채워야 합니다. 컨트롤러는 ControllerName으로 채워진 상태에 대한 항목이 더 이상 필요하지 않을 때 정리되도록 해야 합니다.

parentRef

object

ParentRef는 이 RouteParentStatus 구조가 의 상태를 설명하는 사양의 ParentRef에 해당합니다.

17.1.59. .status.parents[].conditions

설명

conditions는 게이트웨이와 관련된 경로 상태를 설명합니다. 경로의 가용성은 게이트웨이의 자체 상태 조건 및 리스너 상태에도 적용됩니다.

경로의 ParentRef가 이러한 종류의 경로를 지원하는 기존 게이트웨이를 지정하고 게이트웨이의 컨트롤러에 충분한 액세스 권한이 있는 경우 게이트웨이의 컨트롤러에서 경로에 "Accepted" 조건을 설정해야 하며 게이트웨이에서 경로가 수락되었는지 또는 거부되었는지 여부를 나타냅니다.

경로 중 하나 이상이 게이트웨이에 의해 구현되는 경우 경로 "Accepted"로 간주되어야 합니다.

다음과 같은 경우를 포함하여 컨트롤러 가시성 부족으로 인해 "Accepted" 조건이 설정되지 않을 수 있습니다.

  • 경로는 존재하지 않는 부모를 나타냅니다.
  • 경로는 컨트롤러가 지원하지 않는 유형입니다.
  • 경로는 컨트롤러가 액세스할 수 없는 네임스페이스에 있습니다.
유형
array

17.1.60. .status.parents[].conditions[]

설명
condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
속성유형설명

lastTransitionTime

string

lastTransitionTime은 마지막으로 한 상태에서 다른 상태로 전환된 시간입니다. 기본 조건이 변경된 경우여야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

message는 변환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건에 따라 설정된 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 현재 인스턴스 상태와 관련된 조건이 최신 상태가 아닙니다.

reason

string

이유에는 조건의 마지막 전환 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 예상되는 값과 의미를 정의할 수 있으며 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있지 않을 수 있습니다.

status

string

조건의 상태, True, False, 알 수 없음.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

17.1.61. .status.parents[].parentRef

설명
ParentRef는 이 RouteParentStatus 구조가 의 상태를 설명하는 사양의 ParentRef에 해당합니다.
유형
object
필수 항목
  • name
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 지정되지 않은 경우 "gateway.networking.k8s.io"가 유추됩니다. 코어 API 그룹(예: "Service" kind referent의 경우)을 설정하려면 그룹을 명시적으로 ""(빈 문자열)로 설정해야 합니다.

지원: Core

kind

string

이는 일종의 참조입니다.

"Core" 지원이 포함된 두 가지 종류의 상위 리소스가 있습니다.

* 게이트웨이 (Gateway 적합성 프로파일) * 서비스 (Mesh 적합성 프로파일, ClusterIP 서비스 만 해당)

다른 리소스에 대한 지원은 Implementation-Specific입니다.

name

string

이름은 참조의 이름입니다.

지원: Core

네임스페이스

string

네임스페이스는 참조의 네임스페이스입니다. 지정되지 않은 경우 경로의 로컬 네임스페이스를 나타냅니다.

네임스페이스 경계를 통과하는 ParentRefs에 대한 특정 규칙이 있습니다. 네임스페이스 간 참조는 참조하는 네임스페이스의 항목에서 명시적으로 허용되는 경우에만 유효합니다. 예를 들어 게이트웨이에는 AllowedRoutes 필드가 있으며 ReferenceGrant는 다른 종류의 네임스페이스를 활성화하는 일반적인 방법을 제공합니다.

지원: Core

port

integer

port는 이 경로가 대상으로 하는 네트워크 포트입니다. 상위 리소스 유형에 따라 다르게 해석될 수 있습니다.

상위 리소스가 게이트웨이인 경우 이러한 종류의 경로도 지원하는 지정된 포트에서 수신 대기 중인 모든 리스너를 대상으로 하고 이 경로를 선택합니다. 경로에 지정된 네트워킹 동작을 포트를 변경할 수 있는 리스너와 달리 특정 포트에 적용해야 하는 경우를 제외하고 Port 를 설정하지 않는 것이 좋습니다. Port 및 sectionName을 둘 다 지정하면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 상위 리소스를 지원하도록 선택할 수 있습니다. 다른 유형의 상위 리소스를 지원하는 구현은 Port가 해석되는 방법을 명확하게 문서화해야 합니다.

상태를 위해 상위 리소스에서 부분적으로 수락하면 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: 확장

sectionName

string

sectionName은 대상 리소스에 있는 섹션의 이름입니다. 다음 리소스에서 sectionName은 다음과 같이 해석됩니다.

* 게이트웨이: 리스너 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다. * 서비스: 포트 이름입니다. Port(experimental) 및 sectionName이 모두 지정되면 선택한 리스너의 이름과 포트가 지정된 두 값과 일치해야 합니다.

구현은 다른 리소스에 경로 연결을 지원하도록 선택할 수 있습니다. 이 경우 sectionName을 해석하는 방법을 명확하게 문서화해야 합니다.

지정되지 않은 경우(빈 문자열) 전체 리소스를 참조합니다. 상태의 목적을 위해 부모 리소스의 하나 이상의 섹션에서 이를 수락하는 경우 첨부 파일이 성공한 것으로 간주됩니다. 예를 들어 게이트웨이 리스너는 경로 종류, 네임스페이스 또는 호스트 이름을 통해 연결할 수 있는 경로를 제한할 수 있습니다. 2개 중 1개의 게이트웨이 리스너가 참조 경로의 첨부 파일을 수락하는 경우 경로는 성공적으로 연결된 것으로 간주해야 합니다. 게이트웨이 리스너가 이 경로의 첨부 파일을 수락하지 않으면 게이트웨이에서 경로를 분리하는 것으로 간주해야 합니다.

지원: Core

17.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/gateway.networking.k8s.io/v1/httproutes

    • GET: 종류의 HTTPRoute 오브젝트 나열
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/httproutes

    • DELETE: HTTPRoute 컬렉션 삭제
    • GET: 종류의 HTTPRoute 오브젝트 나열
    • POST: HTTPRoute를 생성
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/httproutes/{name}

    • DELETE: HTTPRoute 삭제
    • GET: 지정된 HTTPRoute를 읽습니다.
    • PATCH: 지정된 HTTPRoute를 부분적으로 업데이트
    • PUT: 지정된 HTTPRoute로 교체
  • /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/httproutes/{name}/status

    • GET: 지정된 HTTPRoute의 읽기 상태
    • PATCH: 지정된 HTTPRoute의 부분 업데이트 상태
    • PUT: 지정된 HTTPRoute의 상태

17.2.1. /apis/gateway.networking.k8s.io/v1/httproutes

HTTP 방법
GET
설명
종류의 HTTPRoute 오브젝트 나열
Expand
표 17.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRouteList schema

401 - 무단

17.2.2. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/httproutes

HTTP 방법
DELETE
설명
HTTPRoute 컬렉션 삭제
Expand
표 17.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
종류의 HTTPRoute 오브젝트 나열
Expand
표 17.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRouteList schema

401 - 무단

HTTP 방법
POST
설명
HTTPRoute 생성
Expand
표 17.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 17.5. 본문 매개변수
매개변수유형설명

body

HTTPRoute 스키마

 
Expand
표 17.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRoute 스키마

201 - 생성됨

HTTPRoute 스키마

202 - 승인됨

HTTPRoute 스키마

401 - 무단

17.2.3. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/httproutes/{name}

Expand
표 17.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

HTTPRoute의 이름

HTTP 방법
DELETE
설명
HTTPRoute 삭제
Expand
표 17.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 17.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 HTTPRoute 읽기
Expand
표 17.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRoute 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 HTTPRoute를 부분적으로 업데이트
Expand
표 17.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 17.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRoute 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 HTTPRoute를 교체합니다.
Expand
표 17.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 17.14. 본문 매개변수
매개변수유형설명

body

HTTPRoute 스키마

 
Expand
표 17.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRoute 스키마

201 - 생성됨

HTTPRoute 스키마

401 - 무단

17.2.4. /apis/gateway.networking.k8s.io/v1/namespaces/{namespace}/httproutes/{name}/status

Expand
표 17.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

HTTPRoute의 이름

HTTP 방법
GET
설명
지정된 HTTPRoute의 상태 확인
Expand
표 17.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRoute 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 HTTPRoute의 상태를 부분적으로 업데이트
Expand
표 17.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 17.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRoute 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 HTTPRoute의 상태 교체
Expand
표 17.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 17.21. 본문 매개변수
매개변수유형설명

body

HTTPRoute 스키마

 
Expand
표 17.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

HTTPRoute 스키마

201 - 생성됨

HTTPRoute 스키마

401 - 무단

18장. Ingress [networking.k8s.io/v1]

설명
Ingress는 인바운드 연결이 백엔드에서 정의한 엔드포인트에 도달할 수 있도록 하는 규칙 컬렉션입니다. 외부에서 접근할 수 있는 URL, 로드 밸런싱 트래픽, SSL 종료, 이름 기반 가상 호스팅 등을 제공하도록 Ingress를 구성할 수 있습니다.
유형
object

18.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

IngressSpec은 사용자가 원하는 Ingress를 설명합니다.

status

object

IngressStatus는 Ingress의 현재 상태를 설명합니다.

18.1.1. .spec

설명
IngressSpec은 사용자가 원하는 Ingress를 설명합니다.
유형
object
Expand
속성유형설명

defaultBackend

object

IngressBackend는 지정된 서비스 및 포트의 모든 끝점을 설명합니다.

ingressClassName

string

ingressClassName은 IngressClass 클러스터 리소스의 이름입니다. Ingress 컨트롤러 구현에서는 이 필드를 사용하여 전송 연결(controller → IngressClass → Ingress 리소스)을 통해 이 Ingress 리소스를 제공해야 하는지 여부를 확인합니다. kubernetes.io/ingress.class 주석(간단한 상수 이름)은 공식적으로 정의되지 않았지만 Ingress 컨트롤러에서 Ingress 컨트롤러와 Ingress 리소스 간의 직접 바인딩을 생성하는 것이 널리 지원되었습니다. 새로 생성된 Ingress 리소스는 필드를 사용하는 것이 좋습니다. 그러나 이전 버전과의 호환성을 위해 주석이 공식적으로 더 이상 사용되지 않지만 Ingress 컨트롤러는 있는 경우 해당 주석을 계속 준수해야 합니다.

규칙

array

규칙은 Ingress를 구성하는 데 사용되는 호스트 규칙 목록입니다. 지정되지 않았거나 규칙이 일치하지 않으면 모든 트래픽이 기본 백엔드로 전송됩니다.

rules[]

object

IngressRule은 지정된 호스트의 경로를 관련 백엔드 서비스에 매핑하는 규칙을 나타냅니다. 들어오는 요청은 먼저 호스트 일치에 대해 평가된 다음 일치하는 IngressRuleValue와 연결된 백엔드로 라우팅됩니다.

tls

array

TLS는 TLS 구성을 나타냅니다. 현재 Ingress는 단일 TLS 포트 443만 지원합니다. 이 목록의 여러 멤버가 다른 호스트를 지정하는 경우 수신 컨트롤러가 SNI를 지원하는 경우 SNI TLS 확장을 통해 지정된 호스트 이름에 따라 동일한 포트에서 멀티플렉싱됩니다.

tls[]

object

IngressTLS는 수신과 관련된 전송 계층 보안을 설명합니다.

18.1.2. .spec.defaultBackend

설명
IngressBackend는 지정된 서비스 및 포트의 모든 끝점을 설명합니다.
유형
object
Expand
속성유형설명

resource

TypedLocalObjectReference

resource는 Ingress 오브젝트의 네임스페이스에 있는 다른 Kubernetes 리소스에 대한 ObjectRef입니다. 리소스가 지정된 경우 service.Name 및 service.Port를 지정할 수 없습니다. 이는 "Service"와 함께 사용할 수 있는 설정입니다.

서비스

object

IngressServiceBackend는 Kubernetes 서비스를 백엔드로 참조합니다.

18.1.3. .spec.defaultBackend.service

설명
IngressServiceBackend는 Kubernetes 서비스를 백엔드로 참조합니다.
유형
object
필수 항목
  • name
Expand
속성유형설명

name

string

name은 참조된 서비스입니다. 서비스는 Ingress 오브젝트와 동일한 네임스페이스에 있어야 합니다.

port

object

ServiceBackendPort는 참조 중인 서비스 포트입니다.

18.1.4. .spec.defaultBackend.service.port

설명
ServiceBackendPort는 참조 중인 서비스 포트입니다.
유형
object
Expand
속성유형설명

name

string

name은 서비스에 있는 포트의 이름입니다. 이는 "Number"와 함께 상호 배타적인 설정입니다.

number

integer

number는 서비스의 숫자 포트 번호(예: 80)입니다. 이는 "Name"과 함께 사용할 수 있는 설정입니다.

18.1.5. .spec.rules

설명
규칙은 Ingress를 구성하는 데 사용되는 호스트 규칙 목록입니다. 지정되지 않았거나 규칙이 일치하지 않으면 모든 트래픽이 기본 백엔드로 전송됩니다.
유형
array

18.1.6. .spec.rules[]

설명
IngressRule은 지정된 호스트의 경로를 관련 백엔드 서비스에 매핑하는 규칙을 나타냅니다. 들어오는 요청은 먼저 호스트 일치에 대해 평가된 다음 일치하는 IngressRuleValue와 연결된 백엔드로 라우팅됩니다.
유형
object
Expand
속성유형설명

host

string

host는 RFC 3986에 정의된 네트워크 호스트의 정규화된 도메인 이름입니다. RFC 3986: 1에 정의된 URI의 "호스트" 부분에서의 다음 편차에 유의하십시오. IP는 허용되지 않습니다. 현재 IngressRuleValue는 상위 Ingress 사양의 IP에만 적용할 수 있습니다. 2. 포트가 허용되지 않기 때문에 구분 기호는 보장되지 않습니다. 현재 Ingress의 포트는 https의 경우 http 및 :443의 경우 암시적으로 :80입니다. 이 두 가지는 나중에 변경될 수 있습니다. IngressRuleValue 전에 들어오는 요청은 호스트와 일치됩니다. 호스트를 지정하지 않으면 Ingress는 지정된 IngressRuleValue를 기반으로 모든 트래픽을 라우팅합니다.

호스트는 네트워크 호스트의 종료점(예: "foo.bar.com") 또는 "wildcard"(예: ".foo.foo.com")로 접두사가 지정된 도메인 이름 없이 도메인 이름인 "precise"일 수 있습니다. 와일드카드 문자 ''는 그 자체로 첫 번째 DNS 레이블로 표시되어야 하며 단일 레이블과 일치해야 합니다. 와일드카드 레이블 자체(예: Host == "*")를 포함할 수 없습니다. 요청은 다음과 같은 방식으로 Host 필드와 일치됩니다. 1. host가 정확하면 http 호스트 헤더가 Host와 같은 경우 요청이 이 규칙과 일치합니다. 2. host가 와일드카드인 경우 http 호스트 헤더가 와일드카드 규칙의 접미사(첫 번째 레이블 제거)와 같은 경우 요청은 이 규칙과 일치합니다.

http

object

HTTPIngressRuleValue는 백엔드를 가리키는 http 선택기 목록입니다. 예제에서 http://<host>/<path>?<searchpart > → URL의 일부가 RFC 3986에 해당하는 백엔드에서 이 리소스는 마지막 '/' 이후의 모든 항목과 일치시키는 데 사용됩니다.

18.1.7. .spec.rules[].http

설명
HTTPIngressRuleValue는 백엔드를 가리키는 http 선택기 목록입니다. 예제에서 http://<host>/<path>?<searchpart > → URL의 일부가 RFC 3986에 해당하는 백엔드에서 이 리소스는 마지막 '/' 이후의 모든 항목과 일치시키는 데 사용됩니다.
유형
object
필수 항목
  • 경로
Expand
속성유형설명

경로

array

경로는 요청을 백엔드에 매핑하는 경로 컬렉션입니다.

paths[]

object

HTTPIngressPath는 경로를 백엔드와 연결합니다. 경로와 일치하는 들어오는 URL은 백엔드로 전달됩니다.

18.1.8. .spec.rules[].http.paths

설명
경로는 요청을 백엔드에 매핑하는 경로 컬렉션입니다.
유형
array

18.1.9. .spec.rules[].http.paths[]

설명
HTTPIngressPath는 경로를 백엔드와 연결합니다. 경로와 일치하는 들어오는 URL은 백엔드로 전달됩니다.
유형
object
필수 항목
  • pathType
  • 백엔드
Expand
속성유형설명

백엔드

object

IngressBackend는 지정된 서비스 및 포트의 모든 끝점을 설명합니다.

path

string

경로는 들어오는 요청 경로와 일치합니다. 현재 RFC 3986에서 정의한 URL의 기존 "path" 부분에서 허용되지 않은 문자를 포함할 수 있습니다. 경로는 '/'로 시작해야 하며 값 "Exact" 또는 "Prefix"와 함께 PathType을 사용할 때 존재해야 합니다.

pathType

string

pathType은 일치하는 경로의 해석을 결정합니다. pathType은 다음 값 중 하나일 수 있습니다. * Exact: URL 경로가 정확히 일치합니다. * 접두사: '/'로 분할되는 URL 경로 접두사에 따라 일치합니다. 일치는 요소별로 경로 요소에 따라 수행됩니다. 경로 요소는 경로의 레이블 목록을 '/' 구분 기호로 나눈 값입니다. 요청은 모든 p가 요청 경로 p의 element-wise 접두사인 경우 경로 p에 대한 일치입니다. 경로의 마지막 요소가 요청 경로의 마지막 요소의 하위 요소인 경우 일치하는 항목이 아닙니다(예: /foo/bar/baz와 /foo/bar/baz와 일치하지만 /foo/barbaz와 일치하지 않음). * ImplementationSpecific: 경로 일치의 상호 운용성은 IngressClass에 따라 다릅니다. 구현은 이를 별도의 PathType으로 처리하거나 Prefix 또는 Exact 경로 유형과 동일하게 처리할 수 있습니다. 구현은 모든 경로 유형을 지원하는 데 필요합니다.

가능한 enum 값: - "Exact" 는 URL 경로와 대소문자를 정확히 일치시킵니다. - "ImplementationSpecific" 일치는 IngressClass까지입니다. 구현은 이를 별도의 PathType으로 처리하거나 Prefix 또는 Exact 경로 유형과 동일하게 처리할 수 있습니다. - "Prefix" 는 '/'로 분할되는 URL 경로 접두사를 기반으로 일치합니다. 일치는 대소문자를 구분하고 요소별로 경로 요소에서 수행됩니다. path 요소는 경로의 레이블 목록을 '/' 구분 기호로 나눕니다. 요청은 모든 p가 요청 경로 p의 element-wise 접두사인 경우 경로 p에 대한 일치입니다. 경로의 마지막 요소가 요청 경로의 마지막 요소의 하위 요소인 경우 일치하는 항목이 아닙니다(예: /foo/bar/baz와 /foo/bar/baz와 일치하지만 /foo/barbaz와 일치하지 않음). Ingress 사양에 일치하는 경로가 여러 개 있는 경우 가장 긴 일치 경로가 우선순위가 부여됩니다. 예: - /foo/barbar does not match requests to /foo/baraz - /foo/bar /foo/bar matches request to /foo/bar/baz - /foo 및 /foo/ 두 항목 모두 /foo 및 /foo/에 대한 요청을 일치시킵니다. Ingress 사양에 두 경로가 모두 있는 경우 가장 긴 일치 경로(/foo/)가 우선 순위가 지정됩니다.

18.1.10. .spec.rules[].http.paths[].backend

설명
IngressBackend는 지정된 서비스 및 포트의 모든 끝점을 설명합니다.
유형
object
Expand
속성유형설명

resource

TypedLocalObjectReference

resource는 Ingress 오브젝트의 네임스페이스에 있는 다른 Kubernetes 리소스에 대한 ObjectRef입니다. 리소스가 지정된 경우 service.Name 및 service.Port를 지정할 수 없습니다. 이는 "Service"와 함께 사용할 수 있는 설정입니다.

서비스

object

IngressServiceBackend는 Kubernetes 서비스를 백엔드로 참조합니다.

18.1.11. .spec.rules[].http.paths[].backend.service

설명
IngressServiceBackend는 Kubernetes 서비스를 백엔드로 참조합니다.
유형
object
필수 항목
  • name
Expand
속성유형설명

name

string

name은 참조된 서비스입니다. 서비스는 Ingress 오브젝트와 동일한 네임스페이스에 있어야 합니다.

port

object

ServiceBackendPort는 참조 중인 서비스 포트입니다.

18.1.12. .spec.rules[].http.paths[].backend.service.port

설명
ServiceBackendPort는 참조 중인 서비스 포트입니다.
유형
object
Expand
속성유형설명

name

string

name은 서비스에 있는 포트의 이름입니다. 이는 "Number"와 함께 상호 배타적인 설정입니다.

number

integer

number는 서비스의 숫자 포트 번호(예: 80)입니다. 이는 "Name"과 함께 사용할 수 있는 설정입니다.

18.1.13. .spec.tls

설명
TLS는 TLS 구성을 나타냅니다. 현재 Ingress는 단일 TLS 포트 443만 지원합니다. 이 목록의 여러 멤버가 다른 호스트를 지정하는 경우 수신 컨트롤러가 SNI를 지원하는 경우 SNI TLS 확장을 통해 지정된 호스트 이름에 따라 동일한 포트에서 멀티플렉싱됩니다.
유형
array

18.1.14. .spec.tls[]

설명
IngressTLS는 수신과 관련된 전송 계층 보안을 설명합니다.
유형
object
Expand
속성유형설명

호스트

배열(문자열)

호스트는 TLS 인증서에 포함된 호스트 목록입니다. 이 목록의 값은 tlsSecret에 사용된 name/s와 일치해야 합니다. 지정되지 않은 경우 기본값은 loadbalancer 컨트롤러의 와일드카드 호스트 설정을 통해 이 Ingress를 이행합니다.

secretName

string

secretName은 포트 443에서 TLS 트래픽을 종료하는 데 사용되는 시크릿의 이름입니다. SNI 호스트 이름만으로 TLS 라우팅을 허용하는 필드는 선택 사항입니다. 리스너의 SNI 호스트가 IngressRule에서 사용하는 "Host" 헤더 필드와 충돌하는 경우 SNI 호스트는 종료에 사용되며 "Host" 헤더의 값이 라우팅에 사용됩니다.

18.1.15. .status

설명
IngressStatus는 Ingress의 현재 상태를 설명합니다.
유형
object
Expand
속성유형설명

loadBalancer

object

IngressLoadBalancerStatus는 로드 밸런서의 상태를 나타냅니다.

18.1.16. .status.loadBalancer

설명
IngressLoadBalancerStatus는 로드 밸런서의 상태를 나타냅니다.
유형
object
Expand
속성유형설명

Ingress

array

Ingress는 로드 밸런서에 대한 수신 지점을 포함하는 목록입니다.

ingress[]

object

IngressLoadBalancerIngress는 로드 밸런서 인그레스 지점의 상태를 나타냅니다.

18.1.17. .status.loadBalancer.ingress

설명
Ingress는 로드 밸런서에 대한 수신 지점을 포함하는 목록입니다.
유형
array

18.1.18. .status.loadBalancer.ingress[]

설명
IngressLoadBalancerIngress는 로드 밸런서 인그레스 지점의 상태를 나타냅니다.
유형
object
Expand
속성유형설명

hostname

string

호스트 이름은 DNS 기반 로드 밸런서 인그레스 지점에 대해 설정됩니다.

ip

string

IP는 IP 기반 로드 밸런서 인그레스 지점에 대해 설정됩니다.

포트

array

포트는 이 LoadBalancer에서 노출하는 포트에 대한 정보를 제공합니다.

ports[]

object

IngressPortStatus는 서비스 포트의 오류 조건을 나타냅니다.

18.1.19. .status.loadBalancer.ingress[].ports

설명
포트는 이 LoadBalancer에서 노출하는 포트에 대한 정보를 제공합니다.
유형
array

18.1.20. .status.loadBalancer.ingress[].ports[]

설명
IngressPortStatus는 서비스 포트의 오류 조건을 나타냅니다.
유형
object
필수 항목
  • port
  • 프로토콜
Expand
속성유형설명

error

string

Error is to record the problem with the service port The format of the error should comply with the following rules: - built-in error values should be specified in this file and those must use CamelCase name - cloud provider specific error values must have names that comply with the format foo.example.com/CamelCase.

port

integer

port는 Ingress 포트의 포트 번호입니다.

프로토콜

string

protocol은 Ingress 포트의 프로토콜입니다. 지원되는 값은 "TCP", "UDP", "SCTP"입니다.

가능한 열거 값: - "SCTP" 는 SCTP 프로토콜입니다. - "TCP" 는 TCP 프로토콜입니다. - "UDP" 는 UDP 프로토콜입니다.

18.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/networking.k8s.io/v1/ingresses

    • GET: Ingress 유형의 오브젝트 목록 또는 감시
  • /apis/networking.k8s.io/v1/watch/ingresses

    • GET: 더 이상 사용되지 않는 Ingress 목록에 대한 개별 변경 사항을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses

    • DELETE: Ingress의 컬렉션 삭제
    • GET: Ingress 유형의 오브젝트 목록 또는 감시
    • POST: Ingress 생성
  • /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses

    • GET: 더 이상 사용되지 않는 Ingress 목록에 대한 개별 변경 사항을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}

    • DELETE: Ingress 삭제
    • GET: 지정된 Ingress 읽기
    • PATCH: 지정된 Ingress를 부분적으로 업데이트
    • PUT: 지정된 Ingress를 교체
  • /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses/{name}

    • GET: 더 이상 사용되지 않는 종류의 오브젝트를 감시합니다. 대신 'fieldSelector' 매개변수가 있는 단일 항목으로 필터링된 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status

    • GET: 지정된 Ingress의 읽기 상태
    • PATCH: 지정된 Ingress의 부분 업데이트 상태
    • PUT: 지정된 Ingress의 상태

18.2.1. /apis/networking.k8s.io/v1/ingresses

HTTP 방법
GET
설명
Ingress 유형의 오브젝트 나열 또는 감시
Expand
표 18.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IngressList 스키마

401 - 무단

18.2.2. /apis/networking.k8s.io/v1/watch/ingresses

HTTP 방법
GET
설명
더 이상 사용되지 않는 Ingress 목록에 대한 개별 변경 사항을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
Expand
표 18.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

18.2.3. /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses

HTTP 방법
DELETE
설명
Ingress 컬렉션 삭제
Expand
표 18.3. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 18.4. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
Ingress 유형의 오브젝트 나열 또는 감시
Expand
표 18.5. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IngressList 스키마

401 - 무단

HTTP 방법
POST
설명
Ingress 생성
Expand
표 18.6. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 18.7. 본문 매개변수
매개변수유형설명

body

Ingress 스키마

 
Expand
표 18.8. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Ingress 스키마

201 - 생성됨

Ingress 스키마

202 - 승인됨

Ingress 스키마

401 - 승인되지 않음

비어 있는

18.2.4. /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses

HTTP 방법
얻다
설명
Ingress 목록의 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 18.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

18.2.5. /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}

Expand
표 18.10. 글로벌 경로 매개변수
매개변수유형설명

name

string

Ingress의 이름

HTTP 방법
DELETE
설명
Ingress 삭제
Expand
표 18.11. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 18.12. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 Ingress를 읽습니다
Expand
표 18.13. HTTP 응답
HTTP 코드응답 본문

200 - 확인

Ingress 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 Ingress를 부분적으로 업데이트
Expand
표 18.14. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 18.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Ingress 스키마

201 - 생성됨

Ingress 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 Ingress 교체
Expand
표 18.16. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 18.17. 본문 매개변수
매개변수유형설명

body

Ingress 스키마

 
Expand
표 18.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Ingress 스키마

201 - 생성됨

Ingress 스키마

401 - 무단

18.2.6. /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/ingresses/{name}

Expand
표 18.19. 글로벌 경로 매개변수
매개변수유형설명

name

string

Ingress의 이름

HTTP 방법
GET
설명
더 이상 사용되지 않는 종류의 오브젝트를 감시합니다. 대신 'fieldSelector' 매개변수가 있는 단일 항목으로 필터링된 목록 작업과 함께 'watch' 매개변수를 사용합니다.
Expand
표 18.20. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

18.2.7. /apis/networking.k8s.io/v1/namespaces/{namespace}/ingresses/{name}/status

Expand
표 18.21. 글로벌 경로 매개변수
매개변수유형설명

name

string

Ingress의 이름

HTTP 방법
GET
설명
지정된 Ingress의 읽기 상태
Expand
표 18.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Ingress 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 Ingress의 부분적으로 업데이트 상태
Expand
표 18.23. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 18.24. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Ingress 스키마

201 - 생성됨

Ingress 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 Ingress의 상태 교체
Expand
표 18.25. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 18.26. 본문 매개변수
매개변수유형설명

body

Ingress 스키마

 
Expand
표 18.27. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Ingress 스키마

201 - 생성됨

Ingress 스키마

401 - 무단

19장. IngressClass [networking.k8s.io/v1]

설명
IngressClass는 Ingress Spec에서 참조하는 Ingress의 클래스를 나타냅니다. ingressclass.kubernetes.io/is-default-class 주석을 사용하여 IngressClass를 기본값으로 간주해야 함을 나타낼 수 있습니다. 단일 IngressClass 리소스에 이 주석이 true로 설정되면 클래스가 지정되지 않은 새 Ingress 리소스에 이 기본 클래스가 할당됩니다.
유형
object

19.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

IngressClassSpec은 Ingress의 클래스에 대한 정보를 제공합니다.

19.1.1. .spec

설명
IngressClassSpec은 Ingress의 클래스에 대한 정보를 제공합니다.
유형
object
Expand
속성유형설명

컨트롤러

string

컨트롤러는 이 클래스를 처리해야 하는 컨트롤러의 이름을 나타냅니다. 이렇게 하면 동일한 컨트롤러에서 제어하는 다른 "flavors"가 허용됩니다. 예를 들어 동일한 구현 컨트롤러에 대한 매개변수가 다를 수 있습니다. 이는 "acme.io/ingress-controller"와 같이 250자를 초과할 수 없는 도메인 접두사 경로로 지정해야 합니다. 이 필드는 변경할 수 없습니다.

parameters

object

IngressClassParametersReference는 API 오브젝트를 식별합니다. 클러스터 또는 네임스페이스 범위 리소스를 지정하는 데 사용할 수 있습니다.

19.1.2. .spec.parameters

설명
IngressClassParametersReference는 API 오브젝트를 식별합니다. 클러스터 또는 네임스페이스 범위 리소스를 지정하는 데 사용할 수 있습니다.
유형
object
필수 항목
  • kind
  • name
Expand
속성유형설명

apiGroup

string

apiGroup은 참조 중인 리소스의 그룹입니다. APIGroup을 지정하지 않으면 지정된Kind이 코어 API 그룹에 있어야 합니다. 다른 타사 유형의 경우 APIGroup이 필요합니다.

kind

string

kind는 참조되는 리소스 유형입니다.

name

string

name은 참조 중인 리소스의 이름입니다.

네임스페이스

string

네임스페이스는 참조 중인 리소스의 네임스페이스입니다. 이 필드는 범위가 "Namespace"로 설정될 때 필요하며 범위가 "Cluster"로 설정된 경우 설정되지 않아야 합니다.

scope

string

범위는 클러스터 또는 네임스페이스 범위 리소스를 참조하는지 여부를 나타냅니다. 이는 "Cluster"(기본값) 또는 "Namespace"로 설정할 수 있습니다.

19.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/networking.k8s.io/v1/ingressclasses

    • DELETE : IngressClass 컬렉션 삭제
    • GET : IngressClass 종류의 객체를 나열하거나 감시합니다.
    • POST : IngressClass 생성
  • /apis/networking.k8s.io/v1/watch/ingressclasses

    • GET : IngressClass 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
  • /apis/networking.k8s.io/v1/ingressclasses/{name}

    • DELETE : IngressClass 삭제
    • GET : 지정된 IngressClass를 읽습니다.
    • PATCH : 지정된 IngressClass를 부분적으로 업데이트합니다.
    • PUT : 지정된 IngressClass를 교체합니다.
  • /apis/networking.k8s.io/v1/watch/ingressclasses/{name}

    • GET : IngressClass 종류의 객체에 대한 변경 사항을 감시합니다. 더 이상 사용하지 마세요: 대신 'watch' 매개변수를 목록 작업과 함께 사용하고, 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.

19.2.1. /apis/networking.k8s.io/v1/ingressclasses

HTTP 방법
DELETE
설명
IngressClass 컬렉션 삭제
Expand
표 19.1. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 19.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
IngressClass 종류의 객체를 나열하거나 감시합니다.
Expand
표 19.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

IngressClassList 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
IngressClass를 생성하세요
Expand
표 19.4. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 19.5. 신체 매개변수
매개변수유형설명

body

IngressClass 스키마

 
Expand
표 19.6. HTTP 응답
HTTP 코드응답 본문

200 - 확인

IngressClass 스키마

201 - 생성됨

IngressClass 스키마

202 - 승인됨

IngressClass 스키마

401 - 승인되지 않음

비어 있는

19.2.2. /apis/networking.k8s.io/v1/watch/ingressclasses

HTTP 방법
얻다
설명
IngressClass 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 19.7. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

19.2.3. /apis/networking.k8s.io/v1/ingressclasses/{name}

Expand
표 19.8. 글로벌 경로 매개변수
매개변수유형설명

name

string

IngressClass의 이름

HTTP 방법
DELETE
설명
IngressClass 삭제
Expand
표 19.9. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 19.10. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 IngressClass를 읽습니다
Expand
표 19.11. HTTP 응답
HTTP 코드응답 본문

200 - 확인

IngressClass 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 IngressClass를 부분적으로 업데이트합니다.
Expand
표 19.12. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 19.13. HTTP 응답
HTTP 코드응답 본문

200 - 확인

IngressClass 스키마

201 - 생성됨

IngressClass 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 IngressClass를 교체합니다
Expand
표 19.14. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 19.15. 신체 매개변수
매개변수유형설명

body

IngressClass 스키마

 
Expand
표 19.16. HTTP 응답
HTTP 코드응답 본문

200 - 확인

IngressClass 스키마

201 - 생성됨

IngressClass 스키마

401 - 승인되지 않음

비어 있는

19.2.4. /apis/networking.k8s.io/v1/watch/ingressclasses/{name}

Expand
표 19.17. 글로벌 경로 매개변수
매개변수유형설명

name

string

IngressClass의 이름

HTTP 방법
얻다
설명
IngressClass 종류의 객체에 대한 변경 사항을 감시합니다. 더 이상 사용하지 마세요. 대신 'watch' 매개변수를 목록 작업과 함께 사용하고, 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.
Expand
표 19.18. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

20장. IPAMClaim [k8s.cni.cncf.io/v1alpha1]

설명
IPAMClaim은 IPAMClaim API의 스키마입니다.
유형
object

20.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

 

status

object

 

20.1.1. .spec

설명
유형
object
필수 항목
  • 인터페이스
  • network
Expand
속성유형설명

인터페이스

string

이 할당이 생성된 Pod 인터페이스 이름입니다.

network

string

이 영구 할당이 생성된 네트워크 이름

20.1.2. .status

설명
유형
object
필수 항목
  • ips
Expand
속성유형설명

ips

배열(문자열)

Pod 인터페이스에 할당된 IP 주소 목록(v4, v6)

20.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.cni.cncf.io/v1alpha1/ipamclaims

    • GET: 종류의 IPAMClaim 오브젝트 나열
  • /apis/k8s.cni.cncf.io/v1alpha1/namespaces/{namespace}/ipamclaims

    • DELETE: IPAMClaim의 컬렉션 삭제
    • GET: 종류의 IPAMClaim 오브젝트 나열
    • POST: IPAMClaim 생성
  • /apis/k8s.cni.cncf.io/v1alpha1/namespaces/{namespace}/ipamclaims/{name}

    • DELETE: IPAMClaim 삭제
    • GET: 지정된 IPAMClaim 읽기
    • PATCH: 지정된 IPAMClaim을 부분적으로 업데이트
    • PUT: 지정된 IPAMClaim을 교체
  • /apis/k8s.cni.cncf.io/v1alpha1/namespaces/{namespace}/ipamclaims/{name}/status

    • GET: 지정된 IPAMClaim의 읽기 상태
    • PATCH: 지정된 IPAMClaim의 부분적으로 업데이트 상태
    • PUT: 지정된 IPAMClaim의 상태

20.2.1. /apis/k8s.cni.cncf.io/v1alpha1/ipamclaims

HTTP 방법
GET
설명
IPAMClaim 유형의 오브젝트 나열
Expand
표 20.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaimList 스키마

401 - 무단

20.2.2. /apis/k8s.cni.cncf.io/v1alpha1/namespaces/{namespace}/ipamclaims

HTTP 방법
DELETE
설명
IPAMClaim 컬렉션 삭제
Expand
표 20.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
IPAMClaim 유형의 오브젝트 나열
Expand
표 20.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaimList 스키마

401 - 무단

HTTP 방법
POST
설명
IPAMClaim 생성
Expand
표 20.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 20.5. 본문 매개변수
매개변수유형설명

body

IPAMClaim 스키마

 
Expand
표 20.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaim 스키마

201 - 생성됨

IPAMClaim 스키마

202 - 승인됨

IPAMClaim 스키마

401 - 무단

20.2.3. /apis/k8s.cni.cncf.io/v1alpha1/namespaces/{namespace}/ipamclaims/{name}

Expand
표 20.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

IPAMClaim의 이름

HTTP 방법
DELETE
설명
IPAMClaim 삭제
Expand
표 20.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 20.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 IPAMClaim 읽기
Expand
표 20.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaim 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 IPAMClaim을 부분적으로 업데이트
Expand
표 20.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 20.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaim 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 IPAMClaim을 교체
Expand
표 20.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 20.14. 본문 매개변수
매개변수유형설명

body

IPAMClaim 스키마

 
Expand
표 20.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaim 스키마

201 - 생성됨

IPAMClaim 스키마

401 - 무단

20.2.4. /apis/k8s.cni.cncf.io/v1alpha1/namespaces/{namespace}/ipamclaims/{name}/status

Expand
표 20.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

IPAMClaim의 이름

HTTP 방법
GET
설명
지정된 IPAMClaim의 상태 보기
Expand
표 20.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaim 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 IPAMClaim의 부분 업데이트 상태
Expand
표 20.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 20.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaim 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 IPAMClaim의 상태 교체
Expand
표 20.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 20.21. 본문 매개변수
매개변수유형설명

body

IPAMClaim 스키마

 
Expand
표 20.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPAMClaim 스키마

201 - 생성됨

IPAMClaim 스키마

401 - 무단

21장. IPPool [whereabouts.cni.cncf.io/v1alpha1]

설명
IPPool은 ippools API의 스키마입니다.
유형
object

21.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

IPPoolSpec은 원하는 IPPool 상태를 정의합니다.

21.1.1. .spec

설명
IPPoolSpec은 원하는 IPPool 상태를 정의합니다.
유형
object
필수 항목
  • 할당
  • 범위
Expand
속성유형설명

할당

object

할당은 지정된 범위에 할당된 IP 세트입니다. 해당 인덱스의 인덱스는 풀 범위에 대해 동일한 index/offset를 사용하여 IP에 직접 매핑됩니다.

할당{}

object

IPAllocation은 특정 IP의 pod/container 소유자에 대한 메타데이터를 나타냅니다.

범위

string

범위는 CIDR 표기법의 IP 주소 및 접두사 길이를 나타내는 RFC 4632/4291-style 문자열입니다.

21.1.2. .spec.allocations

설명
할당은 지정된 범위에 할당된 IP 세트입니다. 해당 인덱스의 인덱스는 풀 범위에 대해 동일한 index/offset를 사용하여 IP에 직접 매핑됩니다.
유형
object

21.1.3. .spec.allocations{}

설명
IPAllocation은 특정 IP의 pod/container 소유자에 대한 메타데이터를 나타냅니다.
유형
object
필수 항목
  • id
  • podref
Expand
속성유형설명

id

string

 

ifname

string

 

podref

string

 

21.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/whereabouts.cni.cncf.io/v1alpha1/ippools

    • GET: 종류 IPPool의 오브젝트 나열
  • /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/ippools

    • DELETE: IPPool의 컬렉션 삭제
    • GET: 종류 IPPool의 오브젝트 나열
    • POST: IPPool 생성
  • /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/ippools/{name}

    • DELETE: IPPool 삭제
    • GET: 지정된 IPPool 읽기
    • PATCH: 지정된 IPPool을 부분적으로 업데이트
    • PUT: 지정된 IPPool을 교체

21.2.1. /apis/whereabouts.cni.cncf.io/v1alpha1/ippools

HTTP 방법
GET
설명
종류 IPPool의 오브젝트 나열
Expand
표 21.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPPoolList 스키마

401 - 무단

21.2.2. /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/ippools

HTTP 방법
DELETE
설명
IPPool 컬렉션 삭제
Expand
표 21.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
종류 IPPool의 오브젝트 나열
Expand
표 21.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPPoolList 스키마

401 - 무단

HTTP 방법
POST
설명
IPPool 생성
Expand
표 21.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 21.5. 신체 매개변수
매개변수유형설명

body

IPPool 스키마

 
Expand
표 21.6. HTTP 응답
HTTP 코드응답 본문

200 - 확인

IPPool 스키마

201 - 생성됨

IPPool 스키마

202 - 승인됨

IPPool 스키마

401 - 승인되지 않음

비어 있는

21.2.3. /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/ippools/{name}

Expand
표 21.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

IPPool의 이름

HTTP 방법
DELETE
설명
IPPool 삭제
Expand
표 21.8. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 21.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 IPPool을 읽습니다
Expand
표 21.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPPool 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 IPPool을 부분적으로 업데이트
Expand
표 21.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 21.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPPool 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 IPPool을 바꿉니다.
Expand
표 21.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 21.14. 본문 매개변수
매개변수유형설명

body

IPPool 스키마

 
Expand
표 21.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

IPPool 스키마

201 - 생성됨

IPPool 스키마

401 - 무단

22장. MultiNetworkPolicy [k8s.cni.cncf.io/v1beta1]

설명
MultiNetworkPolicy는 네트워크 Plumbing Working Group에서 지정하는 net-attach-def에 NetworkPolicy 메커니즘을 제공하는 CRD 스키마입니다. MultiNetworkPolicy는 Kubernetes NetworkPolicy와 동일합니다. https://kubernetes.io/docs/concepts/services-networking/network-policies/ 를 참조하십시오.
유형
object

22.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

이 MultiNetworkPolicy에 대한 원하는 동작의 사양입니다.

22.1.1. .spec

설명
이 MultiNetworkPolicy에 대한 원하는 동작의 사양입니다.
유형
object
필수 항목
  • podSelector
Expand
속성유형설명

egress

array

선택한 Pod에 적용할 송신 규칙 목록입니다. Pod(및 클러스터 정책)를 선택하는 NetworkPolicies가 없거나 트래픽이 Pod와 일치하는 모든 NetworkPolicy 오브젝트에서 하나 이상의 송신 규칙과 일치하는 경우 발신 트래픽이 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 모든 발신 트래픽을 제한하고 선택한 Pod가 기본적으로 격리되도록만 사용됩니다. 이 필드는 1.8의 베타 수준입니다.

egress[]

object

NetworkPolicyEgressRule은 NetworkPolicySpec의 podSelector와 일치하는 Pod가 없는 특정 트래픽 세트를 설명합니다. 트래픽은 포트 및 에 모두 일치해야 합니다. 이 유형은 1.8의 베타 수준입니다.

Ingress

array

선택한 Pod에 적용할 수신 규칙 목록입니다. Pod(및 클러스터 정책)를 선택하는 NetworkPolicies가 없거나 트래픽 소스가 Pod의 로컬 노드인 경우 또는 podSelector가 Pod와 일치하는 모든 NetworkPolicy 오브젝트에서 하나 이상의 수신 규칙과 일치하는 경우 트래픽이 포드에 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 트래픽을 허용하지 않습니다. 선택한 Pod가 기본적으로 격리되도록만 사용됩니다.

ingress[]

object

NetworkPolicyIngressRule은 NetworkPolicySpec의 podSelector와 일치하는 Pod에 허용되는 특정 트래픽 세트를 설명합니다. 트래픽은 포트 및 의 포트와 일치해야 합니다.

podSelector

object

이는 Pod를 선택하는 라벨 선택기입니다. 이 필드는 표준 라벨 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 Pod를 선택합니다. NamespaceSelector도 설정된 경우 전체 NetworkPolicyPeer는 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 정책의 자체 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다.

policyTypes

배열(문자열)

NetworkPolicy와 관련된 규칙 유형 목록입니다. 유효한 옵션은 'Ingress', 'Egress' 또는 'Ingress,Egress'입니다. 이 필드를 지정하지 않으면 Ingress 또는 Egress 규칙의 존재 여부에 따라 기본 설정됩니다. Egress 섹션이 포함된 정책은 Egress에 영향을 미치는 것으로 간주되며, 모든 정책( Ingress 섹션이 포함되어 있는지 여부)은 Ingress에 영향을 미치는 것으로 간주됩니다. 송신 전용 정책을 작성하려면 policyTypes [ 'Egress' ]를 명시적으로 지정해야 합니다. 마찬가지로 송신이 허용되지 않음을 지정하는 정책을 작성하려는 경우 'Egress'를 포함하는 policyTypes 값을 지정해야 합니다(이러한 정책에는 Egress 섹션이 포함되지 않고 기본값은 [Ingress']). 이 필드는 1.8의 베타 수준입니다.

22.1.2. .spec.egress

설명
선택한 Pod에 적용할 송신 규칙 목록입니다. Pod(및 클러스터 정책)를 선택하는 NetworkPolicies가 없거나 트래픽이 Pod와 일치하는 모든 NetworkPolicy 오브젝트에서 하나 이상의 송신 규칙과 일치하는 경우 발신 트래픽이 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 모든 발신 트래픽을 제한하고 선택한 Pod가 기본적으로 격리되도록만 사용됩니다. 이 필드는 1.8의 베타 수준입니다.
유형
array

22.1.3. .spec.egress[]

설명
NetworkPolicyEgressRule은 NetworkPolicySpec의 podSelector와 일치하는 Pod가 없는 특정 트래픽 세트를 설명합니다. 트래픽은 포트 및 에 모두 일치해야 합니다. 이 유형은 1.8의 베타 수준입니다.
유형
object
Expand
속성유형설명

포트

array

발신 트래픽의 대상 포트 목록입니다. 이 목록의 각 항목은 논리 OR를 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 포트와 일치합니다(포트로 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록의 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.

ports[]

object

NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.

다음으로 변경

array

이 규칙에 대해 선택한 포드의 발신 트래픽의 대상 목록입니다. 이 목록의 항목은 논리 OR 작업을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 대상과 일치합니다(대상에 의해 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록에서 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.

to[]

object

NetworkPolicyPeer는 트래픽을 허용하는 피어를 설명합니다. 특정 필드 조합만 허용됩니다.

22.1.4. .spec.egress[].ports

설명
발신 트래픽의 대상 포트 목록입니다. 이 목록의 각 항목은 논리 OR를 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 포트와 일치합니다(포트로 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록의 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.
유형
array

22.1.5. .spec.egress[].ports[]

설명
NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.
유형
object
Expand
속성유형설명

endPort

integer

설정된 경우 정책에서 포트에서 endPort까지의 포트 범위가 허용됨을 나타냅니다. port 필드가 정의되지 않았거나 port 필드가 이름이 지정된 (문자열) 포트로 정의된 경우 이 필드를 정의할 수 없습니다. endPort는 포트보다 크거나 같아야 합니다.

port

integer-or-string

지정된 프로토콜의 포트입니다. Pod에서 숫자 또는 이름이 지정된 포트일 수 있습니다. 이 필드를 제공하지 않으면 모든 포트 이름과 숫자와 일치합니다.

프로토콜

string

트래픽이 일치해야 하는 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

22.1.6. .spec.egress[].to

설명
이 규칙에 대해 선택한 포드의 발신 트래픽의 대상 목록입니다. 이 목록의 항목은 논리 OR 작업을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 대상과 일치합니다(대상에 의해 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록에서 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.
유형
array

22.1.7. .spec.egress[].to[]

설명
NetworkPolicyPeer는 트래픽을 허용하는 피어를 설명합니다. 특정 필드 조합만 허용됩니다.
유형
object
Expand
속성유형설명

ipBlock

object

IPBlock은 특정 IPBlock에 대한 정책을 정의합니다. 이 필드가 설정되면 다른 두 필드도 설정될 수 없습니다.

namespaceSelector

object

클러스터 범위 레이블을 사용하여 네임스페이스를 선택합니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 네임스페이스를 선택합니다. PodSelector도 설정된 경우 NetworkPolicyPeer는 전체적으로 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 NamespaceSelector에서 선택한 네임스페이스의 모든 Pod를 선택합니다.

podSelector

object

이는 Pod를 선택하는 라벨 선택기입니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 포드를 선택합니다. NamespaceSelector도 설정된 경우 NetworkPolicyPeer는 전체적으로 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 정책의 자체 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다.

22.1.8. .spec.egress[].to[].ipBlock

설명
IPBlock은 특정 IPBlock에 대한 정책을 정의합니다. 이 필드가 설정되면 다른 두 필드도 설정될 수 없습니다.
유형
object
필수 항목
  • cidr
Expand
재산유형설명

cidr

string

CIDR은 IP 블록을 나타내는 문자열입니다. 유효한 예는 '192.168.1.1/24'입니다.

제외하고

배열(문자열)

IP 블록에 포함되어서는 안 되는 CIDR 슬라이스를 제외합니다. 유효한 예는 '192.168.1.1/24'입니다. 제외 값은 CIDR 범위를 벗어나는 경우 거부됩니다.

22.1.9. .spec.egress[].to[].namespaceSelector

설명
클러스터 범위 레이블을 사용하여 네임스페이스를 선택합니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 네임스페이스를 선택합니다. PodSelector도 설정된 경우 NetworkPolicyPeer는 전체적으로 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 NamespaceSelector에서 선택한 네임스페이스의 모든 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 'key'이고, 연산자는 'In'이며, 값 배열에는 'value'만 포함됩니다. 요구 사항은 AND로 처리됩니다.

22.1.10. .spec.egress[].to[].namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

22.1.11. .spec.egress[].to[].namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

22.1.12. .spec.egress[].to[].podSelector

설명
이는 Pod를 선택하는 라벨 선택기입니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 포드를 선택합니다. NamespaceSelector도 설정된 경우 NetworkPolicyPeer는 전체적으로 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 정책의 자체 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 'key'이고, 연산자는 'In'이며, 값 배열에는 'value'만 포함됩니다. 요구 사항은 AND로 처리됩니다.

22.1.13. .spec.egress[].to[].podSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

22.1.14. .spec.egress[].to[].podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우, 값 배열은 비어 있으면 안 됩니다. 연산자가 Exists 또는 DoesNotExist인 경우, 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

22.1.15. .spec.ingress

설명
선택된 포드에 적용할 수신 규칙 목록입니다. 네트워크 정책이 포드를 선택하지 않는 경우(그리고 클러스터 정책이 트래픽을 허용하는 경우), 또는 트래픽 소스가 포드의 로컬 노드인 경우, 또는 트래픽이 podSelector가 포드와 일치하는 모든 네트워크 정책 객체에서 하나 이상의 수신 규칙과 일치하는 경우 포드에 대한 트래픽이 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 어떠한 트래픽도 허용하지 않으며 선택한 포드가 기본적으로 격리되도록 보장하는 데만 사용됩니다.
유형
array

22.1.16. .spec.ingress[]

설명
NetworkPolicyIngressRule은 NetworkPolicySpec의 podSelector와 일치하는 pod에 허용되는 특정 트래픽 집합을 설명합니다. 트래픽은 두 포트와 출발지 모두와 일치해야 합니다.
유형
object
Expand
재산유형설명

from

array

이 규칙에 대해 선택된 포드에 접근할 수 있어야 하는 소스 목록입니다. 이 목록의 항목은 논리적 OR 연산을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우, 이 규칙은 모든 소스(소스에 의해 제한되지 않는 트래픽)와 일치합니다. 이 필드가 존재하고 하나 이상의 항목을 포함하는 경우, 이 규칙은 트래픽이 보낸 사람 목록에 있는 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.

from[]

object

NetworkPolicyPeer는 트래픽을 허용하는 피어를 설명합니다. 특정 필드 조합만 허용됩니다.

포트

array

이 규칙에 대해 선택된 포드에서 접근 가능해야 하는 포트 목록입니다. 이 목록의 각 항목은 논리적 OR을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우, 이 규칙은 모든 포트(포트에 의해 제한되지 않는 트래픽)와 일치합니다. 이 필드가 존재하고 하나 이상의 항목을 포함하는 경우, 이 규칙은 트래픽이 목록에 있는 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.

ports[]

object

NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.

22.1.17. .spec.ingress[].from

설명
이 규칙에 대해 선택된 포드에 접근할 수 있어야 하는 소스 목록입니다. 이 목록의 항목은 논리적 OR 연산을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우, 이 규칙은 모든 소스(소스에 의해 제한되지 않는 트래픽)와 일치합니다. 이 필드가 존재하고 하나 이상의 항목을 포함하는 경우, 이 규칙은 트래픽이 보낸 사람 목록에 있는 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.
유형
array

22.1.18. .spec.ingress[].from[]

설명
NetworkPolicyPeer는 트래픽을 허용하는 피어를 설명합니다. 특정 필드 조합만 허용됩니다.
유형
object
Expand
재산유형설명

ipBlock

object

IPBlock은 특정 IPBlock에 대한 정책을 정의합니다. 이 필드가 설정되면 다른 두 필드도 설정될 수 없습니다.

namespaceSelector

object

클러스터 범위 레이블을 사용하여 네임스페이스를 선택합니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 네임스페이스를 선택합니다. PodSelector도 설정된 경우 NetworkPolicyPeer는 전체적으로 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 NamespaceSelector에서 선택한 네임스페이스의 모든 Pod를 선택합니다.

podSelector

object

이는 Pod를 선택하는 라벨 선택기입니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 포드를 선택합니다. NamespaceSelector도 설정된 경우 NetworkPolicyPeer는 전체적으로 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 정책의 자체 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다.

22.1.19. .spec.ingress[].from[].ipBlock

설명
IPBlock은 특정 IPBlock에 대한 정책을 정의합니다. 이 필드가 설정되면 다른 두 필드도 설정될 수 없습니다.
유형
object
필수 항목
  • cidr
Expand
재산유형설명

cidr

string

CIDR은 IP 블록을 나타내는 문자열입니다. 유효한 예는 '192.168.1.1/24'입니다.

제외하고

배열(문자열)

IP 블록에 포함되어서는 안 되는 CIDR 슬라이스를 제외합니다. 유효한 예는 '192.168.1.1/24'입니다. 제외 값은 CIDR 범위를 벗어나는 경우 거부됩니다.

22.1.20. .spec.ingress[].from[].namespaceSelector

설명
클러스터 범위 레이블을 사용하여 네임스페이스를 선택합니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 네임스페이스를 선택합니다. PodSelector도 설정된 경우 NetworkPolicyPeer는 전체적으로 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 NamespaceSelector에서 선택한 네임스페이스의 모든 Pod를 선택합니다.
유형
object
Expand
재산유형설명

matchExpressions

array

matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.

matchLabels

객체(문자열)

matchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 matchExpressions의 요소와 동일합니다. 여기서 키 필드는 'key'이고, 연산자는 'In'이며, 값 배열에는 'value'만 포함됩니다. 요구 사항은 AND로 처리됩니다.

22.1.21. .spec.ingress[].from[].namespaceSelector.matchExpressions

설명
matchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 AND로 처리됩니다.
유형
array

22.1.22. .spec.ingress[].from[].namespaceSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키, 그리고 키와 값을 연결하는 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
재산유형설명

key

string

키는 선택자가 적용되는 레이블 키입니다.

operator

string

연산자는 키와 값의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

가치

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

22.1.23. .spec.ingress[].from[].podSelector

설명
이는 Pod를 선택하는 라벨 선택기입니다. 이 필드는 표준 라벨 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 Pod를 선택합니다. NamespaceSelector도 설정된 경우 전체 NetworkPolicyPeer는 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 정책의 자체 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 'key'이고, 연산자는 'In'이고, values 배열에는 'value'만 포함하는 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다.

22.1.24. .spec.ingress[].from[].podSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

22.1.25. .spec.ingress[].from[].podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

22.1.26. .spec.ingress[].ports

설명
이 규칙에 대해 선택한 Pod에서 액세스할 수 있어야 하는 포트 목록입니다. 이 목록의 각 항목은 논리 OR를 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 포트와 일치합니다(포트로 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록의 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.
유형
array

22.1.27. .spec.ingress[].ports[]

설명
NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.
유형
object
Expand
속성유형설명

endPort

integer

설정된 경우 정책에서 포트에서 endPort까지의 포트 범위가 허용됨을 나타냅니다. port 필드가 정의되지 않았거나 port 필드가 이름이 지정된 (문자열) 포트로 정의된 경우 이 필드를 정의할 수 없습니다. endPort는 포트보다 크거나 같아야 합니다.

port

integer-or-string

지정된 프로토콜의 포트입니다. Pod에서 숫자 또는 이름이 지정된 포트일 수 있습니다. 이 필드를 제공하지 않으면 모든 포트 이름과 숫자와 일치합니다.

프로토콜

string

트래픽이 일치해야 하는 프로토콜(TCP, UDP 또는 SCTP)입니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

22.1.28. .spec.podSelector

설명
이는 Pod를 선택하는 라벨 선택기입니다. 이 필드는 표준 라벨 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 Pod를 선택합니다. NamespaceSelector도 설정된 경우 전체 NetworkPolicyPeer는 NamespaceSelector에서 선택한 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다. 그렇지 않으면 정책의 자체 네임스페이스에서 PodSelector와 일치하는 Pod를 선택합니다.
유형
object
Expand
속성유형설명

matchExpressions

array

matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.

matchExpressions[]

object

레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.

matchLabels

오브젝트(문자열)

 

22.1.29. .spec.podSelector.matchExpressions

설명
matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
유형
array

22.1.30. .spec.podSelector.matchExpressions[]

설명
레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
유형
object
필수 항목
  • key
  • operator
Expand
속성유형설명

key

string

key는 선택기가 적용되는 라벨 키입니다.

operator

string

Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다.

배열(문자열)

값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다.

22.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.cni.cncf.io/v1beta1/multi-networkpolicies

    • GET: MultiNetworkPolicy 유형의 오브젝트 나열
  • /apis/k8s.cni.cncf.io/v1beta1/namespaces/{namespace}/multi-networkpolicies

    • DELETE: MultiNetworkPolicy의 컬렉션 삭제
    • GET: MultiNetworkPolicy 유형의 오브젝트 나열
    • POST: MultiNetworkPolicy 생성
  • /apis/k8s.cni.cncf.io/v1beta1/namespaces/{namespace}/multi-networkpolicies/{name}

    • DELETE: MultiNetworkPolicy 삭제
    • GET: 지정된 MultiNetworkPolicy 읽기
    • PATCH: 지정된 MultiNetworkPolicy를 부분적으로 업데이트
    • PUT: 지정된 MultiNetworkPolicy를 교체

22.2.1. /apis/k8s.cni.cncf.io/v1beta1/multi-networkpolicies

HTTP 방법
GET
설명
MultiNetworkPolicy 유형의 오브젝트 나열
Expand
표 22.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

MultiNetworkPolicyList 스키마

401 - 무단

22.2.2. /apis/k8s.cni.cncf.io/v1beta1/namespaces/{namespace}/multi-networkpolicies

HTTP 방법
DELETE
설명
MultiNetworkPolicy 컬렉션 삭제
Expand
표 22.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
MultiNetworkPolicy 유형의 오브젝트 나열
Expand
표 22.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

MultiNetworkPolicyList 스키마

401 - 무단

HTTP 방법
POST
설명
MultiNetworkPolicy 생성
Expand
표 22.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 22.5. 본문 매개변수
매개변수유형설명

body

MultiNetworkPolicy 스키마

 
Expand
표 22.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

MultiNetworkPolicy 스키마

201 - 생성됨

MultiNetworkPolicy 스키마

202 - 승인됨

MultiNetworkPolicy 스키마

401 - 무단

22.2.3. /apis/k8s.cni.cncf.io/v1beta1/namespaces/{namespace}/multi-networkpolicies/{name}

Expand
표 22.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

MultiNetworkPolicy 이름

HTTP 방법
DELETE
설명
MultiNetworkPolicy 삭제
Expand
표 22.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 22.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 MultiNetworkPolicy 읽기
Expand
표 22.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

MultiNetworkPolicy 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 MultiNetworkPolicy를 부분적으로 업데이트
Expand
표 22.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 22.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

MultiNetworkPolicy 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 MultiNetworkPolicy를 교체
Expand
표 22.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 22.14. 신체 매개변수
매개변수유형설명

body

MultiNetworkPolicy 스키마

 
Expand
표 22.15. HTTP 응답
HTTP 코드응답 본문

200 - 확인

MultiNetworkPolicy 스키마

201 - 생성됨

MultiNetworkPolicy 스키마

401 - 승인되지 않음

비어 있는

23장. NetworkAttachmentDefinition [k8s.cni.cncf.io/v1]

설명
NetworkAttachmentDefinition은 네트워크 플러밍 작업 그룹에서 지정한 CRD 스키마로, 하나 이상의 논리적 또는 물리적 네트워크에 포드를 연결하려는 의도를 표현하기 위해 만들어졌습니다. 자세한 내용은 https://github.com/k8snetworkplumbingwg/multi-net-spec 에서 확인하세요.
유형
object

23.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

NetworkAttachmentDefinition 사양은 네트워크 연결의 원하는 상태를 정의합니다.

23.1.1. .spec

설명
NetworkAttachmentDefinition 사양은 네트워크 연결의 원하는 상태를 정의합니다.
유형
object
Expand
속성유형설명

config

string

NetworkAttachmentDefinition 구성은 JSON 형식의 CNI 구성입니다.

23.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.cni.cncf.io/v1/network-attachment-definitions

    • GET: 종류의 NetworkAttachmentDefinition 오브젝트 나열
  • /apis/k8s.cni.cncf.io/v1/namespaces/{namespace}/network-attachment-definitions

    • DELETE: NetworkAttachmentDefinition의 컬렉션 삭제
    • GET: 종류의 NetworkAttachmentDefinition 오브젝트 나열
    • POST: NetworkAttachmentDefinition 생성
  • /apis/k8s.cni.cncf.io/v1/namespaces/{namespace}/network-attachment-definitions/{name}

    • DELETE: NetworkAttachmentDefinition 삭제
    • GET: 지정된 NetworkAttachmentDefinition 읽기
    • PATCH: 지정된 NetworkAttachmentDefinition을 부분적으로 업데이트
    • PUT: 지정된 NetworkAttachmentDefinition을 대체합니다.

23.2.1. /apis/k8s.cni.cncf.io/v1/network-attachment-definitions

HTTP 방법
GET
설명
NetworkAttachmentDefinition 유형의 오브젝트 나열
Expand
표 23.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NetworkAttachmentDefinitionList schema

401 - 무단

23.2.2. /apis/k8s.cni.cncf.io/v1/namespaces/{namespace}/network-attachment-definitions

HTTP 방법
DELETE
설명
NetworkAttachmentDefinition 컬렉션 삭제
Expand
표 23.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
NetworkAttachmentDefinition 종류의 객체 목록
Expand
표 23.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

NetworkAttachmentDefinitionList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
NetworkAttachmentDefinition을 생성합니다
Expand
표 23.4. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 23.5. 신체 매개변수
매개변수유형설명

body

NetworkAttachmentDefinition 스키마

 
Expand
표 23.6. HTTP 응답
HTTP 코드응답 본문

200 - 확인

NetworkAttachmentDefinition 스키마

201 - 생성됨

NetworkAttachmentDefinition 스키마

202 - 승인됨

NetworkAttachmentDefinition 스키마

401 - 승인되지 않음

비어 있는

Expand
표 23.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

NetworkAttachmentDefinition의 이름

HTTP 방법
DELETE
설명
NetworkAttachmentDefinition 삭제
Expand
표 23.8. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 23.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 NetworkAttachmentDefinition을 읽습니다.
Expand
표 23.10. HTTP 응답
HTTP 코드응답 본문

200 - 확인

NetworkAttachmentDefinition 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 NetworkAttachmentDefinition을 부분적으로 업데이트합니다.
Expand
표 23.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 23.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NetworkAttachmentDefinition 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 NetworkAttachmentDefinition을 대체합니다.
Expand
표 23.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 23.14. 본문 매개변수
매개변수유형설명

body

NetworkAttachmentDefinition 스키마

 
Expand
표 23.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NetworkAttachmentDefinition 스키마

201 - 생성됨

NetworkAttachmentDefinition 스키마

401 - 무단

24장. NetworkPolicy [networking.k8s.io/v1]

설명
NetworkPolicy는 일련의 Pod에 허용되는 네트워크 트래픽을 설명합니다.
유형
object

24.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

NetworkPolicySpec은 NetworkPolicy 사양을 제공합니다.

24.1.1. .spec

설명
NetworkPolicySpec은 NetworkPolicy 사양을 제공합니다.
유형
object
필수 항목
  • podSelector
Expand
속성유형설명

egress

array

egress는 선택한 Pod에 적용할 송신 규칙 목록입니다. Pod(및 클러스터 정책)를 선택하는 NetworkPolicies가 없거나 트래픽이 Pod와 일치하는 모든 NetworkPolicy 오브젝트에서 하나 이상의 송신 규칙과 일치하는 경우 발신 트래픽이 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 모든 발신 트래픽을 제한하고 선택한 Pod가 기본적으로 격리되도록만 사용됩니다. 이 필드는 1.8의 베타 수준입니다.

egress[]

object

NetworkPolicyEgressRule은 NetworkPolicySpec의 podSelector와 일치하는 Pod가 없는 특정 트래픽 세트를 설명합니다. 트래픽은 포트 및 에 모두 일치해야 합니다. 이 유형은 1.8의 베타 수준입니다.

Ingress

array

Ingress는 선택한 Pod에 적용할 수신 규칙 목록입니다. Pod(및 클러스터 정책)를 선택하는 NetworkPolicies가 없거나 트래픽 소스가 Pod의 로컬 노드인 경우 또는 podSelector가 Pod와 일치하는 모든 NetworkPolicy 오브젝트에서 하나 이상의 수신 규칙과 일치하는 경우 트래픽이 포드에 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 트래픽을 허용하지 않습니다. 선택한 Pod가 기본적으로 격리되도록만 사용됩니다.

ingress[]

object

NetworkPolicyIngressRule은 NetworkPolicySpec의 podSelector와 일치하는 Pod에 허용되는 특정 트래픽 세트를 설명합니다. 트래픽은 포트 및 의 포트와 일치해야 합니다.

podSelector

LabelSelector

podSelector는 이 NetworkPolicy 오브젝트가 적용되는 Pod를 선택합니다. 수신 규칙 배열은 이 필드에서 선택한 모든 Pod에 적용됩니다. 여러 네트워크 정책에서 동일한 Pod 세트를 선택할 수 있습니다. 이 경우 각각에 대한 수신 규칙은 추가적으로 결합됩니다. 이 필드는 선택 사항이 아니며 표준 라벨 선택기 의미 체계를 따릅니다. 빈 podSelector는 이 네임스페이스의 모든 Pod와 일치합니다.

policyTypes

배열(문자열)

policyTypes는 NetworkPolicy와 관련된 규칙 유형 목록입니다. 유효한 옵션은 ["Ingress"], ["Egress"] 또는 ["Ingress", "Egress"]입니다. 이 필드를 지정하지 않으면 수신 또는 송신 규칙의 존재 여부에 따라 기본적으로 설정됩니다. 송신 섹션이 포함된 정책은 송신에 영향을 미치는 것으로 간주되며( ingress 섹션이 포함되어 있는지 여부) 모든 정책( ingress 섹션이 포함되어 있는지 여부)은 수신에 영향을 미치는 것으로 간주됩니다. 송신 전용 정책을 작성하려면 policyTypes [ "Egress" ]를 명시적으로 지정해야 합니다. 마찬가지로 송신이 허용되지 않도록 지정하는 정책을 작성하려는 경우 "Egress"를 포함하는 policyTypes 값을 지정해야 합니다(이러한 정책에 송신 섹션이 포함되지 않고 기본값인 경우 [Ingress"]로 기본 설정됨). 이 필드는 1.8의 베타 수준입니다.

24.1.2. .spec.egress

설명
egress는 선택한 Pod에 적용할 송신 규칙 목록입니다. Pod(및 클러스터 정책)를 선택하는 NetworkPolicies가 없거나 트래픽이 Pod와 일치하는 모든 NetworkPolicy 오브젝트에서 하나 이상의 송신 규칙과 일치하는 경우 발신 트래픽이 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 모든 발신 트래픽을 제한하고 선택한 Pod가 기본적으로 격리되도록만 사용됩니다. 이 필드는 1.8의 베타 수준입니다.
유형
array

24.1.3. .spec.egress[]

설명
NetworkPolicyEgressRule은 NetworkPolicySpec의 podSelector와 일치하는 Pod가 없는 특정 트래픽 세트를 설명합니다. 트래픽은 포트 및 에 모두 일치해야 합니다. 이 유형은 1.8의 베타 수준입니다.
유형
object
Expand
속성유형설명

포트

array

포트는 발신 트래픽의 대상 포트 목록입니다. 이 목록의 각 항목은 논리 OR를 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 포트와 일치합니다(포트로 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록의 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.

ports[]

object

NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.

다음으로 변경

array

to는 이 규칙에 대해 선택된 포드의 발신 트래픽의 대상 목록입니다. 이 목록의 항목은 논리 OR 작업을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 대상과 일치합니다(대상에 의해 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록에서 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.

to[]

object

NetworkPolicyPeer는 트래픽을/에서 허용할 피어를 설명합니다. 특정 필드 조합만 허용됩니다.

24.1.4. .spec.egress[].ports

설명
포트는 발신 트래픽의 대상 포트 목록입니다. 이 목록의 각 항목은 논리 OR를 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 포트와 일치합니다(포트로 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록의 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.
유형
array

24.1.5. .spec.egress[].ports[]

설명
NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.
유형
object
Expand
속성유형설명

endPort

integer

endPort는 정책에 의해 설정된 경우 포트에서 endPort까지의 포트 범위가 허용됨을 나타냅니다. port 필드가 정의되지 않았거나 port 필드가 이름이 지정된 (문자열) 포트로 정의된 경우 이 필드를 정의할 수 없습니다. endPort는 포트보다 크거나 같아야 합니다.

port

IntOrString

port는 지정된 프로토콜의 포트를 나타냅니다. Pod에서 숫자 또는 이름이 지정된 포트일 수 있습니다. 이 필드를 제공하지 않으면 모든 포트 이름과 숫자와 일치합니다. 있는 경우 지정된 프로토콜 및 포트의 트래픽만 일치합니다.

프로토콜

string

protocol은 트래픽이 일치해야 하는 프로토콜(TCP, UDP 또는 SCTP)을 나타냅니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

가능한 열거 값: - "SCTP" 는 SCTP 프로토콜입니다. - "TCP" 는 TCP 프로토콜입니다. - "UDP" 는 UDP 프로토콜입니다.

24.1.6. .spec.egress[].to

설명
to는 이 규칙에 대해 선택된 포드의 발신 트래픽의 대상 목록입니다. 이 목록의 항목은 논리 OR 작업을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우 이 규칙은 모든 대상과 일치합니다(대상에 의해 제한되지 않은 트래픽). 이 필드가 있고 하나 이상의 항목이 포함된 경우 이 규칙은 트래픽이 목록에서 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.
유형
array

24.1.7. .spec.egress[].to[]

설명
NetworkPolicyPeer는 트래픽을/에서 허용할 피어를 설명합니다. 특정 필드 조합만 허용됩니다.
유형
object
Expand
속성유형설명

ipBlock

object

IPBlock은 특정 CIDR을 설명합니다(Ex. NetworkPolicySpec의 podSelector와 일치하는 Pod에 허용되는 "192.168.1.0/24","2001:db8::/64"). except 항목은 이 규칙에 포함되지 않아야 하는 CIDR을 설명합니다.

namespaceSelector

LabelSelector

namespaceSelector는 클러스터 범위 레이블을 사용하여 네임스페이스를 선택합니다. 이 필드는 표준 라벨 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector도 설정된 경우 전체 NetworkPolicyPeer는 namespaceSelector에서 선택한 네임스페이스에서 podSelector와 일치하는 Pod를 선택합니다. 그러지 않으면 namespaceSelector에서 선택한 네임스페이스의 모든 Pod를 선택합니다.

podSelector

LabelSelector

podSelector는 Pod를 선택하는 라벨 선택기입니다. 이 필드는 표준 라벨 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 Pod를 선택합니다.

namespaceSelector도 설정된 경우 전체 NetworkPolicyPeer는 NamespaceSelector에서 선택한 네임스페이스에서 podSelector와 일치하는 Pod를 선택합니다. 그러지 않으면 정책의 자체 네임스페이스에서 podSelector와 일치하는 Pod를 선택합니다.

24.1.8. .spec.egress[].to[].ipBlock

설명
IPBlock은 특정 CIDR을 설명합니다(Ex. NetworkPolicySpec의 podSelector와 일치하는 Pod에 허용되는 "192.168.1.0/24","2001:db8::/64"). except 항목은 이 규칙에 포함되지 않아야 하는 CIDR을 설명합니다.
유형
object
필수 항목
  • cidr
Expand
속성유형설명

cidr

string

CIDR은 IPBlock Valid 예제를 나타내는 문자열입니다 "192.168.1.0/24" 또는 "2001:db8::/64"

except

배열(문자열)

IPBlock Valid 예제에 포함되지 않아야 하는 CIDR 슬라이스를 제외하면 "192.168.1.0/24" 또는 "2001:db8::/64" Except 값이 cidr 범위 외부에 있는 경우 거부됩니다.

24.1.9. .spec.ingress

설명
Ingress는 선택한 Pod에 적용할 수신 규칙 목록입니다. Pod(및 클러스터 정책)를 선택하는 NetworkPolicies가 없거나 트래픽 소스가 Pod의 로컬 노드인 경우 또는 podSelector가 Pod와 일치하는 모든 NetworkPolicy 오브젝트에서 하나 이상의 수신 규칙과 일치하는 경우 트래픽이 포드에 허용됩니다. 이 필드가 비어 있으면 이 NetworkPolicy는 트래픽을 허용하지 않습니다. 선택한 Pod가 기본적으로 격리되도록만 사용됩니다.
유형
array

24.1.10. .spec.ingress[]

설명
NetworkPolicyIngressRule은 NetworkPolicySpec의 podSelector와 일치하는 Pod에 허용되는 특정 트래픽 세트를 설명합니다. 트래픽은 포트 및 의 포트와 일치해야 합니다.
유형
object
Expand
속성유형설명

from

array

from은 이 규칙에 대해 선택된 포드에 접근할 수 있는 소스 목록입니다. 이 목록의 항목은 논리적 OR 연산을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우, 이 규칙은 모든 소스(소스에 의해 제한되지 않는 트래픽)와 일치합니다. 이 필드가 존재하고 하나 이상의 항목을 포함하는 경우, 이 규칙은 트래픽이 보낸 사람 목록에 있는 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.

from[]

object

NetworkPolicyPeer는 트래픽을 허용하는 피어를 설명합니다. 특정 필드 조합만 허용됩니다.

포트

array

ports는 이 규칙에 대해 선택된 포드에서 접근 가능해야 하는 포트 목록입니다. 이 목록의 각 항목은 논리적 OR을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우, 이 규칙은 모든 포트(포트에 의해 제한되지 않는 트래픽)와 일치합니다. 이 필드가 존재하고 하나 이상의 항목을 포함하는 경우, 이 규칙은 트래픽이 목록에 있는 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.

ports[]

object

NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.

24.1.11. .spec.ingress[].from

설명
from은 이 규칙에 대해 선택된 포드에 접근할 수 있는 소스 목록입니다. 이 목록의 항목은 논리적 OR 연산을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우, 이 규칙은 모든 소스(소스에 의해 제한되지 않는 트래픽)와 일치합니다. 이 필드가 존재하고 하나 이상의 항목을 포함하는 경우, 이 규칙은 트래픽이 보낸 사람 목록에 있는 하나 이상의 항목과 일치하는 경우에만 트래픽을 허용합니다.
유형
array

24.1.12. .spec.ingress[].from[]

설명
NetworkPolicyPeer는 트래픽을 허용하는 피어를 설명합니다. 특정 필드 조합만 허용됩니다.
유형
object
Expand
재산유형설명

ipBlock

object

IPBlock은 특정 CIDR을 설명합니다(예: NetworkPolicySpec의 podSelector에 의해 매칭된 pod에 허용되는 "192.168.1.0/24","2001:db8::/64")입니다. 'except' 항목은 이 규칙에 포함되어서는 안 되는 CIDR을 설명합니다.

namespaceSelector

LabelSelector

namespaceSelector는 클러스터 범위 레이블을 사용하여 네임스페이스를 선택합니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 네임스페이스를 선택합니다.

podSelector도 설정된 경우 NetworkPolicyPeer 전체는 namespaceSelector에서 선택한 네임스페이스에서 podSelector와 일치하는 pod를 선택합니다. 그렇지 않으면 namespaceSelector에서 선택한 네임스페이스의 모든 포드를 선택합니다.

podSelector

LabelSelector

podSelector는 Pod를 선택하는 레이블 선택기입니다. 이 필드는 표준 레이블 선택기 의미 체계를 따릅니다. 존재하지만 비어 있으면 모든 포드를 선택합니다.

namespaceSelector도 설정된 경우 NetworkPolicyPeer 전체는 NamespaceSelector에서 선택한 네임스페이스에서 podSelector와 일치하는 pod를 선택합니다. 그렇지 않으면 정책 자체의 네임스페이스에서 podSelector와 일치하는 포드를 선택합니다.

24.1.13. .spec.ingress[].from[].ipBlock

설명
IPBlock은 특정 CIDR을 설명합니다(예: NetworkPolicySpec의 podSelector에 의해 매칭된 pod에 허용되는 "192.168.1.0/24","2001:db8::/64")입니다. 'except' 항목은 이 규칙에 포함되어서는 안 되는 CIDR을 설명합니다.
유형
object
필수 항목
  • cidr
Expand
재산유형설명

cidr

string

cidr은 IPBlock을 나타내는 문자열입니다. 유효한 예는 "192.168.1.0/24" 또는 "2001:db8::/64"입니다.

제외하고

배열(문자열)

IPBlock에 포함되어서는 안 되는 CIDR 슬라이스를 제외합니다. 유효한 예는 "192.168.1.0/24" 또는 "2001:db8::/64"입니다. 제외 값은 cidr 범위를 벗어나는 경우 거부됩니다.

24.1.14. .spec.ingress[].ports

설명
ports는 이 규칙에 대해 선택된 포드에서 접근 가능해야 하는 포트 목록입니다. 이 목록의 각 항목은 논리적 OR을 사용하여 결합됩니다. 이 필드가 비어 있거나 누락된 경우, 이 규칙은 모든 포트(포트에 의해 제한되지 않는 트래픽)와 일치합니다. 이 필드가 존재하고 하나 이상의 항목을 포함하는 경우, 이 규칙은 트래픽이 목록에 있는 하나 이상의 포트와 일치하는 경우에만 트래픽을 허용합니다.
유형
array

24.1.15. .spec.ingress[].ports[]

설명
NetworkPolicyPort는 트래픽을 허용하는 포트를 설명합니다.
유형
object
Expand
재산유형설명

endPort

integer

endPort는 port에서 endPort까지의 포트 범위(설정된 경우 포함)가 정책에 의해 허용되어야 함을 나타냅니다. 포트 필드가 정의되지 않았거나 포트 필드가 명명된(문자열) 포트로 정의된 경우 이 필드를 정의할 수 없습니다. endPort는 port보다 크거나 같아야 합니다.

port

IntOrString

port는 주어진 프로토콜의 포트를 나타냅니다. 이는 포드의 숫자형 포트나 이름이 지정된 포트일 수 있습니다. 이 필드가 제공되지 않으면 모든 포트 이름과 번호가 일치합니다. 이 옵션이 있는 경우, 지정된 프로토콜과 포트의 트래픽만 일치합니다.

규약

string

프로토콜은 트래픽이 일치해야 하는 프로토콜(TCP, UDP 또는 SCTP)을 나타냅니다. 지정하지 않으면 이 필드는 기본적으로 TCP로 설정됩니다.

가능한 열거형 값: - "SCTP" 는 SCTP 프로토콜입니다. - "TCP" 는 TCP 프로토콜입니다. - "UDP" 는 UDP 프로토콜입니다.

24.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/networking.k8s.io/v1/networkpolicies

    • GET : NetworkPolicy 종류의 객체를 나열하거나 감시합니다.
  • /apis/networking.k8s.io/v1/watch/networkpolicies

    • GET : NetworkPolicy 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies

    • DELETE : NetworkPolicy 컬렉션 삭제
    • GET : NetworkPolicy 종류의 객체를 나열하거나 감시합니다.
    • POST : NetworkPolicy 생성
  • /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies

    • GET : NetworkPolicy 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}

    • DELETE : NetworkPolicy 삭제
    • GET : 지정된 NetworkPolicy를 읽습니다.
    • PATCH : 지정된 NetworkPolicy를 부분적으로 업데이트합니다.
    • PUT : 지정된 NetworkPolicy를 교체합니다.
  • /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies/{name}

    • GET : NetworkPolicy 종류의 객체에 대한 변경 사항을 감시합니다. 더 이상 사용하지 않음: 대신 'watch' 매개변수를 목록 작업과 함께 사용하고, 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.

24.2.1. /apis/networking.k8s.io/v1/networkpolicies

HTTP 방법
얻다
설명
NetworkPolicy 종류의 객체를 나열하거나 감시합니다.
Expand
표 24.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

NetworkPolicyList 스키마

401 - 승인되지 않음

비어 있는

24.2.2. /apis/networking.k8s.io/v1/watch/networkpolicies

HTTP 방법
얻다
설명
NetworkPolicy 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 24.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

24.2.3. /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies

HTTP 방법
DELETE
설명
NetworkPolicy 컬렉션 삭제
Expand
표 24.3. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 24.4. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
NetworkPolicy 종류의 객체를 나열하거나 감시합니다.
Expand
표 24.5. HTTP 응답
HTTP 코드응답 본문

200 - 확인

NetworkPolicyList 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
NetworkPolicy를 생성하세요
Expand
표 24.6. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 24.7. 신체 매개변수
매개변수유형설명

body

NetworkPolicy 스키마

 
Expand
표 24.8. HTTP 응답
HTTP 코드응답 본문

200 - 확인

NetworkPolicy 스키마

201 - 생성됨

NetworkPolicy 스키마

202 - 승인됨

NetworkPolicy 스키마

401 - 승인되지 않음

비어 있는

24.2.4. /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies

HTTP 방법
얻다
설명
NetworkPolicy 목록에 대한 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 24.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

24.2.5. /apis/networking.k8s.io/v1/namespaces/{namespace}/networkpolicies/{name}

Expand
표 24.10. 글로벌 경로 매개변수
매개변수유형설명

name

string

NetworkPolicy의 이름

HTTP 방법
DELETE
설명
NetworkPolicy 삭제
Expand
표 24.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 24.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 NetworkPolicy 읽기
Expand
표 24.13. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NetworkPolicy 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 NetworkPolicy를 부분적으로 업데이트
Expand
표 24.14. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 24.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NetworkPolicy 스키마

201 - 생성됨

NetworkPolicy 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 NetworkPolicy를 교체
Expand
표 24.16. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 24.17. 본문 매개변수
매개변수유형설명

body

NetworkPolicy 스키마

 
Expand
표 24.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NetworkPolicy 스키마

201 - 생성됨

NetworkPolicy 스키마

401 - 무단

24.2.6. /apis/networking.k8s.io/v1/watch/namespaces/{namespace}/networkpolicies/{name}

Expand
표 24.19. 글로벌 경로 매개변수
매개변수유형설명

name

string

NetworkPolicy의 이름

HTTP 방법
GET
설명
NetworkPolicy 유형의 오브젝트 변경 사항을 확인합니다. 더 이상 사용되지 않는 'watch' 매개변수를 대신 목록 작업과 함께 사용하여 'fieldSelector' 매개변수가 있는 단일 항목으로 필터링됩니다.
Expand
표 24.20. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

25장. NodeSlicePool [whereabouts.cni.cncf.io/v1alpha1]

설명
NodeSlicePool은 nodesliceippools API의 스키마입니다.
유형
object

25.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

NodeSlicePoolSpec은 NodeSlicePool의 원하는 상태를 정의합니다.

status

object

NodeSlicePoolStatus는 NodeSlicePool의 원하는 상태를 정의합니다.

25.1.1. .spec

설명
NodeSlicePoolSpec은 NodeSlicePool의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • 범위
  • sliceSize
Expand
속성유형설명

범위

string

범위는 IP 주소 및 CIDR 표기법의 접두사 길이를 나타내는 RFC 4632/4291-style 문자열입니다. 이 문자열은 노드가 서브셋이 할당된 전체 범위를 나타냅니다.

sliceSize

string

SliceSize는 각 노드가 할당될 범위의 서브넷 또는 슬라이스 크기입니다.

25.1.2. .status

설명
NodeSlicePoolStatus는 NodeSlicePool의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • 할당
Expand
속성유형설명

할당

array

할당에는 슬라이스에 대한 노드 할당이 있습니다.

allocations[]

object

 

25.1.3. .status.allocations

설명
할당에는 슬라이스에 대한 노드 할당이 있습니다.
유형
array

25.1.4. .status.allocations[]

설명
유형
object
필수 항목
  • nodeName
  • sliceRange
Expand
속성유형설명

nodeName

string

nodename은 이 슬라이스에 할당된 노드의 이름이며 빈 노드 이름은 할당에 사용 가능한 슬라이스입니다.

sliceRange

string

SliceRange는 이 슬라이스의 서브넷입니다.

25.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/whereabouts.cni.cncf.io/v1alpha1/nodeslicepools

    • GET: NodeSlicePool 유형의 오브젝트 나열
  • /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools

    • DELETE: NodeSlicePool의 컬렉션 삭제
    • GET: NodeSlicePool 유형의 오브젝트 나열
    • POST: NodeSlicePool 생성
  • /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools/{name}

    • DELETE: NodeSlicePool 삭제
    • GET: 지정된 NodeSlicePool 읽기
    • PATCH: 지정된 NodeSlicePool을 부분적으로 업데이트
    • PUT: 지정된 NodeSlicePool을 교체합니다.

25.2.1. /apis/whereabouts.cni.cncf.io/v1alpha1/nodeslicepools

HTTP 방법
GET
설명
NodeSlicePool 유형의 오브젝트 나열
Expand
표 25.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NodeSlicePoolList schema

401 - 무단

25.2.2. /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools

HTTP 방법
DELETE
설명
NodeSlicePool 컬렉션 삭제
Expand
표 25.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
NodeSlicePool 유형의 오브젝트 나열
Expand
표 25.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NodeSlicePoolList schema

401 - 무단

HTTP 방법
POST
설명
create a NodeSlicePool
Expand
표 25.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 25.5. 본문 매개변수
매개변수유형설명

body

NodeSlicePool schema

 
Expand
표 25.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NodeSlicePool schema

201 - 생성됨

NodeSlicePool schema

202 - 승인됨

NodeSlicePool schema

401 - 무단

25.2.3. /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/nodeslicepools/{name}

Expand
표 25.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

NodeSlicePool의 이름

HTTP 방법
DELETE
설명
delete a NodeSlicePool
Expand
표 25.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 25.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 NodeSlicePool 읽기
Expand
표 25.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NodeSlicePool schema

401 - 무단

HTTP 방법
PATCH
설명
지정된 NodeSlicePool을 부분적으로 업데이트
Expand
표 25.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 25.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NodeSlicePool schema

401 - 무단

HTTP 방법
PUT
설명
지정된 NodeSlicePool을 교체합니다.
Expand
표 25.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 25.14. 본문 매개변수
매개변수유형설명

body

NodeSlicePool schema

 
Expand
표 25.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

NodeSlicePool schema

201 - 생성됨

NodeSlicePool schema

401 - 무단

26장. OverlappingRangeIPReservation [whereabouts.cni.cncf.io/v1alpha1]

설명
OverlappingRangeIPReservation은 OverlappingRangeIPReservations API의 스키마입니다.
유형
object
필수 항목
  • spec

26.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

OverlappingRangeIPReservationSpec은 원하는 상태 OverlappingRangeIPReservation을 정의합니다.

26.1.1. .spec

설명
OverlappingRangeIPReservationSpec은 원하는 상태 OverlappingRangeIPReservation을 정의합니다.
유형
object
필수 항목
  • podref
Expand
속성유형설명

컨테이너ID

string

 

ifname

string

 

podref

string

 

26.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/whereabouts.cni.cncf.io/v1alpha1/overlappingrangeipreservations

    • GET : OverlappingRangeIPReservation 종류의 객체 목록
  • /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/overlappingrangeipreservations

    • DELETE : OverlappingRangeIPReservation 컬렉션을 삭제합니다.
    • GET : OverlappingRangeIPReservation 종류의 객체 목록
    • POST : OverlappingRangeIPReservation 생성
  • /apis/whereabouts.cni.cncf.io/v1alpha1/namespaces/{namespace}/overlappingrangeipreservations/{name}

    • DELETE : OverlappingRangeIPReservation 삭제
    • GET : 지정된 OverlappingRangeIPReservation을 읽습니다.
    • PATCH : 지정된 OverlappingRangeIPReservation을 부분적으로 업데이트합니다.
    • PUT : 지정된 OverlappingRangeIPReservation을 교체합니다.

26.2.1. /apis/whereabouts.cni.cncf.io/v1alpha1/overlappingrangeipreservations

HTTP 방법
얻다
설명
OverlappingRangeIPReservation 종류의 객체 목록
Expand
표 26.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

OverlappingRangeIPReservationList 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
DELETE
설명
OverlappingRangeIPReservation 컬렉션 삭제
Expand
표 26.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
OverlappingRangeIPReservation 종류의 객체 목록
Expand
표 26.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

OverlappingRangeIPReservationList 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
OverlappingRangeIPReservation을 생성합니다.
Expand
표 26.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 26.5. 본문 매개변수
매개변수유형설명

body

OverlappingRangeIPReservation 스키마

 
Expand
표 26.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

OverlappingRangeIPReservation 스키마

201 - 생성됨

OverlappingRangeIPReservation 스키마

202 - 승인됨

OverlappingRangeIPReservation 스키마

401 - 무단

Expand
표 26.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

OverlappingRangeIPReservation 이름

HTTP 방법
DELETE
설명
OverlappingRangeIPReservation 삭제
Expand
표 26.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 26.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 OverlappingRangeIPReservation 읽기
Expand
표 26.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

OverlappingRangeIPReservation 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 OverlappingRangeIPReservation을 부분적으로 업데이트
Expand
표 26.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 26.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

OverlappingRangeIPReservation 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 OverlappingRangeIPReservation 교체
Expand
표 26.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 26.14. 본문 매개변수
매개변수유형설명

body

OverlappingRangeIPReservation 스키마

 
Expand
표 26.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

OverlappingRangeIPReservation 스키마

201 - 생성됨

OverlappingRangeIPReservation 스키마

401 - 무단

27장. PodNetworkConnectivityCheck [controlplane.operator.openshift.io/v1alpha1]

설명

PodNetworkConnectivityCheck

호환성 수준 4: 호환성이 제공되지 않으며, API는 어떠한 이유로든 변경될 수 있습니다. 이러한 기능은 장기 지원이 필요한 애플리케이션에서 사용해서는 안 됩니다.

유형
object
필수 항목
  • spec

27.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec은 연결 검사의 소스 및 대상을 정의합니다.

status

object

status에는 연결 검사의 관찰된 상태가 포함되어 있습니다.

27.1.1. .spec

설명
spec은 연결 검사의 소스 및 대상을 정의합니다.
유형
object
필수 항목
  • sourcePod
  • targetEndpoint
Expand
속성유형설명

sourcePod

string

sourcePod는 조건을 확인할 Pod의 이름을 지정합니다.

targetEndpoint

string

확인할 EndpointAddress입니다. host:port 형식의 TCP 주소입니다. host가 DNS 이름인 경우 DNS 이름을 확인할 수 없는 경우 검사가 실패합니다. DNS 이름 조회를 바이패스하려면 호스트의 IP 주소를 지정합니다.

tlsClientCert

object

tlsClientCert를 지정하면 엔드포인트 프로세스에서 과도하게 로그인하지 않고 클라이언트 인증서가 필요한 엔드포인트를 확인할 때 사용할 선택적 TLS 클라이언트 인증서 및 키가 포함된 'tls.crt' 및 'tls.key' 항목이 있는 kubernetes.io/tls 유형 시크릿을 참조합니다. 보안은 이 리소스와 동일한 네임스페이스에 있어야 합니다.

27.1.2. .spec.tlsClientCert

설명
tlsClientCert를 지정하면 엔드포인트 프로세스에서 과도하게 로그인하지 않고 클라이언트 인증서가 필요한 엔드포인트를 확인할 때 사용할 선택적 TLS 클라이언트 인증서 및 키가 포함된 'tls.crt' 및 'tls.key' 항목이 있는 kubernetes.io/tls 유형 시크릿을 참조합니다. 보안은 이 리소스와 동일한 네임스페이스에 있어야 합니다.
유형
object
필수 항목
  • name
Expand
속성유형설명

name

string

name은 참조된 보안의 metadata.name입니다.

27.1.3. .status

설명
status에는 연결 검사의 관찰된 상태가 포함되어 있습니다.
유형
object
Expand
속성유형설명

conditions

array

검사 상태 요약

conditions[]

object

PodNetworkConnectivityCheckCondition은 Pod 네트워크 연결의 전체 상태를 나타냅니다.

실패

array

실패에 실패한 검사 작업의 로그가 포함됩니다.

failures[]

object

LogEntry 레코드 이벤트

중단

array

중단에 대한 로그가 포함됩니다.

outages[]

object

OutageEntry는 중단의 기간을 기록합니다.

성공

array

성공 사례에는 성공적인 검사 작업 로그가 포함되어 있습니다.

successes[]

object

LogEntry 레코드 이벤트

27.1.4. .status.conditions

설명
검사 상태 요약
유형
array

27.1.5. .status.conditions[]

설명
PodNetworkConnectivityCheckCondition은 Pod 네트워크 연결의 전반적인 상태를 나타냅니다.
유형
object
필수 항목
  • status
  • type
Expand
재산유형설명

lastTransitionTime

``

지난번에는 조건이 한 상태에서 다른 상태로 전환되었습니다.

message

string

사람이 읽을 수 있는 형식으로 마지막 전환에 대한 세부 정보를 나타내는 메시지입니다.

reason

string

기계가 읽을 수 있는 형식으로 조건의 마지막 상태 전환에 대한 이유를 설명합니다.

status

string

상태의 상태

type

string

조건의 유형

27.1.6. .status.failures

설명
실패에는 실패한 검사 작업의 로그가 포함됩니다.
유형
array

27.1.7. .status.failures[]

설명
LogEntry는 이벤트를 기록합니다
유형
object
필수 항목
  • success
Expand
재산유형설명

latency

``

대기 시간은 항목에 언급된 동작이 수행되는 데 걸린 시간을 기록합니다.

message

string

사람이 읽을 수 있는 형식으로 상태를 설명하는 메시지입니다.

reason

string

기계가 읽을 수 있는 형식으로 상태에 대한 이유를 설명합니다.

success

boolean

success는 로그 항목이 성공을 나타내는지 실패를 나타내는지 여부를 나타냅니다.

time

``

확인 작업의 시작 시간입니다.

27.1.8. .status.outages

설명
정전에는 정전 기간의 로그가 포함됩니다.
유형
array

27.1.9. .status.outages[]

설명
OutageEntry는 정전 기간을 기록합니다.
유형
object
Expand
재산유형설명

end

``

정전 종료 감지됨

endLogs

array

endLogs에는 이 중단의 종료와 관련된 로그 항목이 포함되어 있습니다. 중단을 해결한 성공 항목과 그에 앞선 몇 가지 실패 로그 항목이 포함되어야 합니다.

endLogs[]

object

LogEntry는 이벤트를 기록합니다

message

string

메시지는 사람이 읽을 수 있는 형식으로 중단 세부 정보를 요약합니다.

start

``

정전 시작 감지됨

startLogs

array

startLogs에는 이 중단의 시작과 관련된 로그 항목이 포함되어 있습니다. 원래의 실패 내용과 실패 모드가 변경된 모든 항목을 포함해야 합니다.

startLogs[]

object

LogEntry는 이벤트를 기록합니다

27.1.10. .status.outages[].endLogs

설명
endLogs에는 이 중단의 종료와 관련된 로그 항목이 포함되어 있습니다. 중단을 해결한 성공 항목과 그에 앞선 몇 가지 실패 로그 항목이 포함되어야 합니다.
유형
array

27.1.11. .status.outages[].endLogs[]

설명
LogEntry는 이벤트를 기록합니다
유형
object
필수 항목
  • success
Expand
재산유형설명

latency

``

대기 시간은 항목에 언급된 동작이 수행되는 데 걸린 시간을 기록합니다.

message

string

사람이 읽을 수 있는 형식으로 상태를 설명하는 메시지입니다.

reason

string

기계가 읽을 수 있는 형식으로 상태에 대한 이유를 설명합니다.

success

boolean

success는 로그 항목이 성공을 나타내는지 실패를 나타내는지 여부를 나타냅니다.

time

``

확인 작업의 시작 시간입니다.

27.1.12. .status.outages[].startLogs

설명
startLogs에는 이 중단의 시작과 관련된 로그 항목이 포함되어 있습니다. 원래의 실패 내용과 실패 모드가 변경된 모든 항목을 포함해야 합니다.
유형
array

27.1.13. .status.outages[].startLogs[]

설명
LogEntry는 이벤트를 기록합니다
유형
object
필수 항목
  • success
Expand
재산유형설명

latency

``

대기 시간은 항목에 언급된 동작이 수행되는 데 걸린 시간을 기록합니다.

message

string

사람이 읽을 수 있는 형식으로 상태를 설명하는 메시지입니다.

reason

string

기계가 읽을 수 있는 형식으로 상태에 대한 이유를 설명합니다.

success

boolean

success는 로그 항목이 성공을 나타내는지 실패를 나타내는지 여부를 나타냅니다.

time

``

확인 작업의 시작 시간입니다.

27.1.14. .상태.성공

설명
성공에는 성공적인 확인 작업 로그가 포함됩니다.
유형
array

27.1.15. .status.successes[]

설명
LogEntry는 이벤트를 기록합니다
유형
object
필수 항목
  • success
Expand
재산유형설명

latency

``

대기 시간은 항목에 언급된 동작이 수행되는 데 걸린 시간을 기록합니다.

message

string

사람이 읽을 수 있는 형식으로 상태를 설명하는 메시지입니다.

reason

string

기계가 읽을 수 있는 형식으로 상태에 대한 이유를 설명합니다.

success

boolean

success는 로그 항목이 성공을 나타내는지 실패를 나타내는지 여부를 나타냅니다.

time

``

확인 작업의 시작 시간입니다.

27.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/controlplane.operator.openshift.io/v1alpha1/podnetworkconnectivitychecks

    • GET : PodNetworkConnectivityCheck 종류의 객체 목록
  • /apis/controlplane.operator.openshift.io/v1alpha1/네임스페이스/{네임스페이스}/포드네트워크연결성검사

    • DELETE : PodNetworkConnectivityCheck 컬렉션 삭제
    • GET : PodNetworkConnectivityCheck 종류의 객체 목록
    • POST : PodNetworkConnectivityCheck 생성
  • /apis/controlplane.operator.openshift.io/v1alpha1/네임스페이스/{네임스페이스}/포드네트워크연결검사/{이름}

    • DELETE : PodNetworkConnectivityCheck 삭제
    • GET : 지정된 PodNetworkConnectivityCheck를 읽습니다.
    • PATCH : 지정된 PodNetworkConnectivityCheck를 부분적으로 업데이트합니다.
    • PUT : 지정된 PodNetworkConnectivityCheck를 교체합니다.
  • /apis/controlplane.operator.openshift.io/v1alpha1/네임스페이스/{네임스페이스}/podnetworkconnectivitychecks/{이름}/상태

    • GET : 지정된 PodNetworkConnectivityCheck의 상태를 읽습니다.
    • PATCH : 지정된 PodNetworkConnectivityCheck의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 PodNetworkConnectivityCheck의 상태를 바꿉니다.

27.2.1. /apis/controlplane.operator.openshift.io/v1alpha1/podnetworkconnectivitychecks

HTTP 방법
얻다
설명
PodNetworkConnectivityCheck 종류의 객체 목록
Expand
표 27.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

PodNetworkConnectivityCheckList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
DELETE
설명
PodNetworkConnectivityCheck 컬렉션 삭제
Expand
표 27.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
PodNetworkConnectivityCheck 종류의 객체 목록
Expand
표 27.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

PodNetworkConnectivityCheckList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
PodNetworkConnectivityCheck를 생성합니다
Expand
표 27.4. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 27.5. 본문 매개변수
매개변수유형설명

body

PodNetworkConnectivityCheck 스키마

 
Expand
표 27.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

PodNetworkConnectivityCheck 스키마

201 - 생성됨

PodNetworkConnectivityCheck 스키마

202 - 승인됨

PodNetworkConnectivityCheck 스키마

401 - 무단

Expand
표 27.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

PodNetworkConnectivityCheck의 이름

HTTP 방법
DELETE
설명
delete a PodNetworkConnectivityCheck
Expand
표 27.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 27.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 PodNetworkConnectivityCheck 읽기
Expand
표 27.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

PodNetworkConnectivityCheck 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 PodNetworkConnectivityCheck를 부분적으로 업데이트
Expand
표 27.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 27.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

PodNetworkConnectivityCheck 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 PodNetworkConnectivityCheck로 교체
Expand
표 27.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 27.14. 본문 매개변수
매개변수유형설명

body

PodNetworkConnectivityCheck 스키마

 
Expand
표 27.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

PodNetworkConnectivityCheck 스키마

201 - 생성됨

PodNetworkConnectivityCheck 스키마

401 - 무단

Expand
표 27.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

PodNetworkConnectivityCheck의 이름

HTTP 방법
GET
설명
지정된 PodNetworkConnectivityCheck의 읽기 상태
Expand
표 27.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

PodNetworkConnectivityCheck 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 PodNetworkConnectivityCheck의 부분적으로 업데이트 상태
Expand
표 27.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 27.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

PodNetworkConnectivityCheck 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 PodNetworkConnectivityCheck의 상태 교체
Expand
표 27.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 27.21. 본문 매개변수
매개변수유형설명

body

PodNetworkConnectivityCheck 스키마

 
Expand
표 27.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

PodNetworkConnectivityCheck 스키마

201 - 생성됨

PodNetworkConnectivityCheck 스키마

401 - 무단

28장. ReferenceGrant [gateway.networking.k8s.io/v1beta1]

설명

ReferenceGrant는 정책과 동일한 네임스페이스에서 지정된 종류의 리소스를 참조하는 데 신뢰할 수 있는 다른 네임스페이스에서 리소스 종류를 식별합니다.

각 ReferenceGrant는 고유한 신뢰 관계를 나타내는 데 사용할 수 있습니다. 추가 참조 권한 부여를 사용하여 정의된 네임스페이스에 대한 신뢰할 수 있는 인바운드 참조 집합에 추가할 수 있습니다.Additional Reference Grants can be used to add to the set of trusted sources of inbound references for the namespace they are defined within.

게이트웨이 API의 모든 네임스페이스 참조(네임스페이스 게이트웨이 라우팅 연결을 제외하고) ReferenceGrant가 필요합니다.

ReferenceGrant는 런타임 확인 형식으로, 사용자가 어떤 교차 네임스페이스 오브젝트 참조가 허용되는지 확인할 수 있습니다. ReferenceGrant를 지원하는 구현은 부여가 없는 교차 네임스페이스 참조를 허용하지 않아야 하며 부여가 허용되는 액세스를 취소하여 부여 제거에 응답해야 합니다.

유형
object

28.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec은 ReferenceGrant의 원하는 상태를 정의합니다.

28.1.1. .spec

설명
spec은 ReferenceGrant의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • from
  • 다음으로 변경
Expand
속성유형설명

from

array

에서 "To"에 설명된 리소스를 참조할 수 있는 신뢰할 수 있는 네임스페이스 및 종류에 대해 설명합니다. 이 목록의 각 항목은 참조가 유효하거나 다른 방식으로 배치하려면 OR를 사용하여 결합해야 하는 추가 위치로 간주되어야 합니다.

지원: Core

from[]

object

ReferenceGrantFrom은 신뢰할 수 있는 네임스페이스 및 종류에 대해 설명합니다.

다음으로 변경

array

"From"에 설명된 리소스에서 참조할 수 있는 리소스를 설명합니다. 이 목록의 각 항목은 참조가 유효하거나 다른 방식으로 배치하려면 OR를 사용하여 결합해야 하는 추가 위치로 간주되어야 합니다.

지원: Core

to[]

object

ReferenceGrantTo는 Kinds가 참조의 대상으로 허용되는 것을 설명합니다.

28.1.2. .spec.from

설명

에서 "To"에 설명된 리소스를 참조할 수 있는 신뢰할 수 있는 네임스페이스 및 종류에 대해 설명합니다. 이 목록의 각 항목은 참조가 유효하거나 다른 방식으로 배치하려면 OR를 사용하여 결합해야 하는 추가 위치로 간주되어야 합니다.

지원: Core

유형
array

28.1.3. .spec.from[]

설명
ReferenceGrantFrom은 신뢰할 수 있는 네임스페이스 및 종류에 대해 설명합니다.
유형
object
필수 항목
  • group
  • kind
  • 네임스페이스
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 비어 있는 경우 Kubernetes 코어 API 그룹이 유추됩니다.

지원: Core

kind

string

이것은 일종의 참조입니다. 구현에서 추가 리소스를 지원할 수 있지만 다음 유형은 이 필드에 대한 "코어" 지원 수준의 일부입니다.

SecretObjectReference를 허용하는 데 사용되는 경우:

* 게이트웨이

BackendObjectReference를 허용하는 데 사용되는 경우:

* GRPCRoute * HTTPRoute * TCPRoute * TLSRoute * UDPRoute

네임스페이스

string

네임스페이스는 참조의 네임스페이스입니다.

지원: Core

28.1.4. .spec.to

설명

"From"에 설명된 리소스에서 참조할 수 있는 리소스를 설명합니다. 이 목록의 각 항목은 참조가 유효하거나 다른 방식으로 배치하려면 OR를 사용하여 결합해야 하는 추가 위치로 간주되어야 합니다.

지원: Core

유형
array

28.1.5. .spec.to[]

설명
ReferenceGrantTo는 Kinds가 참조의 대상으로 허용되는 것을 설명합니다.
유형
object
필수 항목
  • group
  • kind
Expand
속성유형설명

group

string

그룹은 참조 그룹의 그룹입니다. 비어 있는 경우 Kubernetes 코어 API 그룹이 유추됩니다.

지원: Core

kind

string

이것은 일종의 참조입니다. 구현이 추가 리소스를 지원할 수 있지만 다음 유형은 이 필드에 대한 "Core" 지원 수준의 일부입니다.

* SecretObjectReference를 허용하는 데 사용되는 경우 Secrets when used to permit a BackendObjectReference

name

string

이름은 참조의 이름입니다. 지정되지 않은 경우 이 정책은 로컬 네임스페이스에 지정된 Group 및 Kind의 모든 리소스를 나타냅니다.

28.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/gateway.networking.k8s.io/v1beta1/referencegrants

    • GET: 종류의 ReferenceGrant 오브젝트 나열
  • /apis/gateway.networking.k8s.io/v1beta1/namespaces/{namespace}/referencegrants

    • DELETE: ReferenceGrant의 컬렉션 삭제
    • GET: 종류의 ReferenceGrant 오브젝트 나열
    • POST: ReferenceGrant 생성
  • /apis/gateway.networking.k8s.io/v1beta1/namespaces/{namespace}/referencegrants/{name}

    • DELETE: ReferenceGrant 삭제
    • GET: 지정된 ReferenceGrant 읽기
    • PATCH: 지정된 ReferenceGrant를 부분적으로 업데이트
    • PUT: 지정된 ReferenceGrant를 교체

28.2.1. /apis/gateway.networking.k8s.io/v1beta1/referencegrants

HTTP 방법
GET
설명
Type ReferenceGrant의 오브젝트 나열
Expand
표 28.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

ReferenceGrantList 스키마

401 - 무단

28.2.2. /apis/gateway.networking.k8s.io/v1beta1/namespaces/{namespace}/referencegrants

HTTP 방법
DELETE
설명
ReferenceGrant 컬렉션 삭제
Expand
표 28.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

401 - 무단

HTTP 방법
GET
설명
Type ReferenceGrant의 오브젝트 나열
Expand
표 28.3. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

ReferenceGrantList 스키마

401 - 무단

HTTP 방법
POST
설명
ReferenceGrant 만들기
Expand
표 28.4. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 28.5. 본문 매개변수
매개변수유형설명

body

ReferenceGrant 스키마

 
Expand
표 28.6. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

ReferenceGrant 스키마

201 - 생성됨

ReferenceGrant 스키마

202 - 승인됨

ReferenceGrant 스키마

401 - 무단

Expand
표 28.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

ReferenceGrant의 이름

HTTP 방법
DELETE
설명
ReferenceGrant 삭제
Expand
표 28.8. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 28.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

상태 스키마

202 - 승인됨

상태 스키마

401 - 무단

HTTP 방법
GET
설명
지정된 ReferenceGrant 읽기
Expand
표 28.10. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

ReferenceGrant 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 ReferenceGrant를 부분적으로 업데이트
Expand
표 28.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 28.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

ReferenceGrant 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 ReferenceGrant 교체
Expand
표 28.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 28.14. 본문 매개변수
매개변수유형설명

body

ReferenceGrant 스키마

 
Expand
표 28.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

ReferenceGrant 스키마

201 - 생성됨

ReferenceGrant 스키마

401 - 무단

29장. Route [route.openshift.io/v1]

설명

경로를 사용하면 개발자가 HTTP(S)에서 공용 DNS 항목을 통해 로드 밸런싱 및 프록시 계층을 인식하여 서비스를 노출할 수 있습니다. 경로는 TLS 옵션 및 인증서를 추가로 지정하거나 라우터에서 HTTP 및 HTTPS 트래픽에 대해 수락해야 하는 공용 CNAME을 지정할 수 있습니다. 관리자는 일반적으로 라우터가 클러스터 방화벽 외부에 표시되도록 구성하고 서비스 콘텐츠에 보안, 캐싱 또는 트래픽 제어를 추가할 수도 있습니다. 라우터는 일반적으로 서비스 엔드포인트와 직접 통신합니다.

경로가 생성되면 호스트 필드가 변경되지 않을 수 있습니다. 일반적으로 라우터는 충돌을 해결할 때 지정된 호스트에서 가장 오래된 경로를 사용합니다.

라우터는 추가 사용자 지정의 영향을 받으며 annotations 필드를 통해 추가 제어를 지원할 수 있습니다.

관리자는 여러 라우터를 구성할 수 있으므로 경로 상태 필드는 각 라우터의 경로 이름 및 상태에 대한 정보를 클라이언트에 반환하는 데 사용됩니다. 예를 들어 클라이언트가 중복 이름을 선택하는 경우 경로 상태 조건이 사용하여 경로를 선택할 수 없음을 나타냅니다.

경로에서 HTTP/2 ALPN을 활성화하려면 사용자 정의 (비위 카드) 인증서가 필요합니다. 이렇게 하면 클라이언트가 연결을 병합할 수 없으며 특히 웹 브라우저도 마찬가지입니다. 연결 재사용/커밋의 위험 때문에 기본 인증서를 사용하는 경로에서 HTTP/2 ALPN을 지원하지 않습니다. 자체 사용자 지정 인증서가 없는 경로는 프런트 엔드 또는 백엔드에서 HTTP/2 ALPN을 사용할 수 없습니다.

호환성 수준 1: 최소 12 개월 또는 3 개의 마이너 릴리스 (더 긴 버전) 동안 주요 릴리스 내에서 사용할 수 있습니다.

유형
object
필수 항목
  • spec

29.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta_v2

메타데이터는 표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

RouteSpec은 경로가 노출하는 호스트 이름 또는 경로, 보안 정보 및 경로가 가리키는 1~4개의 백엔드(서비스)를 설명합니다. 요청은 각 백엔드에 할당된 가중치에 따라 백엔드 간에 배포됩니다. 라운드 로빈 스케줄링을 사용하는 경우 각 백엔드로 이동하는 요청 부분은 백엔드 가중치를 모든 백엔드 가중치의 합계로 나눈 값입니다. 백엔드에 끝점이 두 개 이상 있는 경우 백엔드에서 종료되는 요청은 엔드포인트 간에 라운드 로빈 방식으로 배포됩니다. 가중치는 기본값 100을 사용하여 0에서 256 사이입니다. weight 0으로 인해 백엔드에 대한 요청이 발생하지 않습니다. 모든 가중치가 0이면 경로에 백엔드가 없는 것으로 간주되고 표준 503 응답을 반환합니다.

tls 필드는 선택 사항이며 경로에 대한 특정 인증서 또는 동작을 허용합니다. 일반적으로 라우터는 명시적 인증서 없이 경로를 종료하도록 와일드카드 도메인에 기본 인증서를 구성하지만 사용자 지정 호스트 이름은 일반적으로 통과(TLS Server-Name- Indication 필드를 통해 백엔드에 직접 트래픽 전달)를 선택하거나 인증서를 제공해야 합니다.

status

object

RouteStatus는 이를 인정하는 라우터를 포함하여 경로 상태에 대한 관련 정보를 제공합니다.

29.1.1. .spec

설명

RouteSpec은 경로가 노출하는 호스트 이름 또는 경로, 보안 정보 및 경로가 가리키는 1~4개의 백엔드(서비스)를 설명합니다. 요청은 각 백엔드에 할당된 가중치에 따라 백엔드 간에 배포됩니다. 라운드 로빈 스케줄링을 사용하는 경우 각 백엔드로 이동하는 요청 부분은 백엔드 가중치를 모든 백엔드 가중치의 합계로 나눈 값입니다. 백엔드에 끝점이 두 개 이상 있는 경우 백엔드에서 종료되는 요청은 엔드포인트 간에 라운드 로빈 방식으로 배포됩니다. 가중치는 기본값 100을 사용하여 0에서 256 사이입니다. weight 0으로 인해 백엔드에 대한 요청이 발생하지 않습니다. 모든 가중치가 0이면 경로에 백엔드가 없는 것으로 간주되고 표준 503 응답을 반환합니다.

tls 필드는 선택 사항이며 경로에 대한 특정 인증서 또는 동작을 허용합니다. 일반적으로 라우터는 명시적 인증서 없이 경로를 종료하도록 와일드카드 도메인에 기본 인증서를 구성하지만 사용자 지정 호스트 이름은 일반적으로 통과(TLS Server-Name- Indication 필드를 통해 백엔드에 직접 트래픽 전달)를 선택하거나 인증서를 제공해야 합니다.

유형
object
필수 항목
  • 다음으로 변경
Expand
속성유형설명

alternateBackends

array

alternateBackends를 사용하면 경로에 최대 3개의 추가 백엔드를 할당할 수 있습니다. 서비스 유형만 허용되며 기본적으로 서비스합니다. RouteTargetReference 오브젝트의 weight 필드를 사용하여 상대 기본 설정을 지정합니다.

alternateBackends[]

object

RouteTargetReference는 끝점으로 확인되는 대상을 지정합니다. '서비스' 유형만 허용됩니다. 'weight' 필드를 사용하여 다른 필드보다 강조하십시오.

host

string

host는 서비스를 가리키는 별칭/DNS입니다. 선택 사항입니다. 지정하지 않으면 일반적으로 경로 이름이 자동으로 선택됩니다. DNS952 하위 도메인 규칙을 따라야 합니다.

httpHeaders

object

RouteHTTPHeaders는 HTTP 헤더에 대한 정책을 정의합니다.

path

string

라우터가 감시하는 경로를 통해 서비스에 대한 트래픽을 라우팅합니다. 선택 사항

port

object

RoutePort는 라우터에서 서비스 끝점의 엔드포인트로 포트 매핑을 정의합니다.

subdomain

string

하위 도메인은 Ingress 컨트롤러의 도메인(도메인) 내에서 요청된 DNS 하위 도메인입니다. host가 설정된 경우 이 필드는 무시됩니다. 수신 컨트롤러는 제안된 이름을 무시하도록 선택할 수 있습니다. 이 경우 컨트롤러는 status.ingress 배열에서 할당된 이름을 보고하거나 경로를 허용하지 않습니다. 이 값이 설정되고 서버가 이 필드 호스트를 지원하지 않으면 자동으로 채워집니다. 그렇지 않으면 호스트는 비어 있습니다. 이 필드에는 점으로 구분된 여러 부분이 있을 수 있지만 모든 Ingress 컨트롤러가 요청을 이행할 수 있는 것은 아닙니다. 이 필드는 업데이트 경로/사용자 정의 호스트 권한이 있는 사용자를 제외하고 생성 후 변경할 수 없습니다.

예: 하위 도메인 프런트 엔드는 전체 호스트 이름 frontend. apps.mycluster.com 을 갖도록 라우터 하위 도메인 apps.mycluster.com 을 자동으로 수신합니다.

tls

object

tlsConfig는 경로를 보호하고 종료를 제공하는 데 사용되는 구성을 정의합니다.

다음으로 변경

object

RouteTargetReference는 끝점으로 확인되는 대상을 지정합니다. '서비스' 유형만 허용됩니다. 'weight' 필드를 사용하여 다른 필드보다 강조하십시오.

wildcardPolicy

string

경로에 대한 와일드카드 정책(있는 경우). 현재 'Subdomain' 또는 '없음'만 허용됩니다.

29.1.2. .spec.alternateBackends

설명
alternateBackends를 사용하면 경로에 최대 3개의 추가 백엔드를 할당할 수 있습니다. 서비스 유형만 허용되며 기본적으로 서비스합니다. RouteTargetReference 오브젝트의 weight 필드를 사용하여 상대 기본 설정을 지정합니다.
유형
array

29.1.3. .spec.alternateBackends[]

설명
RouteTargetReference는 끝점으로 확인되는 대상을 지정합니다. '서비스' 유형만 허용됩니다. 'weight' 필드를 사용하여 다른 필드보다 강조하십시오.
유형
object
필수 항목
  • kind
  • name
Expand
속성유형설명

kind

string

경로가 참조하는 대상의 유형입니다. 현재 '서비스'만 허용됩니다.

name

string

참조되는 서비스/대상의 이름(예: 서비스 이름)

weight

integer

weight는 다른 대상 참조 오브젝트에 대한 대상의 상대적 가중치를 지정하는 0에서 256, default 100 사이의 정수입니다. 0은 이 백엔드에 대한 요청을 비활성화합니다.

29.1.4. .spec.httpHeaders

설명
RouteHTTPHeaders는 HTTP 헤더에 대한 정책을 정의합니다.
유형
object
Expand
속성유형설명

작업

object

RouteHTTPHeaderActions는 HTTP 요청 및 응답 헤더에 대한 작업에 대한 구성을 정의합니다.

29.1.5. .spec.httpHeaders.actions

설명
RouteHTTPHeaderActions는 HTTP 요청 및 응답 헤더에 대한 작업에 대한 구성을 정의합니다.
유형
object
Expand
속성유형설명

요청

array

request는 수정할 HTTP 요청 헤더 목록입니다. 현재는 작업이 헤더 값 설정 또는 삭제 로 정의할 수 있습니다. 여기에 정의된 작업은 경로를 통해 수행된 모든 요청의 요청 헤더를 수정합니다. 이러한 작업은 경로를 통해 이루어진 연결, 즉 클러스터 내에 정의된 특정 경로에 적용됩니다. 현재는 작업이 헤더 값 설정 또는 삭제 로 정의할 수 있습니다. 요청 헤더에 대한 IngressController 작업 후에 경로 작업이 실행됩니다. 작업은 이 목록에 정의된 대로 순서대로 적용됩니다. 최대 20개의 요청 헤더 작업이 구성될 수 있습니다. 이 필드를 사용하여 클라이언트에서 애플리케이션으로 연결을 전달할 때 설정하거나 삭제해야 하는 HTTP 요청 헤더를 지정할 수 있습니다. 허용되는 샘플 페너는 "req.hdr" 및 "ssl_c_der"입니다. 허용되는 변환기는 "낮은" 및 "base64"입니다. 헤더 값의 예: "%[req.hdr(X-target),lower]", "%{+Q}[ssl_c_der,base64]". 이 API를 사용하여 경로 리소스를 통해 직접 적용되는 요청 헤더 구성은 IngressController 또는 경로 주석의 spec.httpHeaders.actions를 통해 적용된 동일한 이름의 헤더에 대한 헤더 구성을 재정의합니다. 참고: 이 필드는 라우팅에서 TLS 패스스루를 사용하는 경우 사용할 수 없습니다.

request[]

object

RouteHTTPHeader는 HTTP 헤더를 설정하거나 삭제하기 위한 구성을 지정합니다.

응답

array

response는 수정할 HTTP 응답 헤더 목록입니다. 현재는 작업이 헤더 값 설정 또는 삭제 로 정의할 수 있습니다. 여기에서 정의된 작업은 경로를 통해 수행된 모든 요청의 응답 헤더를 수정합니다. 이러한 작업은 경로를 통해 이루어진 연결, 즉 클러스터 내에 정의된 특정 경로에 적용됩니다. 응답 헤더에 대한 IngressController 작업 전에 경로 작업이 실행됩니다. 작업은 이 목록에 정의된 대로 순서대로 적용됩니다. 최대 20개의 응답 헤더 작업이 구성될 수 있습니다. 이 필드를 사용하여 애플리케이션에서 클라이언트로 응답을 전달할 때 설정하거나 삭제해야 하는 HTTP 응답 헤더를 지정할 수 있습니다. 허용되는 샘플 페너는 "res.hdr" 및 "ssl_c_der"입니다. 허용되는 변환기는 "낮은" 및 "base64"입니다. 헤더 값의 예: "%[res.hdr(X-target),lower]", "%{+Q}[ssl_c_der,base64]". 참고: 이 필드는 라우팅에서 TLS 패스스루를 사용하는 경우 사용할 수 없습니다.

response[]

object

RouteHTTPHeader는 HTTP 헤더를 설정하거나 삭제하기 위한 구성을 지정합니다.

29.1.6. .spec.httpHeaders.actions.request

설명
request는 수정할 HTTP 요청 헤더 목록입니다. 현재는 작업이 헤더 값 설정 또는 삭제 로 정의할 수 있습니다. 여기에 정의된 작업은 경로를 통해 수행된 모든 요청의 요청 헤더를 수정합니다. 이러한 작업은 경로를 통해 이루어진 연결, 즉 클러스터 내에 정의된 특정 경로에 적용됩니다. 현재는 작업이 헤더 값 설정 또는 삭제 로 정의할 수 있습니다. 요청 헤더에 대한 IngressController 작업 후에 경로 작업이 실행됩니다. 작업은 이 목록에 정의된 대로 순서대로 적용됩니다. 최대 20개의 요청 헤더 작업이 구성될 수 있습니다. 이 필드를 사용하여 클라이언트에서 애플리케이션으로 연결을 전달할 때 설정하거나 삭제해야 하는 HTTP 요청 헤더를 지정할 수 있습니다. 허용되는 샘플 페너는 "req.hdr" 및 "ssl_c_der"입니다. 허용되는 변환기는 "낮은" 및 "base64"입니다. 헤더 값의 예: "%[req.hdr(X-target),lower]", "%{+Q}[ssl_c_der,base64]". 이 API를 사용하여 경로 리소스를 통해 직접 적용되는 요청 헤더 구성은 IngressController 또는 경로 주석의 spec.httpHeaders.actions를 통해 적용된 동일한 이름의 헤더에 대한 헤더 구성을 재정의합니다. 참고: 이 필드는 라우팅에서 TLS 패스스루를 사용하는 경우 사용할 수 없습니다.
유형
array

29.1.7. .spec.httpHeaders.actions.request[]

설명
RouteHTTPHeader는 HTTP 헤더를 설정하거나 삭제하기 위한 구성을 지정합니다.
유형
object
필수 항목
  • name
  • 작업
Expand
속성유형설명

작업

object

RouteHTTPHeaderActionUnion은 HTTP 헤더에서 수행할 작업을 지정합니다.

name

string

name은 작업을 수행할 헤더의 이름을 지정합니다. 해당 값은 RFC 2616 섹션 4.2에 정의된 대로 유효한 HTTP 헤더 이름이어야 합니다. 이름은 영숫자 및 다음 특수 문자 "-!#$%&'*+.^_'"로만 구성되어야 합니다. 다음 헤더 이름은 예약되어 있으며 이 API를 통해 수정할 수 없습니다: Strict-Transport-Security, Proxy, Settings, Set-Cookie. 길이가 255자 이하여야 합니다. 헤더 이름은 고유해야 합니다.

29.1.8. .spec.httpHeaders.actions.request[].action

설명
RouteHTTPHeaderActionUnion은 HTTP 헤더에서 수행할 작업을 지정합니다.
유형
object
필수 항목
  • type
Expand
속성유형설명

set

object

RouteSetHTTPHeader는 HTTP 헤더에 설정해야 하는 값을 지정합니다.

type

string

type은 헤더에 적용될 작업의 유형을 정의합니다. 가능한 값은 설정 또는 삭제입니다. 설정을 사용하면 HTTP 요청 및 응답 헤더를 설정할 수 있습니다. 삭제를 사용하면 HTTP 요청 및 응답 헤더를 삭제할 수 있습니다.

29.1.9. .spec.httpHeaders.actions.request[].action.set

설명
RouteSetHTTPHeader는 HTTP 헤더에 설정해야 하는 값을 지정합니다.
유형
object
필수 항목
  • value
Expand
재산유형설명

value

string

value는 헤더 값을 지정합니다. 동적 값을 추가할 수 있습니다. 값은 http://cbonte.github.io/haproxy-dconv/2.6/configuration.html#8.2.6 에 정의된 HAProxy 형식 문자열로 해석되며 HAProxy의 %[] 구문을 사용할 수 있습니다. 그렇지 않은 경우 https://datatracker.ietf.org/doc/html/rfc7230#section-3.2 에 정의된 유효한 HTTP 헤더 값이어야 합니다. 이 필드의 값은 16384자를 넘을 수 없습니다. 동적 값을 보간한 추가된 모든 헤더의 총 크기는 IngressController의 spec.tuningOptions.headerBufferMaxRewriteBytes 값을 초과해서는 안 됩니다.

29.1.10. .spec.httpHeaders.actions.response

설명
response는 수정할 HTTP 응답 헤더 목록입니다. 현재, 작업은 헤더 값을 설정 하거나 삭제하도록 정의할 수 있습니다. 여기에 정의된 작업은 경로를 통해 이루어진 모든 요청의 응답 헤더를 수정합니다. 이러한 작업은 클러스터 내에서 정의된 특정 경로, 즉 경로를 통해 만들어진 연결에 적용됩니다. 응답 헤더에 대한 IngressController 작업보다 먼저 Route 작업이 실행됩니다. 작업은 이 목록에 정의된 순서대로 적용됩니다. 최대 20개의 응답 헤더 작업을 구성할 수 있습니다. 이 필드를 사용하면 애플리케이션에서 클라이언트로 응답을 전달할 때 설정하거나 삭제해야 하는 HTTP 응답 헤더를 지정할 수 있습니다. 허용되는 샘플 페처는 "res.hdr" 및 "ssl_c_der"입니다. 허용되는 변환기는 "lower"와 "base64"입니다. 헤더 값 예: "%[res.hdr(X-target),lower]", "%{+Q}[ssl_c_der,base64]". 참고: 경로에 TLS 패스스루가 사용되는 경우 이 필드를 사용할 수 없습니다.
유형
array

29.1.11. .spec.httpHeaders.actions.response[]

설명
RouteHTTPHeader는 HTTP 헤더를 설정하거나 삭제하기 위한 구성을 지정합니다.
유형
object
필수 항목
  • name
  • 작업
Expand
재산유형설명

작업

object

RouteHTTPHeaderActionUnion은 HTTP 헤더에 대해 수행할 작업을 지정합니다.

name

string

name은 작업을 수행할 헤더의 이름을 지정합니다. 해당 값은 RFC 2616 섹션 4.2에 정의된 유효한 HTTP 헤더 이름이어야 합니다. 이름은 영숫자와 특수 문자 "-!#$%&'*+.^_`"로만 구성되어야 합니다. 다음 헤더 이름은 예약되어 있으며 이 API를 통해 수정할 수 없습니다: Strict-Transport-Security, Proxy, Cookie, Set-Cookie. 길이는 255자를 넘지 않아야 합니다. 헤더 이름은 고유해야 합니다.

29.1.12. .spec.httpHeaders.actions.response[].action

설명
RouteHTTPHeaderActionUnion은 HTTP 헤더에 대해 수행할 작업을 지정합니다.
유형
object
필수 항목
  • type
Expand
재산유형설명

set

object

RouteSetHTTPHeader는 HTTP 헤더에 설정해야 하는 값을 지정합니다.

type

string

type은 헤더에 적용될 작업의 유형을 정의합니다. 가능한 값은 설정 또는 삭제입니다. 설정을 사용하면 HTTP 요청 및 응답 헤더를 설정할 수 있습니다. 삭제를 사용하면 HTTP 요청 및 응답 헤더를 삭제할 수 있습니다.

29.1.13. .spec.httpHeaders.actions.response[].action.set

설명
RouteSetHTTPHeader는 HTTP 헤더에 설정해야 하는 값을 지정합니다.
유형
object
필수 항목
  • value
Expand
재산유형설명

value

string

value는 헤더 값을 지정합니다. 동적 값을 추가할 수 있습니다. 값은 http://cbonte.github.io/haproxy-dconv/2.6/configuration.html#8.2.6 에 정의된 HAProxy 형식 문자열로 해석되며 HAProxy의 %[] 구문을 사용할 수 있습니다. 그렇지 않은 경우 https://datatracker.ietf.org/doc/html/rfc7230#section-3.2 에 정의된 유효한 HTTP 헤더 값이어야 합니다. 이 필드의 값은 16384자를 넘을 수 없습니다. 동적 값을 보간한 추가된 모든 헤더의 총 크기는 IngressController의 spec.tuningOptions.headerBufferMaxRewriteBytes 값을 초과해서는 안 됩니다.

29.1.14. .spec.port

설명
RoutePort는 라우터에서 서비스 엔드포인트의 엔드포인트로의 포트 매핑을 정의합니다.
유형
object
필수 항목
  • targetPort
Expand
재산유형설명

targetPort

IntOrString

이 경로가 가리키는 서비스에서 선택한 포드의 대상 포트입니다. 이것이 문자열이면 대상 엔드포인트 포트 목록에서 명명된 포트로 조회됩니다. 필수 항목

29.1.15. .spec.tls

설명
TLSConfig는 경로를 보호하고 종료를 제공하는 데 사용되는 구성을 정의합니다.
유형
object
필수 항목
  • 종료
Expand
재산유형설명

caCertificate

string

caCertificate는 인증 기관 인증서 내용을 제공합니다.

certificate

string

인증서는 인증서 내용을 제공합니다. 이것은 인증서 체인이 아닌 단일 제공 인증서여야 합니다. CA 인증서를 포함하지 마세요.

destinationCACertificate

string

destinationCACertificate는 최종 목적지의 CA 인증서 내용을 제공합니다. 재암호화 종료를 사용할 때 라우터가 보안 연결에 대한 상태 검사를 수행할 수 있도록 이 파일을 제공해야 합니다. 이 필드가 지정되지 않으면 라우터는 자체 대상 CA를 제공하고 짧은 서비스 이름(service.namespace.svc)을 사용하여 호스트 이름 유효성 검사를 수행할 수 있습니다. 이를 통해 인프라에서 생성된 인증서를 자동으로 확인할 수 있습니다.

externalCertificate

object

LocalObjectReference에는 동일한 네임스페이스 내에서 참조된 객체를 찾을 수 있을 만큼 충분한 정보가 포함되어 있습니다.

insecureEdgeTerminationPolicy

string

insecureEdgeTerminationPolicy는 경로에 대한 안전하지 않은 연결에 대한 원하는 동작을 나타냅니다. 각 라우터가 노출할 포트를 직접 결정할 수 있지만 일반적으로 이는 포트 80입니다.

경로에 insecureEdgeTerminationPolicy가 지정되지 않으면 기본 동작은 "없음"입니다.

* 허용 - 트래픽이 안전하지 않은 포트의 서버로 전송됩니다(에지/재암호화 종료만 해당).

* 없음 - 보안되지 않은 포트에서 트래픽이 허용되지 않습니다(기본값).

* 리디렉션 - 클라이언트가 보안 포트로 리디렉션됩니다.

key

string

키는 키 파일 내용을 제공합니다

종료

string

종료는 종료 유형을 나타냅니다.

* edge - TLS 종료는 라우터에서 수행되고 http는 백엔드와 통신하는 데 사용됩니다(기본값) * passthrough - 트래픽은 라우터가 TLS 종료를 제공하지 않고 대상지로 직접 전송됩니다 * reencrypt - TLS 종료는 라우터에서 수행되고 https는 백엔드와 통신하는 데 사용됩니다

참고: 패스스루 종료는 httpHeader 작업과 호환되지 않습니다.

29.1.16. .spec.tls.externalCertificate

설명
LocalObjectReference에는 동일한 네임스페이스 내에서 참조된 객체를 찾을 수 있을 만큼 충분한 정보가 포함되어 있습니다.
유형
object
Expand
재산유형설명

name

string

참조 대상의 이름. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

29.1.17. .spec.to

설명
RouteTargetReference는 엔드포인트로 확인되는 대상을 지정합니다. '서비스' 종류만 허용됩니다. '가중치' 필드를 사용하여 특정 항목을 다른 항목보다 강조합니다.
유형
object
필수 항목
  • kind
  • name
Expand
재산유형설명

kind

string

해당 경로가 참조하는 대상의 종류입니다. 현재는 '서비스'만 허용됩니다.

name

string

참조되는 서비스/대상의 이름입니다. 예: 서비스 이름

무게

integer

가중치는 0과 256 사이의 정수로 지정하며, 기본값은 100입니다. 이는 다른 대상 참조 객체에 대한 대상의 상대적 가중치를 지정합니다. 0은 이 백엔드에 대한 요청을 억제합니다.

29.1.18. .status

설명
RouteStatus는 어떤 라우터가 경로를 인식하는지 등 경로 상태에 대한 관련 정보를 제공합니다.
유형
object
Expand
재산유형설명

입구

array

진입은 경로가 노출될 수 있는 장소를 설명합니다. 수신 지점 목록에 중복된 Host 또는 RouterName 값이 포함될 수 있습니다. 경로는 준비 되면 활성화된 것으로 간주됩니다.

ingress[]

object

RouteIngress는 경로가 노출된 장소에 대한 정보를 보관합니다.

29.1.19. .status.ingress

설명
진입은 경로가 노출될 수 있는 장소를 설명합니다. 수신 지점 목록에 중복된 Host 또는 RouterName 값이 포함될 수 있습니다. 경로는 준비 되면 활성화된 것으로 간주됩니다.
유형
array

29.1.20. .status.ingress[]

설명
RouteIngress는 경로가 노출되는 위치에 대한 정보를 보유합니다.
유형
object
Expand
속성유형설명

conditions

array

조건은 경로의 상태이며 비어 있을 수 있습니다.

conditions[]

object

RouteIngressCondition에는 특정 라우터에서 이 경로의 현재 상태에 대한 세부 정보가 포함되어 있습니다.

host

string

host는 경로가 노출되는 호스트 문자열입니다. 이 값은 필수입니다.

routerCanonicalHostname

string

CanonicalHostname은 이 경로에 요청된 호스트의 CNAME으로 사용할 수 있는 라우터의 외부 호스트 이름입니다. 이 값은 선택 사항이며 모든 경우에 설정되지 않을 수 있습니다.

routerName

string

이름은 라우터에서 자체적으로 식별하기 위해 선택한 이름입니다. 이 값은 필수입니다.

wildcardPolicy

string

와일드카드 정책은 이 경로가 노출되는 데 허용되는 와일드카드 정책입니다.

29.1.21. .status.ingress[].conditions

설명
조건은 경로의 상태이며 비어 있을 수 있습니다.
유형
array

29.1.22. .status.ingress[].conditions[]

설명
RouteIngressCondition에는 특정 라우터에서 이 경로의 현재 상태에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • type
  • status
Expand
속성유형설명

lastTransitionTime

시간

이 조건이 마지막으로 전환된 RFC 3339 날짜 및 시간

message

string

마지막 전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다.

reason

string

조건의 마지막 전환 이유는 일반적으로 사람이 읽을 수 있는 머신입니다.

status

string

Status는 조건의 상태입니다. True, False, 알 수 없음

type

string

type은 조건의 유형입니다. 현재 Admitted 또는 UnservableInFutureVersions만 제공됩니다.

29.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /apis/route.openshift.io/v1/routes

    • GET: 종류의 오브젝트를 나열하거나 감시합니다.
  • /apis/route.openshift.io/v1/watch/routes

    • GET: 별도의 경로 목록을 변경합니다. 더 이상 사용되지 않는 경로 목록을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/route.openshift.io/v1/namespaces/{namespace}/routes

    • DELETE: 경로의 컬렉션 삭제
    • GET: 종류의 오브젝트를 나열하거나 감시합니다.
    • POST: 경로 생성
  • /apis/route.openshift.io/v1/watch/namespaces/{namespace}/routes

    • GET: 별도의 경로 목록을 변경합니다. 더 이상 사용되지 않는 경로 목록을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
  • /apis/route.openshift.io/v1/namespaces/{namespace}/routes/{name}

    • DELETE: 경로 삭제
    • GET: 지정된 경로 읽기
    • PATCH: 지정된 경로를 부분적으로 업데이트
    • PUT: 지정된 경로 교체
  • /apis/route.openshift.io/v1/watch/namespaces/{namespace}/routes/{name}

    • GET: 더 이상 사용되지 않는 Route 오브젝트를 변경합니다. 더 이상 사용되지 않는 'watch' 매개변수를 목록 작업과 함께 대신 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.
  • /apis/route.openshift.io/v1/namespaces/{namespace}/routes/{name}/status

    • GET: 지정된 경로의 읽기 상태
    • PATCH: 지정된 경로의 부분적으로 업데이트됨
    • PUT: 지정된 경로의 상태 교체

29.2.1. /apis/route.openshift.io/v1/routes

HTTP 방법
GET
설명
경로 유형의 오브젝트 나열 또는 감시
Expand
표 29.1. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

RouteList 스키마

401 - 무단

29.2.2. /apis/route.openshift.io/v1/watch/routes

HTTP 방법
GET
설명
더 이상 사용되지 않는 경로 목록에 대한 개별 변경 사항을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
Expand
표 29.2. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

29.2.3. /apis/route.openshift.io/v1/namespaces/{namespace}/routes

HTTP 방법
DELETE
설명
경로 컬렉션 삭제
Expand
표 29.3. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 29.4. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Status_v7 schema

401 - 무단

HTTP 방법
GET
설명
경로 유형의 오브젝트 나열 또는 감시
Expand
표 29.5. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

RouteList 스키마

401 - 무단

HTTP 방법
POST
설명
경로 생성
Expand
표 29.6. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 29.7. 본문 매개변수
매개변수유형설명

body

경로 스키마

 
Expand
표 29.8. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

경로 스키마

201 - 생성됨

경로 스키마

202 - 승인됨

경로 스키마

401 - 무단

29.2.4. /apis/route.openshift.io/v1/watch/namespaces/{namespace}/routes

HTTP 방법
GET
설명
더 이상 사용되지 않는 경로 목록에 대한 개별 변경 사항을 확인합니다. 대신 목록 작업과 함께 'watch' 매개변수를 사용합니다.
Expand
표 29.9. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

29.2.5. /apis/route.openshift.io/v1/namespaces/{namespace}/routes/{name}

Expand
표 29.10. 글로벌 경로 매개변수
매개변수유형설명

name

string

경로 이름

HTTP 방법
DELETE
설명
경로 삭제
Expand
표 29.11. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 29.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

Status_v7 schema

202 - 승인됨

Status_v7 schema

401 - 무단

HTTP 방법
GET
설명
지정된 경로 읽기
Expand
표 29.13. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

경로 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 경로를 부분적으로 업데이트
Expand
표 29.14. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 29.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

경로 스키마

201 - 생성됨

경로 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 경로 교체
Expand
표 29.16. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 29.17. 본문 매개변수
매개변수유형설명

body

경로 스키마

 
Expand
표 29.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

경로 스키마

201 - 생성됨

경로 스키마

401 - 무단

29.2.6. /apis/route.openshift.io/v1/watch/namespaces/{namespace}/routes/{name}

Expand
표 29.19. 글로벌 경로 매개변수
매개변수유형설명

name

string

경로 이름

HTTP 방법
GET
설명
더 이상 사용되지 않는 Route 오브젝트의 변경 사항을 확인합니다. 대신 'fieldSelector' 매개변수가 있는 단일 항목으로 필터링된 목록 작업과 함께 'watch' 매개변수를 사용합니다.
Expand
표 29.20. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

29.2.7. /apis/route.openshift.io/v1/namespaces/{namespace}/routes/{name}/status

Expand
표 29.21. 글로벌 경로 매개변수
매개변수유형설명

name

string

경로 이름

HTTP 방법
GET
설명
지정된 경로의 읽기 상태
Expand
표 29.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

경로 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 경로의 부분적으로 업데이트
Expand
표 29.23. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 29.24. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

경로 스키마

201 - 생성됨

경로 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 경로의 상태 교체
Expand
표 29.25. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 29.26. 본문 매개변수
매개변수유형설명

body

경로 스키마

 
Expand
표 29.27. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

경로 스키마

201 - 생성됨

경로 스키마

401 - 무단

30장. Service [v1]

설명
서비스는 프록시가 수신하는 로컬 포트(예: 3306)와 프록시를 통해 전송된 요청에 응답할 포드를 결정하는 선택기로 구성된 소프트웨어 서비스(예: MySQL)의 명명된 추상화입니다.
유형
object

30.1. 사양

Expand
재산유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 객체의 메타데이터. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

ServiceSpec은 사용자가 서비스에 생성하는 속성을 설명합니다.

status

object

ServiceStatus는 서비스의 현재 상태를 나타냅니다.

30.1.1. .spec

설명
ServiceSpec은 사용자가 서비스에 생성하는 속성을 설명합니다.
유형
object
Expand
속성유형설명

allocateLoadBalancerNodePorts

boolean

allocateLoadBalancerNodePorts는 LoadBalancer 유형의 서비스에 NodePorts가 자동으로 할당되는지 여부를 정의합니다. 기본값은 "true"입니다. 클러스터 로드 밸런서가 NodePort를 사용하지 않는 경우 "false"로 설정할 수 있습니다. 호출자가 값을 지정하여 특정 NodePort를 요청하면 이 필드에 관계없이 해당 요청이 유지됩니다. 이 필드는 LoadBalancer 유형의 서비스에 대해서만 설정할 수 있으며 유형이 다른 유형으로 변경된 경우 지워집니다.

clusterIP

string

ClusterIP는 서비스의 IP 주소이며 일반적으로 임의로 할당됩니다. 주소를 수동으로 지정하는 경우 는 (시스템 구성에 따라) 범위 내이며 사용하지 않는 경우 서비스에 할당됩니다. 그렇지 않으면 서비스 생성이 실패합니다. type 필드를 ExternalName(이 필드를 비워야 함)으로 변경하거나 유형 필드가 ExternalName에서 변경되는 경우를 제외하고 이 필드는 업데이트를 통해 변경할 수 없습니다(이 필드는 위에서 설명한 대로 선택적으로 지정될 수 있음). 유효한 값은 "None", 빈 문자열("") 또는 유효한 IP 주소입니다. 이를 "없음"으로 설정하면 "마이크리스 서비스"(가상 IP 없음)로 설정하면 직접 엔드포인트 연결이 선호되고 프록시가 필요하지 않을 때 유용합니다. ClusterIP, NodePort 및 LoadBalancer 유형에만 적용됩니다. ExternalName 유형의 서비스를 생성할 때 이 필드를 지정하면 생성이 실패합니다. 이 필드는 ExternalName 유형으로 서비스를 업데이트할 때 삭제됩니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies

clusterIPs

배열(문자열)

ClusterIPs는 이 서비스에 할당된 IP 주소 목록이며, 일반적으로 무작위로 할당됩니다. 주소가 수동으로 지정되고, 범위 내에 있으며(시스템 구성에 따라) 사용되지 않으면 해당 주소는 서비스에 할당됩니다. 그렇지 않으면 서비스 생성이 실패합니다. 이 필드는 유형 필드가 ExternalName으로 변경되는 경우(이 필드가 비어 있어야 함)나 유형 필드가 ExternalName에서 변경되는 경우(이 경우 위에서 설명한 대로 이 필드를 선택적으로 지정할 수 있음)를 제외하고는 업데이트를 통해 변경될 수 없습니다. 유효한 값은 "없음", 빈 문자열("") 또는 유효한 IP 주소입니다. 이 옵션을 "없음"으로 설정하면 "헤드리스 서비스"(가상 IP 없음)가 되는데, 이는 직접적인 엔드포인트 연결을 선호하고 프록시가 필요하지 않을 때 유용합니다. ClusterIP, NodePort 및 LoadBalancer 유형에만 적용됩니다. ExternalName 유형의 서비스를 생성할 때 이 필드가 지정되면 생성이 실패합니다. 서비스를 ExternalName 유형으로 업데이트하면 이 필드는 삭제됩니다. 이 필드가 지정되지 않으면 clusterIP 필드에서 초기화됩니다. 이 필드가 지정되면 클라이언트는 clusterIPs[0]와 clusterIP가 동일한 값을 갖는지 확인해야 합니다.

이 필드에는 최대 두 개의 항목(듀얼 스택 IP, 순서에 관계 없음)이 들어갈 수 있습니다. 이러한 IP는 ipFamilies 필드의 값과 일치해야 합니다. clusterIP와 ipFamily는 모두 ipFamilyPolicy 필드에 의해 관리됩니다. 자세한 정보: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies

externalIPs

배열(문자열)

externalIPs는 클러스터의 노드가 이 서비스에 대한 트래픽을 허용할 IP 주소 목록입니다. 이러한 IP는 Kubernetes에서 관리되지 않습니다. 사용자는 트래픽이 이 IP를 가진 노드에 도착하도록 보장할 책임이 있습니다. 일반적인 예로는 Kubernetes 시스템에 속하지 않는 외부 로드 밸런서가 있습니다.

externalName

string

externalName은 검색 메커니즘이 이 서비스에 대한 별칭으로 반환할 외부 참조입니다(예: DNS CNAME 레코드). 프록시는 사용되지 않습니다. 소문자 RFC-1123 호스트 이름( https://tools.ietf.org/html/rfc1123 )이어야 하며 유형은 "ExternalName"이어야 합니다.

externalTrafficPolicy

string

externalTrafficPolicy는 노드가 서비스의 "외부" 주소(NodePorts, ExternalIPs, LoadBalancer IP) 중 하나에서 수신하는 서비스 트래픽을 어떻게 분산하는지 설명합니다. "로컬"로 설정하면 프록시는 외부 로드 밸런서가 노드 간 서비스 트래픽을 분산하고, 각 노드가 클라이언트 소스 IP를 위장하지 않고 서비스의 노드 로컬 엔드포인트에만 트래픽을 전달하도록 서비스를 구성합니다. (종료점이 없는 노드로 실수로 전송된 트래픽은 삭제됩니다.) 기본값인 "클러스터"는 모든 엔드포인트에 균등하게 라우팅하는 표준 동작을 사용합니다(토폴로지 및 기타 기능에 의해 수정될 수 있음). 클러스터 내부에서 외부 IP 또는 LoadBalancer IP로 전송된 트래픽은 항상 "클러스터" 의미를 갖지만, 클러스터 내부에서 NodePort로 전송하는 클라이언트는 노드를 선택할 때 트래픽 정책을 고려해야 할 수도 있습니다.

가능한 열거형 값: - "클러스터" 는 트래픽을 모든 엔드포인트로 라우팅합니다. - "로컬"은 트래픽이 수신된 것과 동일한 노드에 있는 엔드포인트로만 라우팅하여 트래픽의 소스 IP를 보존합니다(로컬 엔드포인트가 없으면 트래픽을 삭제).

healthCheckNodePort

integer

healthCheckNodePort는 서비스에 대한 healthcheck nodePort를 지정합니다. 이는 type이 LoadBalancer로 설정되고 externalTrafficPolicy가 Local로 설정된 경우에만 적용됩니다. 값이 지정되고 범위 내에 있으며 사용되지 않으면 해당 값이 사용됩니다. 지정하지 않으면 값이 자동으로 할당됩니다. 외부 시스템(예: 로드 밸런서)은 이 포트를 사용하여 주어진 노드가 이 서비스에 대한 엔드포인트를 보유하고 있는지 여부를 확인할 수 있습니다. 이 필드가 필요하지 않은 서비스를 생성할 때 지정되면 생성이 실패합니다. 이 필드는 더 이상 필요하지 않은 서비스(예: 유형 변경)를 업데이트하면 삭제됩니다. 이 필드는 한 번 설정하면 업데이트할 수 없습니다.

internalTrafficPolicy

string

internalTrafficPolicy는 노드가 ClusterIP에서 수신하는 서비스 트래픽을 배포하는 방법을 설명합니다. "Local"로 설정하면 프록시는 Pod가 Pod와 동일한 노드의 서비스 끝점과만 통신하고 로컬 끝점이 없는 경우 트래픽을 삭제한다고 가정합니다. 기본값인 "Cluster"는 모든 끝점에 대한 표준 라우팅 동작을 균등하게 사용합니다( 토폴로지 및 기타 기능에 의해 수정될 수 있음).

가능한 enum 값: - "클러스터" 는 트래픽을 모든 끝점으로 라우팅합니다. - "로컬" 는 클라이언트 Pod와 동일한 노드의 끝점으로만 트래픽을 라우팅합니다(로컬 끝점이 없는 경우 트래픽을 삭제).

ipFamilies

배열(문자열)

ipFamilies는 이 서비스에 할당된 IP 제품군 목록(예: IPv4, IPv6)입니다. 이 필드는 일반적으로 클러스터 구성 및 ipFamilyPolicy 필드를 기반으로 자동으로 할당됩니다. 이 필드가 수동으로 지정되면 클러스터에서 요청된 제품군을 사용할 수 있으며 ipFamilyPolicy에서 허용하는 경우 이 필드가 사용됩니다. 그렇지 않으면 서비스 생성이 실패합니다. 이 필드는 조건적으로 변경할 수 있습니다. 보조 IP 제품군을 추가하거나 제거할 수는 있지만 서비스의 기본 IP 제품군을 변경할 수는 없습니다. 유효한 값은 "IPv4" 및 "IPv6"입니다. 이 필드는 ClusterIP, NodePort 및 LoadBalancer 유형의 서비스에만 적용되며 "headless" 서비스에 적용됩니다. 이 필드는 ExternalName 유형으로 서비스를 업데이트할 때 삭제됩니다.

이 필드는 최대 두 개의 항목(일반적으로 스택 제품군)을 두 순서로 보유할 수 있습니다. 이러한 제품군은 지정된 경우 clusterIPs 필드 값과 일치해야 합니다. clusterIPs 및 ipFamilies 둘 다 ipFamilyPolicy 필드에 의해 관리됩니다.

ipFamilyPolicy

string

ipFamilyPolicy는 이 서비스에서 요청하거나 요구하는 듀얼 스택 특성을 나타냅니다. 값을 제공하지 않으면 이 필드가 SingleStack으로 설정됩니다. 서비스는 "SingleStack"(단일 IP 제품군), "PreferDualStack"(다중 스택 구성된 클러스터의 두 개의 IP 제품군 또는 단일 스택 클러스터에서 단일 IP 제품군) 또는 "RequireDualStack"(반드 스택 구성된 클러스터의 2개의 IP 제품군)일 수 있습니다. ipFamilies 및 clusterIPs 필드는 이 필드의 값에 따라 다릅니다. 이 필드는 ExternalName 유형으로 서비스를 업데이트할 때 삭제됩니다.

가능한 enum 값: - "PreferDualStack" 은 클러스터가 듀얼 스택에 대해 구성된 경우 이 서비스가 듀얼 스택을 선호함을 나타냅니다. 듀얼 스택에 대한 클러스터가 구성되지 않은 경우 서비스에는 단일 IPFamily가 할당됩니다. IPFamily가 service.spec.ipFamilies에 설정되어 있지 않으면 서비스에 기본 IPFamily configured on the cluster - "RequireDualStack" 은 이 서비스에 듀얼 스택이 필요함을 나타냅니다. 단일 스택 클러스터에서 IPFamilyPolicyRequireDualStack을 사용하면 유효성 검사 오류가 발생합니다. 이 서비스에 할당된 IPFamilies(및 주문)는 service.spec.ipFamilies를 기반으로 합니다. service.spec.ipFamilies를 제공하지 않은 경우 클러스터에서 구성 방법에 따라 할당됩니다. service.spec.ipFamilies에 하나의 항목만 있는 경우 대체 IPFamily가 apiserver에서 추가됩니다 - "SingleStack" 은 이 서비스에 단일 IPFamily가 필요하다는 것을 나타냅니다. 할당된 IPFamily는 클러스터에서 사용하거나 service.spec.ipFamilies 필드에 의해 식별된 기본 IPFamily를 기반으로 합니다.

loadBalancerClass

string

LoadBalancerClass는 이 서비스가 속하는 로드 밸런서 구현의 클래스입니다. 지정된 경우 이 필드의 값은 선택적 접두사가 있는 레이블 스타일 식별자여야 합니다(예: "internal-vip" 또는 "example.com/internal-vip"). 호출되지 않은 이름은 최종 사용자를 위해 예약되어 있습니다. 이 필드는 서비스 유형이 'LoadBalancer'인 경우에만 설정할 수 있습니다. 설정되지 않은 경우 기본 로드 밸런서 구현이 사용되며, 현재 일반적으로 클라우드 공급자 통합을 통해 수행되지만 모든 기본 구현에 적용해야 합니다. 설정된 경우 로드 밸런서 구현에서 일치하는 클래스가 있는 서비스를 조사한다고 가정합니다. 기본 로드 밸런서 구현(예: 클라우드 공급자)은 이 필드를 설정하는 서비스를 무시해야 합니다. 이 필드는 'LoadBalancer'를 입력하도록 서비스를 생성하거나 업데이트할 때만 설정할 수 있습니다. 설정한 후에는 변경할 수 없습니다. 서비스가 'LoadBalancer'이 아닌 유형으로 업데이트되면 이 필드가 지워집니다.

loadBalancerIP

string

서비스 유형: LoadBalancer에만 적용됩니다. 이 기능은 로드 밸런서가 생성될 때 기본 cloud-provider가 loadBalancerIP 지정을 지원하는지 여부에 따라 달라집니다. cloud-provider가 해당 기능을 지원하지 않는 경우 이 필드는 무시됩니다. 더 이상 사용되지 않음: 이 필드는 지정되지 않았으며 이는 구현마다 다릅니다. 이를 사용하는 것은 포트를 사용할 수 없으며 듀얼 스택을 지원하지 않을 수 있습니다. 사용자는 사용 가능한 경우 구현별 주석을 사용하는 것이 좋습니다.

loadBalancerSourceRanges

배열(문자열)

플랫폼에서 지정 및 지원하는 경우 cloud-provider 로드 밸런서를 통한 트래픽이 지정된 클라이언트 IP로 제한됩니다. cloud-provider가 이 기능을 지원하지 않는 경우 이 필드는 무시됩니다." 자세한 내용은 https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/

포트

array

이 서비스에서 노출하는 포트 목록입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies

ports[]

object

ServicePort에는 서비스 포트에 대한 정보가 포함되어 있습니다.

publishNotReadyAddresses

boolean

publishNotReadyAddresses는 이 서비스의 엔드포인트를 처리하는 모든 에이전트가 ready/not-ready의 표시를 무시해야 함을 나타냅니다. 이 필드를 설정하는 주요 사용 사례는 StatefulSet의 Headless Service가 피어 검색을 위해 Pod의 SRV DNS 레코드를 전파하는 것입니다. 서비스에 대한 Endpoints 및 EndpointSlice 리소스를 생성하는 Kubernetes 컨트롤러는 Pod 자체가 아닌 경우에도 모든 끝점이 "준비"로 간주되도록 해석합니다. Endpoints 또는 EndpointSlice 리소스를 통해 쿠버네티스 생성된 엔드포인트만 사용하는 에이전트는 이 동작을 안전하게 가정할 수 있습니다.

선택기

오브젝트(문자열)

이 선택기와 일치하는 레이블 키 및 값을 사용하여 서비스 트래픽을 Pod로 라우팅합니다. 비어 있거나 존재하지 않는 경우 서비스에는 Kubernetes가 수정하지 않는 끝점을 관리하는 외부 프로세스가 있는 것으로 간주됩니다. ClusterIP, NodePort 및 LoadBalancer 유형에만 적용됩니다. type이 ExternalName인 경우 무시됩니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/

sessionAffinity

string

"ClientIP" 및 "없음"을 지원합니다. 세션 선호도를 유지하는 데 사용됩니다. 클라이언트 IP 기반 세션 선호도를 활성화합니다. ClientIP 또는 None이어야 합니다. 기본값은 None입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies

가능한 enum 값: - "ClientIP" 는 클라이언트 IP 기반입니다. - "없음" - 세션 선호도가 없습니다.

sessionAffinityConfig

object

SessionAffinityConfig는 세션 선호도의 구성을 나타냅니다.

trafficDistribution

string

TrafficDistribution은 트래픽이 서비스 엔드포인트에 배포되는 방법에 대한 기본 설정을 표현할 수 있는 방법을 제공합니다. 구현에서는 이 필드를 힌트로 사용할 수 있지만 엄격한 준수를 보장할 필요는 없습니다. 필드가 설정되지 않은 경우 구현에서 기본 라우팅 전략을 적용합니다. "Prefer Close"로 설정된 경우 구현은 토폴로지적으로 가까운 엔드포인트(예: 동일한 영역)의 우선 순위를 지정해야 합니다. 베타 필드이며 ServiceTrafficDistribution 기능을 활성화해야 합니다.

type

string

type은 서비스 노출 방식을 결정합니다. 기본값은 ClusterIP입니다. 유효한 옵션은 ExternalName, ClusterIP, NodePort, LoadBalancer입니다. "ClusterIP"는 끝점에 대한 로드 밸런싱을 위해 클러스터 내부 IP 주소를 할당합니다. 끝점은 선택기에 의해 결정되거나 끝점 개체 또는 EndpointSlice 개체의 수동 구성에 의해 지정되지 않은 경우입니다. clusterIP가 "없음"이면 가상 IP가 할당되지 않고 끝점이 가상 IP가 아닌 끝점 세트로 게시됩니다. "NodePort"는 ClusterIP를 기반으로 빌드되고 clusterIP와 동일한 엔드포인트로 라우팅하는 모든 노드에 포트를 할당합니다. "LoadBalancer"는 NodePort를 기반으로 빌드되고 clusterIP와 동일한 엔드포인트로 라우팅하는 외부 로드 밸런서(현재 클라우드에서 지원되는 경우)를 생성합니다. "ExternalName"은 이 서비스에 지정된 externalName에 별칭을 지정합니다. ExternalName 서비스에는 다른 여러 필드가 적용되지 않습니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types

가능한 enum 값: - "ClusterIP" 는 클러스터 IP를 통해 클러스터 내에서만 서비스에 액세스할 수 있음을 의미합니다. - "ExternalName" 은 kubedns 또는 이와 동등한 이름의 참조만 서비스에서 CNAME 레코드로 구성되며 Pod를 노출하거나 프록시하지 않고 서비스가 외부 로드 밸런서를 통해 노출됨을 의미합니다. - "LoadBalancer" 는 외부 로드 밸런서를 통해 서비스가 노출되거나 프록시되지 않음을 의미합니다. 'NodePort' 유형 외에도 ' NodePort '는 'ClusterIP' 유형 외에도 모든 노드의 하나의 포트에 서비스가 노출됨을 의미합니다.

30.1.2. .spec.ports

설명
이 서비스에서 노출하는 포트 목록입니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
유형
array

30.1.3. .spec.ports[]

설명
ServicePort에는 서비스 포트에 대한 정보가 포함되어 있습니다.
유형
object
필수 항목
  • port
Expand
속성유형설명

appProtocol

string

이 포트의 애플리케이션 프로토콜입니다. 이는 구현이 이해할 수 있는 프로토콜에 대해 보다 풍부한 동작을 제공하기 위한 힌트로 사용됩니다. 이 필드는 표준 Kubernetes 라벨 구문을 따릅니다. 유효한 값은 다음 중 하나입니다.

* UN-prefixed 프로토콜 이름 - IANA 표준 서비스 이름(RFC-6335 및 https://www.iana.org/assignments/service-names)용으로 예약되어 있습니다.

* Kubernetes 정의 접두사 이름: * 'kubernetes.io/h2c' - https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior- * 'kubernetes.io/ws'에 설명된 대로 https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior- * 'kubernetes.io/ws'에 설명된 대로 일반 텍스트에 설명된 대로 일반 텍스트에 설명된 대로 일반 텍스트보다 일반 텍스트보다 HTTP/2 사전 지식 - https://www.rfc-editor.org/rfc/rfc9113.html#name-starting-http-2-with-prior-에 설명된 대로 TLS를 통한 WebSocket https://www.rfc-editor.org/rfc/rfc6455 https://www.rfc-editor.org/rfc/rfc6455

* 다른 프로토콜은 mycompany.com/my-custom-protocol과 같은 구현 정의 접두사 이름을 사용해야 합니다.

name

string

서비스 내의 이 포트의 이름입니다. DNS_LABEL이어야 합니다. ServiceSpec 내의 모든 포트에는 고유한 이름이 있어야 합니다. 서비스의 끝점을 고려할 때 EndpointPort의 'name' 필드와 일치해야 합니다. 이 서비스에 하나의 ServicePort만 정의된 경우 선택 사항입니다.

nodePort

integer

유형이 NodePort 또는 LoadBalancer인 경우 이 서비스가 노출되는 각 노드의 포트입니다. 일반적으로 시스템에서 할당한 것입니다. 값이 지정되고 사용하지 않는 값은 사용됩니다. 그렇지 않으면 작업이 실패합니다. 지정하지 않으면 이 서비스에 필요한 경우 포트가 할당됩니다. 이 필드가 필요하지 않은 서비스를 생성할 때 지정된 경우 생성이 실패합니다. 이 필드는 더 이상 필요하지 않도록 서비스를 업데이트할 때 삭제됩니다(예: type을 NodePort에서 ClusterIP로 변경). 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport

port

integer

이 서비스에서 노출할 포트입니다.

프로토콜

string

이 포트의 IP 프로토콜입니다. "TCP", "UDP" 및 "SCTP"를 지원합니다. 기본값은 TCP입니다.

가능한 열거 값: - "SCTP" 는 SCTP 프로토콜입니다. - "TCP" 는 TCP 프로토콜입니다. - "UDP" 는 UDP 프로토콜입니다.

targetPort

IntOrString

서비스에서 대상으로 하는 Pod에서 액세스할 포트의 수 또는 이름입니다. 숫자는 1~65535 범위에 있어야 합니다. name은 IANA_SVC_NAME이어야 합니다. 문자열이면 대상 Pod의 컨테이너 포트에서 이름이 지정된 포트로 조회됩니다. 지정하지 않으면 'port' 필드의 값이 사용됩니다(ID 맵). 이 필드는 clusterIP=None이 있는 서비스에 대해 무시되며 'port' 필드와 동일하게 생략하거나 설정해야 합니다. 자세한 내용은 https://kubernetes.io/docs/concepts/services-networking/service/#defining-a-service

30.1.4. .spec.sessionAffinityConfig

설명
SessionAffinityConfig는 세션 선호도의 구성을 나타냅니다.
유형
object
Expand
속성유형설명

clientIP

object

ClientIPConfig는 클라이언트 IP 기반 세션 선호도의 구성을 나타냅니다.

30.1.5. .spec.sessionAffinityConfig.clientIP

설명
ClientIPConfig는 클라이언트 IP 기반 세션 선호도의 구성을 나타냅니다.
유형
object
Expand
속성유형설명

timeoutSeconds

integer

timeoutSeconds는 ClientIP 유형 세션 고정 시간 초를 지정합니다. ServiceAffinity == "ClientIP"인 경우 값은 >0 && Cryostat86400(일의 경우)이어야 합니다. 기본값은 10800(3시간)입니다.

30.1.6. .status

설명
ServiceStatus는 서비스의 현재 상태를 나타냅니다.
유형
object
Expand
속성유형설명

conditions

배열(Condition)

현재 서비스 상태

loadBalancer

object

LoadBalancerStatus는 로드 밸런서의 상태를 나타냅니다.

30.1.7. .status.loadBalancer

설명
LoadBalancerStatus는 로드 밸런서의 상태를 나타냅니다.
유형
object
Expand
속성유형설명

Ingress

array

Ingress는 로드 밸런서에 대한 수신 지점을 포함하는 목록입니다. 서비스를 위한 트래픽은 이러한 수신 지점으로 전송되어야 합니다.

ingress[]

object

LoadBalancerIngress는 로드 밸런서 인그레스 지점의 상태: 서비스에 대해 의도된 트래픽을 수신 지점으로 보내야 합니다.

30.1.8. .status.loadBalancer.ingress

설명
Ingress는 로드 밸런서에 대한 수신 지점을 포함하는 목록입니다. 서비스를 위한 트래픽은 이러한 수신 지점으로 전송되어야 합니다.
유형
array

30.1.9. .status.loadBalancer.ingress[]

설명
LoadBalancerIngress는 로드 밸런서 인그레스 지점의 상태: 서비스에 대해 의도된 트래픽을 수신 지점으로 보내야 합니다.
유형
object
Expand
속성유형설명

hostname

string

호스트 이름은 DNS 기반(일반적으로 AWS 로드 밸런서)인 로드 밸런서 인그레스 지점에 대해 설정됩니다.

ip

string

IP는 IP 기반(일반적으로 GCE 또는 OpenStack 로드 밸런서)인 로드 밸런서 인그레스 지점에 대해 설정됩니다.

ipMode

string

IPMode는 로드 밸런서 IP의 작동 방식을 지정하고 ip 필드가 지정된 경우에만 지정할 수 있습니다. 이를 "VIP"로 설정하면 대상이 로드 밸런서의 IP 및 포트로 설정된 노드로 트래픽이 전달됨을 나타냅니다. 이를 "Proxy"로 설정하면 목적지가 노드의 IP 및 노드 포트 또는 Pod의 IP 및 포트로 설정된 노드 또는 Pod로 트래픽이 전달됨을 나타냅니다. 서비스 구현은 이 정보를 사용하여 트래픽 라우팅을 조정할 수 있습니다.

포트

array

ports는 서비스 포트의 레코드 목록입니다. 사용 중인 경우 서비스에 정의된 모든 포트에 항목이 있어야 합니다.

ports[]

object

PortStatus는 서비스 포트의 오류 조건을 나타냅니다.

30.1.10. .status.loadBalancer.ingress[].ports

설명
ports는 서비스 포트의 레코드 목록입니다. 사용 중인 경우 서비스에 정의된 모든 포트에 항목이 있어야 합니다.
유형
array

30.1.11. .status.loadBalancer.ingress[].ports[]

설명
PortStatus는 서비스 포트의 오류 조건을 나타냅니다.
유형
object
필수 항목
  • port
  • 프로토콜
Expand
속성유형설명

error

string

Error is to record the problem with the service port The format of the error should comply with the following rules: - built-in error values should be specified in this file and those must use CamelCase name - cloud provider specific error values must have names that comply with the format foo.example.com/CamelCase.

port

integer

port는 상태가 기록되는 서비스 포트의 포트 번호입니다.

프로토콜

string

protocol is the protocol of the service port of which status is recorded here The supported values are: "TCP", "UDP", "SCTP"

가능한 열거 값: - "SCTP" 는 SCTP 프로토콜입니다. - "TCP" 는 TCP 프로토콜입니다. - "UDP" 는 UDP 프로토콜입니다.

30.2. API 끝점

다음 API 끝점을 사용할 수 있습니다.

  • /api/v1/services

    • GET: Service 유형의 오브젝트 목록 또는 감시
  • /api/v1/watch/services

    • GET: 서비스 목록의 개별 변경 사항을 확인합니다. 더 이상 사용되지 않는 경우 목록 작업과 함께 'watch' 매개변수를 대신 사용합니다.
  • /api/v1/namespaces/{namespace}/services

    • DELETE: 서비스 컬렉션 삭제
    • GET: Service 유형의 오브젝트 목록 또는 감시
    • POST: 서비스 생성
  • /api/v1/watch/namespaces/{namespace}/services

    • GET: 서비스 목록의 개별 변경 사항을 확인합니다. 더 이상 사용되지 않는 경우 목록 작업과 함께 'watch' 매개변수를 대신 사용합니다.
  • /api/v1/namespaces/{namespace}/services/{name}

    • DELETE: 서비스 삭제
    • GET: 지정된 서비스 읽기
    • PATCH: 지정된 서비스를 부분적으로 업데이트
    • PUT : 지정된 서비스를 교체합니다.
  • /api/v1/watch/namespaces/{namespace}/services/{name}

    • GET : Service 종류의 객체에 대한 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 'watch' 매개변수를 목록 작업과 함께 사용하고, 'fieldSelector' 매개변수를 사용하여 단일 항목으로 필터링합니다.
  • /api/v1/namespaces/{namespace}/services/{name}/status

    • GET : 지정된 서비스의 상태를 읽습니다.
    • PATCH : 지정된 서비스의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 서비스의 상태를 바꿉니다.

30.2.1. /api/v1/services

HTTP 방법
얻다
설명
서비스 종류의 객체를 나열하거나 감시합니다.
Expand
표 30.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ServiceList 스키마

401 - 승인되지 않음

비어 있는

30.2.2. /api/v1/watch/services

HTTP 방법
얻다
설명
서비스 목록의 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 30.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

30.2.3. /api/v1/namespaces/{namespace}/services

HTTP 방법
DELETE
설명
서비스 컬렉션 삭제
Expand
표 30.3. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 30.4. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
서비스 종류의 객체를 나열하거나 감시합니다.
Expand
표 30.5. HTTP 응답
HTTP 코드응답 본문

200 - 확인

ServiceList 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
서비스 생성
Expand
표 30.6. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 30.7. 신체 매개변수
매개변수유형설명

body

서비스 스키마

 
Expand
표 30.8. HTTP 응답
HTTP 코드응답 본문

200 - 확인

서비스 스키마

201 - 생성됨

서비스 스키마

202 - 승인됨

서비스 스키마

401 - 승인되지 않음

비어 있는

30.2.4. /api/v1/watch/namespaces/{namespace}/services

HTTP 방법
얻다
설명
서비스 목록의 개별 변경 사항을 감시합니다. 더 이상 사용되지 않음: 대신 목록 작업과 함께 'watch' 매개변수를 사용하세요.
Expand
표 30.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

WatchEvent 스키마

401 - 승인되지 않음

비어 있는

30.2.5. /api/v1/namespaces/{namespace}/services/{name}

Expand
표 30.10. 글로벌 경로 매개변수
매개변수유형설명

name

string

서비스 이름

HTTP 방법
DELETE
설명
서비스 삭제
Expand
표 30.11. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 30.12. HTTP 응답
HTTP 코드응답 본문

200 - 확인

서비스 스키마

202 - 승인됨

서비스 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 서비스를 읽습니다
Expand
표 30.13. HTTP 응답
HTTP 코드응답 본문

200 - 확인

서비스 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 서비스를 부분적으로 업데이트합니다
Expand
표 30.14. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 30.15. HTTP 응답
HTTP 코드응답 본문

200 - 확인

서비스 스키마

201 - 생성됨

서비스 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PUT
설명
지정된 서비스를 교체합니다
Expand
표 30.16. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 30.17. 본문 매개변수
매개변수유형설명

body

서비스 스키마

 
Expand
표 30.18. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

서비스 스키마

201 - 생성됨

서비스 스키마

401 - 무단

30.2.6. /api/v1/watch/namespaces/{namespace}/services/{name}

Expand
표 30.19. 글로벌 경로 매개변수
매개변수유형설명

name

string

서비스 이름

HTTP 방법
GET
설명
Service 유형의 오브젝트 변경 사항을 확인합니다. 더 이상 사용되지 않는 'watch' 매개변수를 대신 목록 작업과 함께 사용하여 'fieldSelector' 매개변수가 있는 단일 항목으로 필터링됩니다.
Expand
표 30.20. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

WatchEvent 스키마

401 - 무단

30.2.7. /api/v1/namespaces/{namespace}/services/{name}/status

Expand
표 30.21. 글로벌 경로 매개변수
매개변수유형설명

name

string

서비스 이름

HTTP 방법
GET
설명
지정된 서비스의 읽기 상태
Expand
표 30.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

서비스 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 서비스의 부분적으로 업데이트 상태
Expand
표 30.23. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 30.24. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

서비스 스키마

201 - 생성됨

서비스 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 서비스의 상태 교체
Expand
표 30.25. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 30.26. 본문 매개변수
매개변수유형설명

body

서비스 스키마

 
Expand
표 30.27. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

서비스 스키마

201 - 생성됨

서비스 스키마

401 - 무단

31장. UserDefinedNetwork [k8s.ovn.org/v1]

설명
UserDefinedNetwork는 네임스페이스에 대한 네트워크 요청을 설명합니다.
유형
object
필수 항목
  • spec

31.1. 사양

Expand
속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

UserDefinedNetworkSpec은 UserDefinedNetworkSpec의 원하는 상태를 정의합니다.

status

object

UserDefinedNetworkStatus에는 UserDefinedNetwork의 관찰된 상태가 포함됩니다.

31.1.1. .spec

설명
UserDefinedNetworkSpec은 UserDefinedNetworkSpec의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • 토폴로지
Expand
속성유형설명

layer2

object

Layer2는 Layer2 토폴로지 구성입니다.

layer3

object

Layer3은 Layer3 토폴로지 구성입니다.

토폴로지

string

토폴로지는 네트워크 구성을 설명합니다.

허용되는 값은 "Layer3", "Layer2"입니다. Layer3 토폴로지는 노드당 계층 2 세그먼트를 생성합니다. 각각 다른 서브넷을 사용합니다. 계층 3 라우팅은 노드 서브넷을 상호 연결하는 데 사용됩니다. Layer2 토폴로지는 모든 노드에서 공유하는 하나의 논리 스위치를 생성합니다.

31.1.2. .spec.layer2

설명
Layer2는 Layer2 토폴로지 구성입니다.
유형
object
필수 항목
  • role
Expand
속성유형설명

ipam

object

IPAM 섹션에는 네트워크에 대한 IPAM 관련 구성이 포함되어 있습니다.

joinSubnets

배열(문자열)

JoinSubnets는 OVN 네트워크 토폴로지 내에서 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 제품군마다 하나씩)을 설정할 수 있으며, 그렇지 않으면 서브넷은 1개만 허용됩니다. 이 필드는 "기본" 네트워크에만 허용됩니다. OVN 네트워크 토폴로지에 대한 명시적 필요 및 이해없이 이 필드를 설정하지 않는 것이 좋습니다. 생략하면 플랫폼은 시간이 지남에 따라 변경될 수 있는 적절한 기본값을 선택합니다.

mtu

integer

MTU는 네트워크의 최대 전송 단위입니다. MTU는 선택 사항이며 제공되지 않는 경우 네트워크에 전역적으로 구성된 OVN-Kubernetes 값(기본값: 1400)이 사용됩니다.

role

string

역할은 Pod의 네트워크 역할을 설명합니다.

허용되는 값은 "Secondary"입니다. 보조 네트워크는 k8s.v1.cni.cncf.io/networks 주석을 사용하여 지정된 네트워크를 선택하는 Pod에만 할당됩니다.

subnets

배열(문자열)

서브넷은 클러스터 전체의 pod 네트워크에 사용됩니다. 듀얼 스택 클러스터는 2개의 서브넷(IP 제품군마다 하나씩)을 설정할 수 있으며, 그렇지 않으면 서브넷은 1개만 허용됩니다.

형식은 표준 CIDR 표기법과 일치해야 합니다(예: "10.128.0.0/16"). ipam.modeDisabled 인 경우 이 필드를 생략해야 합니다.

31.1.3. .spec.layer2.ipam

설명
IPAM 섹션에는 네트워크에 대한 IPAM 관련 구성이 포함되어 있습니다.
유형
object
Expand
속성유형설명

라이프 사이클

string

라이프사이클은 IP 주소 관리 라이프사이클을 제어합니다.

허용되는 값은 Persistent입니다. 설정하면 OVN Kubernetes 할당된 IP 주소가 ipamclaims.k8s.cni.cncf.io 오브젝트에 유지됩니다. 요청된 경우 다른 Pod에서 이러한 IP 주소를 재사용합니다. 모드가 활성화된 경우에만 지원됩니다.

mode

string

모드는 OVN에서 관리할 IP 구성의 양을 제어합니다. 활성화하면 OVN-Kubernetes가 SDN 인프라에 IP 구성을 적용하고 선택한 서브넷의 IP도 개별 Pod에 할당합니다. 비활성화됨 은 OVN-Kubernetes가 MAC 주소만 할당하고 계층 2 통신을 제공하여 사용자가 Pod의 IP 주소를 구성할 수 있음을 의미합니다. 비활성화 는 보조 네트워크에서만 사용할 수 있습니다. IPAM을 비활성화하면 IP를 통해 Pod를 선택하는 데 의존하는 Kubernetes 기능이 더 이상 작동하지 않습니다(예: 네트워크 정책, 서비스 등). 또한 이 네트워크에 연결된 인터페이스에 대해 IP 포트 보안도 비활성화됩니다. 기본값은 enabled입니다.

31.1.4. .spec.layer3

설명
Layer3은 Layer3 토폴로지 구성입니다.
유형
object
필수 항목
  • role
  • subnets
Expand
속성유형설명

joinSubnets

배열(문자열)

JoinSubnets는 OVN 네트워크 토폴로지 내에서 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 제품군마다 하나씩)을 설정할 수 있으며, 그렇지 않으면 서브넷은 1개만 허용됩니다. 이 필드는 "기본" 네트워크에만 허용됩니다. OVN 네트워크 토폴로지에 대한 명시적 필요 및 이해없이 이 필드를 설정하지 않는 것이 좋습니다. 생략하면 플랫폼은 시간이 지남에 따라 변경될 수 있는 적절한 기본값을 선택합니다.

mtu

integer

MTU는 네트워크의 최대 전송 단위입니다.

MTU는 선택 사항이며 제공되지 않는 경우 네트워크에 전역적으로 구성된 OVN-Kubernetes 값(기본값: 1400)이 사용됩니다.

role

string

역할은 Pod의 네트워크 역할을 설명합니다.

허용되는 값은 "기본" 및 "Secondary"입니다. 기본 네트워크는 동일한 네임스페이스에서 생성된 모든 pod에 자동으로 할당됩니다. 보조 네트워크는 k8s.v1.cni.cncf.io/networks 주석을 사용하여 지정된 네트워크를 선택하는 Pod에만 할당됩니다.

subnets

array

서브넷은 클러스터 전체의 pod 네트워크에 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 제품군마다 하나씩)을 설정할 수 있으며, 그렇지 않으면 서브넷은 1개만 허용됩니다. 지정된 서브넷은 모든 노드의 더 작은 서브넷으로 나뉩니다.

subnets[]

object

 

31.1.5. .spec.layer3.subnets

설명

서브넷은 클러스터 전체의 pod 네트워크에 사용됩니다.

듀얼 스택 클러스터는 2개의 서브넷(IP 제품군마다 하나씩)을 설정할 수 있으며, 그렇지 않으면 서브넷은 1개만 허용됩니다. 지정된 서브넷은 모든 노드의 더 작은 서브넷으로 나뉩니다.

유형
array

31.1.6. .spec.layer3.subnets[]

설명
유형
object
필수 항목
  • cidr
Expand
속성유형설명

cidr

string

CIDR은 모든 노드의 작은 서브넷으로 분할되는 L3Subnet을 지정합니다.

hostSubnet

integer

HostSubnet은 모든 노드의 서브넷 크기를 지정합니다.

설정하지 않으면 자동으로 할당됩니다.

31.1.7. .status

설명
UserDefinedNetworkStatus에는 UserDefinedNetwork의 관찰된 상태가 포함됩니다.
유형
object
Expand
속성유형설명

conditions

array

 

conditions[]

object

condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.

31.1.8. .status.conditions

설명
유형
array

31.1.9. .status.conditions[]

설명
condition에는 이 API 리소스의 현재 상태에 대한 한 가지 측면에 대한 세부 정보가 포함되어 있습니다.
유형
object
필수 항목
  • lastTransitionTime
  • message
  • reason
  • status
  • type
Expand
속성유형설명

lastTransitionTime

string

lastTransitionTime은 조건이 한 상태에서 다른 상태로 전환된 마지막 시간입니다. 이는 기본 조건이 변경된 시점이어야 합니다. 이를 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.

message

string

메시지는 전환에 대한 세부 정보를 나타내는 사람이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.

observedGeneration

integer

observedGeneration은 조건이 설정된 .metadata.generation을 나타냅니다. 예를 들어, .metadata.generation이 현재 12이지만 .status.conditions[x].observedGeneration이 9인 경우 해당 조건은 인스턴스의 현재 상태를 기준으로 오래되었습니다.

reason

string

reason에는 조건의 마지막 전환에 대한 이유를 나타내는 프로그래밍 식별자가 포함되어 있습니다. 특정 조건 유형의 생산자는 이 필드에 대한 예상 값과 의미를 정의하고, 해당 값이 보장된 API로 간주되는지 여부를 결정할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 필드는 비어 있을 수 없습니다.

status

string

조건의 상태는 True, False, Unknown 중 하나입니다.

type

string

CamelCase 또는 foo.example.com/CamelCase의 조건 유형입니다.

31.2. API 엔드포인트

다음 API 끝점을 사용할 수 있습니다.

  • /apis/k8s.ovn.org/v1/userdefinednetworks

    • GET : UserDefinedNetwork 종류의 객체 목록
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/userdefinednetworks

    • DELETE : UserDefinedNetwork 컬렉션 삭제
    • GET : UserDefinedNetwork 종류의 객체 목록
    • POST : UserDefinedNetwork 생성
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/userdefinednetworks/{name}

    • DELETE : UserDefinedNetwork 삭제
    • GET : 지정된 UserDefinedNetwork를 읽습니다.
    • PATCH : 지정된 UserDefinedNetwork를 부분적으로 업데이트합니다.
    • PUT : 지정된 UserDefinedNetwork를 교체합니다.
  • /apis/k8s.ovn.org/v1/namespaces/{namespace}/userdefinednetworks/{name}/status

    • GET : 지정된 UserDefinedNetwork의 상태를 읽습니다.
    • PATCH : 지정된 UserDefinedNetwork의 상태를 부분적으로 업데이트합니다.
    • PUT : 지정된 UserDefinedNetwork의 상태를 바꿉니다.

31.2.1. /apis/k8s.ovn.org/v1/userdefinednetworks

HTTP 방법
얻다
설명
UserDefinedNetwork 종류의 객체 목록
Expand
표 31.1. HTTP 응답
HTTP 코드응답 본문

200 - 확인

UserDefinedNetworkList schema

401 - 승인되지 않음

비어 있는

31.2.2. /apis/k8s.ovn.org/v1/namespaces/{namespace}/userdefinednetworks

HTTP 방법
DELETE
설명
UserDefinedNetwork 컬렉션 삭제
Expand
표 31.2. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
UserDefinedNetwork 종류의 객체 목록
Expand
표 31.3. HTTP 응답
HTTP 코드응답 본문

200 - 확인

UserDefinedNetworkList schema

401 - 승인되지 않음

비어 있는

HTTP 방법
POST
설명
UserDefinedNetwork를 생성합니다
Expand
표 31.4. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. 이는 v1.23+의 기본값입니다. Strict: 알 수 없는 필드가 개체에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류로 요청이 실패합니다. 서버에서 반환된 오류에는 알 수 없는 필드와 중복된 필드가 모두 포함됩니다.

Expand
표 31.5. 신체 매개변수
매개변수유형설명

body

UserDefinedNetwork 스키마

 
Expand
표 31.6. HTTP 응답
HTTP 코드응답 본문

200 - 확인

UserDefinedNetwork 스키마

201 - 생성됨

UserDefinedNetwork 스키마

202 - 승인됨

UserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

31.2.3. /apis/k8s.ovn.org/v1/namespaces/{namespace}/userdefinednetworks/{name}

Expand
표 31.7. 글로벌 경로 매개변수
매개변수유형설명

name

string

UserDefinedNetwork의 이름

HTTP 방법
DELETE
설명
UserDefinedNetwork 삭제
Expand
표 31.8. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

Expand
표 31.9. HTTP 응답
HTTP 코드응답 본문

200 - 확인

상태 스키마

202 - 승인됨

상태 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
얻다
설명
지정된 UserDefinedNetwork를 읽습니다.
Expand
표 31.10. HTTP 응답
HTTP 코드응답 본문

200 - 확인

UserDefinedNetwork 스키마

401 - 승인되지 않음

비어 있는

HTTP 방법
PATCH
설명
지정된 UserDefinedNetwork를 부분적으로 업데이트합니다.
Expand
표 31.11. 쿼리 매개변수
매개변수유형설명

드라이런

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시어가 있으면 오류 응답이 발생하고 요청을 더 이상 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

fieldValidation은 서버에 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 객체를 처리하는 방법을 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이 옵션은 객체에서 자동으로 삭제된 알 수 없는 필드를 무시하고, 디코더가 발견한 마지막 중복 필드를 제외한 모든 필드를 무시합니다. 이는 v1.23 이전의 기본 동작입니다. - 경고: 객체에서 삭제된 각 알 수 없는 필드와 발견된 각 중복 필드에 대해 표준 경고 응답 헤더를 통해 경고를 보냅니다. 다른 오류가 없으면 요청은 성공할 것이고, 중복된 필드 중 마지막 필드만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 31.12. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

UserDefinedNetwork 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 UserDefinedNetwork를 교체
Expand
표 31.13. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 31.14. 본문 매개변수
매개변수유형설명

body

UserDefinedNetwork 스키마

 
Expand
표 31.15. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

UserDefinedNetwork 스키마

201 - 생성됨

UserDefinedNetwork 스키마

401 - 무단

31.2.4. /apis/k8s.ovn.org/v1/namespaces/{namespace}/userdefinednetworks/{name}/status

Expand
표 31.16. 글로벌 경로 매개변수
매개변수유형설명

name

string

UserDefinedNetwork의 이름

HTTP 방법
GET
설명
지정된 UserDefinedNetwork의 읽기 상태
Expand
표 31.17. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

UserDefinedNetwork 스키마

401 - 무단

HTTP 방법
PATCH
설명
지정된 UserDefinedNetwork의 부분적으로 업데이트
Expand
표 31.18. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 31.19. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

UserDefinedNetwork 스키마

401 - 무단

HTTP 방법
PUT
설명
지정된 UserDefinedNetwork의 상태 교체
Expand
표 31.20. 쿼리 매개변수
매개변수유형설명

dryRun

string

존재하는 경우 수정 사항이 유지되지 않아야 함을 나타냅니다. 유효하지 않거나 인식할 수 없는 dryRun 지시문으로 인해 오류 응답이 발생하고 요청을 추가로 처리하지 않습니다. 유효한 값은 다음과 같습니다. - All: 모든 시험 실행 단계가 처리됩니다.

fieldValidation

string

FieldValidation은 알 수 없거나 중복된 필드가 포함된 요청(POST/PUT/PATCH)의 오브젝트를 처리하는 방법에 대해 서버에 지시합니다. 유효한 값은 다음과 같습니다. - 무시: 이는 오브젝트에서 자동으로 삭제된 알 수 없는 필드를 무시하고 디코더가 직면하는 마지막 중복 필드를 제외한 모든 필드를 무시합니다. v1.23 이전의 기본 동작입니다. - warn: 오브젝트에서 삭제된 각 알 수 없는 각 필드에 대한 표준 경고 응답 헤더와 발생하는 각 중복 필드에 대해 경고를 보냅니다. 다른 오류가 없는 경우에도 요청이 성공하고 중복 필드의 마지막 부분만 유지됩니다. v1.23+ - Strict: 알 수 없는 필드가 오브젝트에서 삭제되거나 중복 필드가 있는 경우 BadRequest 오류와 함께 요청이 실패합니다. 서버에서 반환된 오류에는 모든 알 수 없거나 중복된 필드가 포함됩니다.

Expand
표 31.21. 본문 매개변수
매개변수유형설명

body

UserDefinedNetwork 스키마

 
Expand
표 31.22. HTTP 응답
HTTP 코드리포지토리 본문

200 - OK

UserDefinedNetwork 스키마

201 - 생성됨

UserDefinedNetwork 스키마

401 - 무단

Legal Notice

Copyright © 2025 Red Hat

OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).

Modified versions must remove all Red Hat trademarks.

Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.

Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux® is the registered trademark of Linus Torvalds in the United States and other countries.

Java® is a registered trademark of Oracle and/or its affiliates.

XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat