15장. IngressController [operator.openshift.io/v1]
- 설명
- IngressController는 클러스터의 관리형 Ingress 컨트롤러를 설명합니다. 컨트롤러는 OpenShift 경로 및 Kubernetes 인그레스 리소스를 제공할 수 있습니다. IngressController가 생성되면 외부 트래픽이 Ingress 또는 Route 리소스를 노출하는 서비스에 도달할 수 있도록 새 수신 컨트롤러 배포가 생성됩니다. 이 리소스를 업데이트하면 새 수신 컨트롤러 리버전이 롤아웃될 수 있으므로 공용으로 발생하는 네트워크 연결이 중단될 수 있습니다. https://kubernetes.io/docs/concepts/services-networking/ingress-controllers 가능한 경우 플랫폼의 합리적인 기본값이 사용됩니다. 자세한 내용은 각 필드를 참조하십시오. 호환성 수준 1: 최소 12 개월 또는 3 개의 마이너 릴리스 (더 긴 버전) 동안 주요 릴리스 내에서 사용할 수 있습니다.
- 유형
-
object
15.1. 사양
속성 | 유형 | 설명 |
---|---|---|
|
| APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| spec은 IngressController의 원하는 동작의 사양입니다. |
|
| 상태는 IngressController의 가장 최근에 관찰된 상태입니다. |
15.1.1. .spec
- 설명
- spec은 IngressController의 원하는 동작의 사양입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| clientTLS는 클라이언트 인증서를 요청 및 확인하는 설정을 지정합니다. 이 설정은 에지 종료 및 재암호화 경로에 대해 상호 TLS를 활성화하는 데 사용할 수 있습니다. |
|
| defaultCertificate는 Ingress 컨트롤러에서 제공하는 기본 인증서가 포함된 보안에 대한 참조입니다. 경로가 자체 인증서를 지정하지 않으면 defaultCertificate가 사용됩니다. 보안에는 tls.crt: certificate file contents tls.key: 키 파일 내용이 설정되지 않은 경우 와일드카드 인증서가 자동으로 생성되고 사용됩니다. 인증서는 Ingress 컨트롤러 도메인(및 하위 도메인)에 유효하며 생성된 인증서의 CA는 클러스터의 신뢰 저장소와 자동으로 통합됩니다. 와일드카드 인증서를 여러 HTTP/2 사용 경로( ALPN을 의미함)에서 사용하고 공유하는 경우 클라이언트(즉, 특히 브라우저)가 열려 있는 연결을 재사용하기 위해 자유로워집니다. 즉, 클라이언트가 다른 경로에 대한 연결을 재사용할 수 있으며 실패할 가능성이 큽니다. 이러한 동작을 일반적으로 연결 병합이라고 합니다. 사용 중인 인증서(생성 또는 사용자 지정)는 OpenShift의 내장 OAuth 서버와 자동으로 통합됩니다. |
|
| domain은 Ingress 컨트롤러에서 제공하는 DNS 이름이며 여러 기능을 구성하는 데 사용됩니다. * LoadBalancerService 끝점 게시 전략의 경우 domain은 DNS 레코드를 구성하는 데 사용됩니다. endpointPublishingStrategy를 참조하십시오. 생성된 기본 인증서를 사용하는 경우 도메인 및 해당 하위 도메인에 인증서가 유효합니다. defaultCertificate를 참조하십시오. * 값은 개별 경로 상태에 게시되므로 최종 사용자가 외부 DNS 레코드를 대상으로 지정할 위치를 알고 있습니다. 도메인은 모든 IngressController 중에서 고유해야 하며 업데이트할 수 없습니다. 비어 있는 경우 기본값은 ingress.config.openshift.io/cluster .spec.domain입니다. |
|
| endpointPublishingStrategy는 Ingress 컨트롤러 끝점을 다른 네트워크에 게시하고 로드 밸런서 통합을 활성화하는 데 사용됩니다. 설정되지 않은 경우 기본값은 infrastructure.config.openshift.io/cluster .status.platform: AWS: LoadBalancerService (with External scope) GCP: LoadBalancerService (with External scope) GCP: LoadBalancerService(외부 범위 포함) IBMCloud: LoadBalancerService(외부 범위 포함) Libvirt: LoadBalancerService(외부 범위 포함) Libvirt: HostNetwork (including None) 기본 플랫폼 유형을 업데이트할 수 없습니다. |
|
| httpCompression은 HTTP 트래픽 압축 정책을 정의합니다. 기본적으로 HTTP 압축이 없습니다. |
|
| HTTPEmptyRequestsPolicy는 요청을 수신하기 전에 연결 시간이 초과된 경우 HTTP 연결을 처리하는 방법을 설명합니다. 이 필드에 허용되는 값은 "Respond" 및 "Ignore"입니다. 필드가 "Respond"로 설정된 경우 Ingress 컨트롤러는 HTTP 400 또는 408 응답을 전송하고 연결을 기록하며(액세스 로깅이 활성화된 경우) 적절한 메트릭의 연결을 계산합니다. 필드가 "Ignore"로 설정된 경우 Ingress 컨트롤러는 응답을 보내거나 연결을 기록하거나 메트릭을 늘리지 않고 연결을 종료합니다. 기본값은 "Respond"입니다. 일반적으로 이러한 연결은 로드 밸런서의 상태 프로브 또는 웹 브라우저의 추측 연결("사전 연결")에서 제공되며 무시해도 됩니다. 그러나 이러한 요청은 네트워크 오류로 인해 발생할 수 있으므로 이 필드를 "Ignore"로 설정하면 문제를 탐지하고 진단할 수 있습니다. 또한 이러한 요청은 포트 검사로 인해 발생할 수 있으며, 이 경우 빈 요청을 로깅하면 침입 시도를 탐지하는 데 도움이 될 수 있습니다. |
|
| httpErrorCodePages는 사용자 정의 오류 페이지가 포함된 configmap을 지정합니다. 관리자는 openshift-config 네임스페이스에 이 configmap을 생성해야 합니다. 이 configmap에는 "error-page-<error code>.http 형식의 키가 있어야 합니다. 여기서 <error code>는 HTTP 오류 코드입니다. 예를 들어 "error-page-503.http"는 HTTP 503 응답에 대한 오류 페이지를 정의합니다. 현재 503 및 404 응답에 대한 오류 페이지만 사용자 지정할 수 있습니다. configmap의 각 값은 HTTP 헤더를 포함하여 전체 응답이어야 합니다. eg- https://raw.githubusercontent.com/openshift/router/fadab45747a9b30cc3f0a4b41ad2871f95827a93/images/router/haproxy/conf/error-page-503.http 이 필드가 비어 있으면 Ingress 컨트롤러에서 기본 오류 페이지를 사용합니다. |
|
| httpHeaders는 HTTP 헤더에 대한 정책을 정의합니다. 이 필드가 비어 있으면 기본값이 사용됩니다. |
|
| logging은 어디에서 기록해야 하는지에 대한 매개변수를 정의합니다. 이 필드가 비어 있으면 작동 로그는 활성화되지만 액세스 로그는 비활성화됩니다. |
|
| namespaceSelector는 Ingress 컨트롤러에서 서비스를 제공하는 네임스페이스 집합을 필터링하는 데 사용됩니다. 이는 분할을 구현하는 데 유용합니다. 설정되지 않은 경우 기본값은 필터링이 아닙니다. |
|
| nodePlacement를 사용하면 Ingress 컨트롤러의 스케줄링을 명시적으로 제어할 수 있습니다. 설정되지 않은 경우 기본값이 사용됩니다. 자세한 내용은 NodePlacement를 참조하십시오. |
|
| replicas는 원하는 개수의 수신 컨트롤러 복제본입니다. 설정되지 않은 경우 기본값은 클러스터 config.openshift.io/v1/ingresses 상태의 defaultPlacement 필드 값에 따라 다릅니다. replicas 값은 Infrastructure CR에서 선택한 필드의 값을 기반으로 설정됩니다. defaultPlacement가 ControlPlane로 설정된 경우 선택한 필드는 controlPlaneTopology가 됩니다. Workers로 설정된 경우 선택한 필드는 infrastructureTopology가 됩니다. 그런 다음 선택한 필드의 값이 SingleReplica 또는 HighlyAvailable인지 여부에 따라 복제본이 1 또는 2로 설정됩니다. 이러한 기본값은 변경될 수 있습니다. |
|
| routeAdmission은 새 경로 클레임을 처리하기 위한 정책(예: 네임스페이스 간 클레임을 허용 또는 거부)을 정의합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 routeAdmission 필드를 참조하십시오. |
|
| routeSelector는 Ingress 컨트롤러에서 서비스를 제공하는 경로 집합을 필터링하는 데 사용됩니다. 이는 분할을 구현하는 데 유용합니다. 설정되지 않은 경우 기본값은 필터링이 아닙니다. |
|
| tlsSecurityProfile은 ingresscontrollers의 TLS 연결 설정을 지정합니다. 설정되지 않은 경우 기본값은 apiservers.config.openshift.io/cluster 리소스를 기반으로 합니다. Old, Intermediate 및 Modern 프로파일 유형을 사용하는 경우 유효한 프로파일 구성은 릴리스마다 변경될 수 있습니다. 예를 들어 릴리스 X.Y.Z에 배포된 Intermediate 프로파일을 사용하기 위한 사양이 있는 경우 릴리스 X.Y.Z+1로 업그레이드하면 새 프로필 구성이 Ingress 컨트롤러에 적용되어 롤아웃이 발생할 수 있습니다. |
|
| tuningOptions는 수신 컨트롤러 Pod의 성능을 조정하기 위한 매개변수를 정의합니다. 모든 필드는 선택 사항이며 설정되지 않은 경우 해당 기본값을 사용합니다. 자세한 내용은 특정 tuningOptions 필드를 참조하십시오. 일반적으로 tuningOptions 내에서 필드를 설정하는 것은 권장되지 않습니다. 기본값은 대부분의 구성에 적합합니다. |
| `` | unsupportedConfigOverrides를 사용하면 지원되지 않는 구성 옵션을 지정할 수 있습니다. 해당 사용은 지원되지 않습니다. |
15.1.2. .spec.clientTLS
- 설명
- clientTLS는 클라이언트 인증서를 요청 및 확인하는 설정을 지정합니다. 이 설정은 에지 종료 및 재암호화 경로에 대해 상호 TLS를 활성화하는 데 사용할 수 있습니다.
- 유형
-
object
- 필수 항목
-
clientCA
-
clientCertificatePolicy
-
속성 | 유형 | 설명 |
---|---|---|
|
| AllowedSubjectPatterns는 요청을 필터링하기 위해 유효한 클라이언트 인증서의 고유 이름과 일치해야 하는 정규식 목록을 지정합니다. 정규 표현식은 PCRE 구문을 사용해야 합니다. 이 목록이 비어 있으면 필터링이 수행되지 않습니다. 목록이 비어 있지 않은 경우 하나 이상의 패턴이 클라이언트 인증서의 고유 이름과 일치해야 합니다. 그렇지 않으면 Ingress 컨트롤러에서 인증서를 거부하고 연결을 거부합니다. |
|
| ClientCA는 클라이언트 인증서를 확인하는 데 사용해야 하는 PEM 인코딩 CA 인증서 번들이 포함된 configmap을 지정합니다. 관리자는 openshift-config 네임스페이스에 이 configmap을 생성해야 합니다. |
|
| clientCertificatePolicy는 Ingress 컨트롤러에서 인증서를 제공하기 위해 클라이언트가 필요한지 여부를 지정합니다. 이 필드는 "필수" 또는 "선택 사항" 값을 허용합니다. 수신 컨트롤러는 클라이언트 인증서만 에지 종료 및 재암호화 TLS 경로에 대해 확인합니다. 일반 텍스트 HTTP 또는 패스스루 TLS 경로에 대한 인증서를 확인할 수 없습니다. |
15.1.3. .spec.clientTLS.clientCA
- 설명
- ClientCA는 클라이언트 인증서를 확인하는 데 사용해야 하는 PEM 인코딩 CA 인증서 번들이 포함된 configmap을 지정합니다. 관리자는 openshift-config 네임스페이스에 이 configmap을 생성해야 합니다.
- 유형
-
object
- 필수 항목
-
name
-
속성 | 유형 | 설명 |
---|---|---|
|
| name은 참조된 구성 맵의 metadata.name입니다. |
15.1.4. .spec.defaultCertificate
- 설명
- defaultCertificate는 Ingress 컨트롤러에서 제공하는 기본 인증서가 포함된 보안에 대한 참조입니다. 경로가 자체 인증서를 지정하지 않으면 defaultCertificate가 사용됩니다. 보안에는 tls.crt: certificate file contents tls.key: 키 파일 내용이 설정되지 않은 경우 와일드카드 인증서가 자동으로 생성되고 사용됩니다. 인증서는 Ingress 컨트롤러 도메인(및 하위 도메인)에 유효하며 생성된 인증서의 CA는 클러스터의 신뢰 저장소와 자동으로 통합됩니다. 와일드카드 인증서를 여러 HTTP/2 사용 경로( ALPN을 의미함)에서 사용하고 공유하는 경우 클라이언트(즉, 특히 브라우저)가 열려 있는 연결을 재사용하기 위해 자유로워집니다. 즉, 클라이언트가 다른 경로에 대한 연결을 재사용할 수 있으며 실패할 가능성이 큽니다. 이러한 동작을 일반적으로 연결 병합이라고 합니다. 사용 중인 인증서(생성 또는 사용자 지정)는 OpenShift의 내장 OAuth 서버와 자동으로 통합됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
15.1.5. .spec.endpointPublishingStrategy
- 설명
- endpointPublishingStrategy는 Ingress 컨트롤러 끝점을 다른 네트워크에 게시하고 로드 밸런서 통합을 활성화하는 데 사용됩니다. 설정되지 않은 경우 기본값은 infrastructure.config.openshift.io/cluster .status.platform: AWS: LoadBalancerService (with External scope) GCP: LoadBalancerService (with External scope) GCP: LoadBalancerService(외부 범위 포함) IBMCloud: LoadBalancerService(외부 범위 포함) Libvirt: LoadBalancerService(외부 범위 포함) Libvirt: HostNetwork (including None) 기본 플랫폼 유형을 업데이트할 수 없습니다.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| HostNetwork에는 HostNetwork 끝점 게시 전략에 대한 매개 변수가 있습니다. type은 HostNetwork인 경우에만 존재합니다. |
|
| LoadBalancer에는 로드 밸런서에 대한 매개변수가 있습니다. type이 LoadBalancerService인 경우에만 표시됩니다. |
|
| NodePort에는 NodePortService 끝점 게시 전략에 대한 매개변수가 있습니다. type이 NodePortService인 경우에만 표시됩니다. |
|
| private에는 Private 엔드포인트 게시 전략에 대한 매개변수가 있습니다. type이 private인 경우에만 존재합니다. |
|
| type은 사용할 게시 전략입니다. 유효한 값은 다음과 같습니다. * LoadBalancerService는 Kubernetes LoadBalancer 서비스를 사용하여 수신 컨트롤러를 게시합니다. 이 구성에서 Ingress 컨트롤러 배포는 컨테이너 네트워킹을 사용합니다. 배포를 게시하기 위해 LoadBalancer 서비스가 생성됩니다. https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer domain이 설정된 경우 LoadBalancer 서비스의 외부 이름을 가리키도록 와일드카드 DNS 레코드가 관리됩니다. DNS 레코드는 dns.config.openshift.io/cluster .spec.publicZone 및 .spec.privateZone에서 정의한 DNS 영역에서만 관리됩니다. 와일드카드 DNS 관리는 현재 AWS, Azure 및 GCP 플랫폼에서만 지원됩니다. * HostNetwork는 Ingress 컨트롤러가 배포된 노드 포트에 Ingress 컨트롤러를 게시합니다. 이 구성에서 Ingress 컨트롤러 배포는 노드 포트 80 및 443에 바인딩된 호스트 네트워킹을 사용합니다. 사용자는 노드 포트를 통해 Ingress 컨트롤러를 게시하도록 외부 로드 밸런서를 구성해야 합니다. * private은 Ingress 컨트롤러를 게시하지 않습니다. 이 구성에서 Ingress 컨트롤러 배포는 컨테이너 네트워킹을 사용하며 명시적으로 게시되지 않습니다. 사용자가 Ingress 컨트롤러를 수동으로 게시해야 합니다. * NodePortService는 Kubernetes NodePort 서비스를 사용하여 수신 컨트롤러를 게시합니다. 이 구성에서 Ingress 컨트롤러 배포는 컨테이너 네트워킹을 사용합니다. 배포를 게시하기 위해 NodePort 서비스가 생성됩니다. 특정 노드 포트는 OpenShift에서 동적으로 할당하지만 정적 포트 할당을 지원하려면 관리형 NodePort 서비스의 노드 포트 필드에 대한 사용자 변경 사항이 유지됩니다. |
15.1.6. .spec.endpointPublishingStrategy.hostNetwork
- 설명
- HostNetwork에는 HostNetwork 끝점 게시 전략에 대한 매개 변수가 있습니다. type은 HostNetwork인 경우에만 존재합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| httpPort는 HTTP 요청을 수신 대기하는 데 사용해야 하는 호스트의 포트입니다. 포트 80을 이미 사용 중인 경우 이 필드를 설정해야 합니다. 이 값은 클러스터의 NodePort 범위와 일치해서는 안 됩니다. 값이 0이거나 지정하지 않으면 기본값은 80입니다. |
|
| httpsPort는 HTTPS 요청을 수신 대기하는 데 사용해야 하는 호스트의 포트입니다. 443 포트를 이미 사용 중인 경우 이 필드를 설정해야 합니다. 이 값은 클러스터의 NodePort 범위와 일치해서는 안 됩니다. 값이 0이거나 지정하지 않으면 기본값은 443입니다. |
|
| protocol은 IngressController에서 들어오는 연결이 일반 TCP를 사용하도록 예상하는지 또는 IngressController에서 PROXY 프로토콜을 사용할지 여부를 지정합니다. PROXY 프로토콜은 IngressController로 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 데 지원하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. 다음 값은 이 필드에 유효합니다. * 빈 문자열. * "TCP". * "PROXY". 빈 문자열은 PROXY 프로토콜이 없는 TCP인 기본값을 지정합니다. 기본값은 변경될 수 있습니다. |
|
| statsPort는 라우터의 통계가 게시되는 호스트의 포트입니다. 이 값은 클러스터의 NodePort 범위와 일치해서는 안 됩니다. 외부 로드 밸런서가 이 IngressController에 대한 연결을 전달하도록 구성된 경우 로드 밸런서에서 상태 점검에 이 포트를 사용해야 합니다. 로드 밸런서는 지정된 노드의 이 포트에 HTTP 프로브를 보낼 수 있으며 경로 /healthz/ready로 Ingress 컨트롤러가 노드에서 트래픽을 수신할 준비가 되었는지 확인할 수 있습니다. 적절한 작동의 경우 상태 점검이 준비되었다고 보고할 때까지 로드 밸런서에서 노드로 트래픽을 전달하지 않아야 합니다. 또한 로드 밸런서는 /healthz/ready 보고가 준비되지 않음을 시작한 후 최대 45초 이내에 요청 전달을 중지해야 합니다. 5초의 시간 초과로 5초에서 10초마다 프로빙하는 것은 각각 정상 또는 비정상 상태가 되는 두 개의 성공 또는 실패한 요청의 임계값을 각각 테스트한 값입니다. 값이 0이거나 지정하지 않으면 기본값은 1936입니다. |
15.1.7. .spec.endpointPublishingStrategy.loadBalancer
- 설명
- LoadBalancer에는 로드 밸런서에 대한 매개변수가 있습니다. type이 LoadBalancerService인 경우에만 표시됩니다.
- 유형
-
object
- 필수 항목
-
dnsManagementPolicy
-
scope
-
속성 | 유형 | 설명 |
---|---|---|
| `` | allowedSourceRanges는 로드 밸런서에 대한 액세스를 제한해야 하는 IP 주소 범위의 허용 목록을 지정합니다. 각 범위는 CIDR 표기법을 사용하여 지정해야 합니다(예:). "10.0.0.0/8" or "fd00::/8"). 범위가 지정되지 않은 경우 IPv4의 경우 "0.0.0.0/0" 및 IPv6의 경우 "::/0"이 기본적으로 사용되어 모든 소스 주소를 허용합니다. allowedSourceRanges 필드가 없는 이전 버전의 OpenShift에서 원활하게 마이그레이션하기 위해 "openshift-ingress" 네임스페이스에서 "router-<ingresscontroller name>" 서비스에 service.beta.kubernetes.io/load-balancer-source-ranges 주석을 설정할 수 있으며, allowedSourceRanges가 OpenShift 4.12에 비어 있는 경우 이 주석이 적용됩니다. |
|
| dnsManagementPolicy는 로드 밸런서 서비스와 연결된 와일드카드 DNS 레코드의 라이프사이클이 Ingress Operator에 의해 관리되는지를 나타냅니다. 기본값은 Managed입니다. 유효한 값은 Managed 및 Unmanaged입니다. |
|
| providerParameters에는 기본 인프라 공급자와 관련된 원하는 로드 밸런서 정보가 있습니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 providerParameters 필드를 참조하십시오. |
|
| scope는 로드 밸런서가 노출되는 범위를 나타냅니다. 가능한 값은 "외부" 및 "내부"입니다. |
15.1.8. .spec.endpointPublishingStrategy.loadBalancer.providerParameters
- 설명
- providerParameters에는 기본 인프라 공급자와 관련된 원하는 로드 밸런서 정보가 있습니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 providerParameters 필드를 참조하십시오.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| AWS는 AWS 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 aws 필드를 참조하십시오. |
|
| GCP는 GCP 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 gcp 필드를 참조하십시오. |
|
| IBM은 IBM Cloud 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 IBM 필드를 참조하십시오. |
|
| type은 로드 밸런서의 기본 인프라 공급자입니다. 허용되는 값은 "AWS", "Azure", "BareMetal", "GCP", "IBM", "Nutanix", "OpenStack", "VSphere"입니다. |
15.1.9. .spec.endpointPublishingStrategy.loadBalancer.providerParameters.aws
- 설명
- AWS는 AWS 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 aws 필드를 참조하십시오.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| ClassicLoadBalancerParameters에는 AWS 클래식 로드 밸런서에 대한 구성 매개변수가 있습니다. type이 Classic인 경우에만 표시됩니다. |
|
| NetworkLoadBalancerParameters에는 AWS 네트워크 로드 밸런서에 대한 구성 매개변수가 있습니다. type은 NLB인 경우에만 존재합니다. |
|
| type은 ingresscontroller를 인스턴스화할 AWS 로드 밸런서의 유형입니다. 유효한 값은 * "Classic": 전송 계층(TCP/SSL) 또는 애플리케이션 계층(HTTP/HTTPS)에서 라우팅을 결정하는 Classic Load Balancer입니다. 자세한 내용은 https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#clb * "NLB": 전송 계층(TCP/SSL)에서 라우팅을 결정하는 네트워크 로드 밸런서 장치입니다. 자세한 내용은 다음을 참조하십시오. https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#nlb |
15.1.10. .spec.endpointPublishingStrategy.loadBalancer.providerParameters.aws.classicLoadBalancer
- 설명
- ClassicLoadBalancerParameters에는 AWS 클래식 로드 밸런서에 대한 구성 매개변수가 있습니다. type이 Classic인 경우에만 표시됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| connectionIdleTimeout은 로드 밸런서가 연결을 닫기 전에 연결이 유휴 상태일 수 있는 최대 기간을 지정합니다. 값은 시간 기간 값으로 구문 분석할 수 있어야 합니다. https://pkg.go.dev/time#ParseDuration 을 참조하십시오. nil 또는 0 값은 의견이 없으며, 이 경우 기본값이 사용됩니다. 이 필드의 기본값은 60s입니다. 이 기본값은 변경될 수 있습니다. |
15.1.11. .spec.endpointPublishingStrategy.loadBalancer.providerParameters.aws.networkLoadBalancer
- 설명
- NetworkLoadBalancerParameters에는 AWS 네트워크 로드 밸런서에 대한 구성 매개변수가 있습니다. type은 NLB인 경우에만 존재합니다.
- 유형
-
object
15.1.12. .spec.endpointPublishingStrategy.loadBalancer.providerParameters.gcp
- 설명
- GCP는 GCP 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 gcp 필드를 참조하십시오.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| clientAccess는 내부 로드 밸런서에 대해 클라이언트 액세스가 제한되는 방법을 설명합니다. 유효한 값은 * "Global": 글로벌 클라이언트 액세스를 사용하여 내부 로드 밸런서를 지정하면 VPC 내의 모든 리전의 클라이언트가 로드 밸런서와 통신할 수 있습니다. https://cloud.google.com/kubernetes-engine/docs/how-to/internal-load-balancing#global_access * "local": 로컬 클라이언트 액세스를 사용하여 내부 로드 밸런서를 지정하면 GCP 로드 밸런서가 로드 밸런서와 통신할 수 있는 것과 동일한 리전(및 VPC) 내의 클라이언트만 의미합니다. 이는 기본 동작입니다. https://cloud.google.com/load-balancing/docs/internal#client_access |
15.1.13. .spec.endpointPublishingStrategy.loadBalancer.providerParameters.ibm
- 설명
- IBM은 IBM Cloud 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 IBM 필드를 참조하십시오.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| protocol은 로드 밸런서에서 PROXY 프로토콜을 사용하여 IngressController로 연결을 전달하는지 여부를 지정합니다. https://cloud.ibm.com/docs/containers?topic=containers-vpc-lbaas PROXY 프로토콜에서 "service.kubernetes.io/ibm-load-balancer-cloud-provider-enable-features: "proxy-protocol"을 사용하여 IngressController에 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. protocol에 유효한 값은 TCP, PROXY 및 omitted입니다. 생략하면 이는 의견이 없으며 플랫폼은 시간이 지남에 따라 변경될 수 있는 적절한 기본값을 선택할 수 있음을 의미합니다. 현재 기본값은 프록시 프로토콜이 활성화되지 않은 TCP입니다. |
15.1.14. .spec.endpointPublishingStrategy.nodePort
- 설명
- NodePort에는 NodePortService 끝점 게시 전략에 대한 매개변수가 있습니다. type이 NodePortService인 경우에만 표시됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| protocol은 IngressController에서 들어오는 연결이 일반 TCP를 사용하도록 예상하는지 또는 IngressController에서 PROXY 프로토콜을 사용할지 여부를 지정합니다. PROXY 프로토콜은 IngressController로 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 데 지원하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. 다음 값은 이 필드에 유효합니다. * 빈 문자열. * "TCP". * "PROXY". 빈 문자열은 PROXY 프로토콜이 없는 TCP인 기본값을 지정합니다. 기본값은 변경될 수 있습니다. |
15.1.15. .spec.endpointPublishingStrategy.private
- 설명
- private에는 Private 엔드포인트 게시 전략에 대한 매개변수가 있습니다. type이 private인 경우에만 존재합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| protocol은 IngressController에서 들어오는 연결이 일반 TCP를 사용하도록 예상하는지 또는 IngressController에서 PROXY 프로토콜을 사용할지 여부를 지정합니다. PROXY 프로토콜은 IngressController로 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 데 지원하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. 다음 값은 이 필드에 유효합니다. * 빈 문자열. * "TCP". * "PROXY". 빈 문자열은 PROXY 프로토콜이 없는 TCP인 기본값을 지정합니다. 기본값은 변경될 수 있습니다. |
15.1.16. .spec.httpCompression
- 설명
- httpCompression은 HTTP 트래픽 압축 정책을 정의합니다. 기본적으로 HTTP 압축이 없습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| Mimetypes는 압축을 적용해야 하는 MIME 유형 목록입니다. 이 목록은 비어 있을 수 있습니다. 이 경우 Ingress 컨트롤러가 압축을 적용하지 않습니다. 참고: 모든 MIME 유형이 압축에서 이점을 얻는 것은 아니지만 HAProxy는 여전히 리소스를 사용하여 지시된 경우 압축합니다. 일반적으로 말하면, 텍스트 (html, csss, js 등) 형식은 압축의 이점이지만 이미 압축 된 형식 (이미지, 오디오, 비디오 등)은 다시 압축에 소요되는 시간과 cpu의 교환에 거의 도움이되지 않습니다. https://joehonton.medium.com/the-gzip-penalty-d31bd697f1a2에서 참조하십시오. |
15.1.17. .spec.httpErrorCodePages
- 설명
- httpErrorCodePages는 사용자 정의 오류 페이지가 포함된 configmap을 지정합니다. 관리자는 openshift-config 네임스페이스에 이 configmap을 생성해야 합니다. 이 configmap에는 "error-page-<error code>.http 형식의 키가 있어야 합니다. 여기서 <error code>는 HTTP 오류 코드입니다. 예를 들어 "error-page-503.http"는 HTTP 503 응답에 대한 오류 페이지를 정의합니다. 현재 503 및 404 응답에 대한 오류 페이지만 사용자 지정할 수 있습니다. configmap의 각 값은 HTTP 헤더를 포함하여 전체 응답이어야 합니다. eg- https://raw.githubusercontent.com/openshift/router/fadab45747a9b30cc3f0a4b41ad2871f95827a93/images/router/haproxy/conf/error-page-503.http 이 필드가 비어 있으면 Ingress 컨트롤러에서 기본 오류 페이지를 사용합니다.
- 유형
-
object
- 필수 항목
-
name
-
속성 | 유형 | 설명 |
---|---|---|
|
| name은 참조된 구성 맵의 metadata.name입니다. |
15.1.18. .spec.httpHeaders
- 설명
- httpHeaders는 HTTP 헤더에 대한 정책을 정의합니다. 이 필드가 비어 있으면 기본값이 사용됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| forwardedHeaderPolicy는 IngressController가 Forwarded, X-Forwarded-For, X-Forwarded-Host, X-Forwarded-Port, X-Forwarded-Proto, X-Forwarded-Proto-Version HTTP 헤더를 설정하는 시기와 방법을 지정합니다. 값은 IngressController에서 헤더를 추가하고 기존 헤더를 보존하도록 지정하는 * "Append" 중 하나일 수 있습니다. * IngressController가 헤더를 설정하고 기존 Forwarded 또는 X-Forwarded-* 헤더를 교체하도록 지정하는 "replace". * "IfNone"은 IngressController가 아직 설정되지 않은 경우 헤더를 설정하도록 지정합니다. * "never"는 IngressController가 헤더를 설정하지 않고 기존 헤더를 보존하도록 지정하는 "never"입니다. 기본적으로 정책은 "Append"입니다. |
| `` | headerNameCaseAdjustments는 HTTP 헤더 이름에 적용할 수 있는 대소문자 조정을 지정합니다. 각 조정은 원하는 대문자를 사용하여 HTTP 헤더 이름으로 지정됩니다. 예를 들어 "X-Forwarded-For"를 지정하면 지정된 대문자를 갖도록 "x-forwarded-for" HTTP 헤더를 조정해야 합니다. 이러한 조정은 HTTP/1을 사용하는 경우에만 일반 텍스트, 에지 종료 및 재암호화 경로에 적용됩니다. 요청 헤더의 경우 이러한 조정은 haproxy.router.openshift.io/h1-adjust-case=true 주석이 있는 경로에만 적용됩니다. 응답 헤더의 경우 이러한 조정이 모든 HTTP 응답에 적용됩니다. 이 필드가 비어 있으면 요청 헤더가 조정되지 않습니다. |
|
| uniqueid는 수신 컨트롤러가 들어오는 HTTP 요청에 삽입해야 하는 사용자 정의 HTTP 헤더의 구성을 설명합니다. 일반적으로 이 헤더는 HTTP 요청에 고유한 값을 갖도록 구성됩니다. 헤더는 애플리케이션에서 사용하거나 액세스 로그에 포함되어 개별 HTTP 요청을 쉽게 추적할 수 있습니다. 이 필드가 비어 있으면 이러한 헤더가 요청에 삽입되지 않습니다. |
15.1.19. .spec.httpHeaders.uniqueId
- 설명
- uniqueid는 수신 컨트롤러가 들어오는 HTTP 요청에 삽입해야 하는 사용자 정의 HTTP 헤더의 구성을 설명합니다. 일반적으로 이 헤더는 HTTP 요청에 고유한 값을 갖도록 구성됩니다. 헤더는 애플리케이션에서 사용하거나 액세스 로그에 포함되어 개별 HTTP 요청을 쉽게 추적할 수 있습니다. 이 필드가 비어 있으면 이러한 헤더가 요청에 삽입되지 않습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| format은 삽입된 HTTP 헤더의 값을 지정합니다. 이 필드는 이름을 지정하지 않는 한 적용되지 않습니다. HAProxy 기반 수신 컨트롤러 구현의 경우 이 형식은 HTTP 로그 형식과 동일한 구문을 사용합니다. 필드가 비어 있는 경우 기본값은 "%{+X}o\\ %ci:%cp_%fi:%fp_%rt:%rt:%pid"; 해당 HAProxy 설명서를 참조하십시오. http://cbonte.github.io/haproxy-dconv/2.0/configuration.html#8.2.3 |
|
| name은 Ingress 컨트롤러가 HTTP 요청에 삽입해야 하는 HTTP 헤더의 이름(예: "unique-id")을 지정합니다. 필드의 값은 RFC 2616 섹션 4.2에 정의된 대로 유효한 HTTP 헤더 이름이어야 합니다. 필드가 비어 있으면 헤더가 삽입되지 않습니다. |
15.1.20. .spec.logging
- 설명
- logging은 어디에서 기록해야 하는지에 대한 매개변수를 정의합니다. 이 필드가 비어 있으면 작동 로그는 활성화되지만 액세스 로그는 비활성화됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| access는 클라이언트 요청을 로깅하는 방법을 설명합니다. 이 필드가 비어 있으면 액세스 로깅이 비활성화됩니다. |
15.1.21. .spec.logging.access
- 설명
- access는 클라이언트 요청을 로깅하는 방법을 설명합니다. 이 필드가 비어 있으면 액세스 로깅이 비활성화됩니다.
- 유형
-
object
- 필수 항목
-
대상
-
속성 | 유형 | 설명 |
---|---|---|
|
| destination은 액세스 로그가 이동하는 위치입니다. |
| `` | httpCaptureCookies는 액세스 로그에 캡처해야 하는 HTTP 쿠키를 지정합니다. 이 필드가 비어 있으면 쿠키가 캡처되지 않습니다. |
|
| httpCaptureHeaders는 액세스 로그에 캡처해야 하는 HTTP 헤더를 정의합니다. 이 필드가 비어 있으면 헤더가 캡처되지 않습니다. 이 옵션은 일반 텍스트 HTTP 연결에만 적용되고 Ingress 컨트롤러가 암호화를 종료하는 보안 HTTP 연결(즉, 에지 종료 또는 재암호화 연결)에만 적용됩니다. TLS 패스스루 연결에 대해 헤더를 캡처할 수 없습니다. |
|
| httpLogFormat은 HTTP 요청에 대한 로그 메시지의 형식을 지정합니다. 이 필드가 비어 있으면 로그 메시지는 구현의 기본 HTTP 로그 형식을 사용합니다. HAProxy의 기본 HTTP 로그 형식의 경우 HAProxy 문서를 참조하십시오. http://cbonte.github.io/haproxy-dconv/2.0/configuration.html#8.2.3 이 형식은 일반 텍스트 HTTP 연결에만 적용되고 수신 컨트롤러가 암호화를 종료하는 HTTP 연결(즉, 에지 종료 또는 재암호화 연결)에만 적용됩니다. TLS 패스스루 연결의 로그 형식에는 영향을 미치지 않습니다. |
|
| logEmptyRequests는 요청이 수신되지 않은 연결을 로깅하는 방법을 지정합니다. 일반적으로 이러한 빈 요청은 로드 밸런서의 상태 프로브 또는 웹 브라우저의 추측 연결("사전 연결")에서 제공되며, 이 경우 이러한 요청을 기록하는 것은 바람직하지 않을 수 있습니다. 그러나 이러한 요청은 네트워크 오류로 인해 발생할 수 있으며 이 경우 빈 요청을 로깅하는 것이 오류를 진단하는 데 유용할 수 있습니다. 또한 이러한 요청은 포트 검사로 인해 발생할 수 있으며, 이 경우 빈 요청을 로깅하면 침입 시도를 탐지하는 데 도움이 될 수 있습니다. 이 필드에 허용되는 값은 "Log" 및 "Ignore"입니다. 기본값은 "Log"입니다. |
15.1.22. .spec.logging.access.destination
- 설명
- destination은 액세스 로그가 이동하는 위치입니다.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| 컨테이너에는 컨테이너 로깅 대상에 대한 매개변수가 있습니다. type이 Container인 경우에만 존재합니다. |
|
| syslog에는 syslog 끝점의 매개변수가 포함되어 있습니다. type이 Syslog인 경우에만 표시됩니다. |
|
| type은 로그의 대상 유형입니다. * Container Ingress Operator는 수신 컨트롤러 Pod에서 "logs"라는 사이드카 컨테이너를 구성하고 사이드카에 로그를 작성하도록 수신 컨트롤러를 구성합니다. 그런 다음 로그를 컨테이너 로그로 사용할 수 있습니다. 관리자는 이 사이드카에서 로그를 읽는 사용자 정의 로깅 솔루션을 구성해야 합니다. 컨테이너 로그를 사용하면 로그 비율이 컨테이너 런타임 또는 사용자 정의 로깅 솔루션의 용량을 초과하면 로그가 삭제될 수 있습니다. * syslog 로그는 syslog 끝점으로 전송됩니다. 관리자는 syslog 메시지를 수신할 수 있는 끝점을 지정해야 합니다. 관리자가 사용자 정의 syslog 인스턴스를 구성해야 합니다. |
15.1.23. .spec.logging.access.destination.container
- 설명
- 컨테이너에는 컨테이너 로깅 대상에 대한 매개변수가 있습니다. type이 Container인 경우에만 존재합니다.
- 유형
-
object
15.1.24. .spec.logging.access.destination.syslog
- 설명
- syslog에는 syslog 끝점의 매개변수가 포함되어 있습니다. type이 Syslog인 경우에만 표시됩니다.
- 유형
-
object
- 필수 항목
-
address
-
port
-
속성 | 유형 | 설명 |
---|---|---|
|
| address는 로그 메시지를 수신하는 syslog 끝점의 IP 주소입니다. |
|
| facility는 로그 메시지의 syslog 기능을 지정합니다. 이 필드가 비어 있으면 기능은 "local1"입니다. |
|
| MaxLength는 syslog 메시지의 최대 길이입니다. 이 필드가 비어 있으면 maxLength가 "1024"로 설정됩니다. |
|
| port는 로그 메시지를 수신하는 syslog 끝점의 UDP 포트 번호입니다. |
15.1.25. .spec.logging.access.httpCaptureHeaders
- 설명
- httpCaptureHeaders는 액세스 로그에 캡처해야 하는 HTTP 헤더를 정의합니다. 이 필드가 비어 있으면 헤더가 캡처되지 않습니다. 이 옵션은 일반 텍스트 HTTP 연결에만 적용되고 Ingress 컨트롤러가 암호화를 종료하는 보안 HTTP 연결(즉, 에지 종료 또는 재암호화 연결)에만 적용됩니다. TLS 패스스루 연결에 대해 헤더를 캡처할 수 없습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
| `` | request는 캡처할 HTTP 요청 헤더를 지정합니다. 이 필드가 비어 있으면 요청 헤더가 캡처되지 않습니다. |
| `` | response는 캡처할 HTTP 응답 헤더를 지정합니다. 이 필드가 비어 있으면 응답 헤더가 캡처되지 않습니다. |
15.1.26. .spec.namespaceSelector
- 설명
- namespaceSelector는 Ingress 컨트롤러에서 서비스를 제공하는 네임스페이스 집합을 필터링하는 데 사용됩니다. 이는 분할을 구현하는 데 유용합니다. 설정되지 않은 경우 기본값은 필터링이 아닙니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
15.1.27. .spec.namespaceSelector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
15.1.28. .spec.namespaceSelector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
15.1.29. .spec.nodePlacement
- 설명
- nodePlacement를 사용하면 Ingress 컨트롤러의 스케줄링을 명시적으로 제어할 수 있습니다. 설정되지 않은 경우 기본값이 사용됩니다. 자세한 내용은 NodePlacement를 참조하십시오.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| nodeSelector는 수신 컨트롤러 배포에 적용되는 노드 선택기입니다. 설정된 경우 지정된 선택기가 사용되고 기본값을 대체합니다. 설정되지 않은 경우 기본값은 클러스터 config.openshift.io/v1/ingresses 상태의 defaultPlacement 필드 값에 따라 다릅니다. defaultPlacement가 Workers인 경우 기본값은 kubernetes.io/os: linux node-role.kubernetes.io/worker: '' defaultPlacement가 ControlPlane인 경우 기본값은 kubernetes.io/os: linux node-role.kubernetes.io/master: '' 이 기본값은 변경될 수 있습니다. nodeSelector.matchExpressions 사용은 지원되지 않습니다. nodeSelector.matchLabels만 사용할 수 있습니다. 이는 Kubernetes API의 제한 사항입니다. Pod 사양에서는 노드 선택기에 대한 복잡한 표현식을 허용하지 않습니다. |
|
| 허용 오차는 수신 컨트롤러 배포에 적용되는 허용 오차 목록입니다. 기본값은 빈 목록입니다. https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/에서 참조하십시오. |
|
| 이 허용 오차는 일치하는 연산자 <operator>를 사용하여 트리플 <key,value,effect>와 일치하는 테인트를 허용하도록 연결됩니다. |
15.1.30. .spec.nodePlacement.nodeSelector
- 설명
- nodeSelector는 수신 컨트롤러 배포에 적용되는 노드 선택기입니다. 설정된 경우 지정된 선택기가 사용되고 기본값을 대체합니다. 설정되지 않은 경우 기본값은 클러스터 config.openshift.io/v1/ingresses 상태의 defaultPlacement 필드 값에 따라 다릅니다. defaultPlacement가 Workers인 경우 기본값은 kubernetes.io/os: linux node-role.kubernetes.io/worker: '' defaultPlacement가 ControlPlane인 경우 기본값은 kubernetes.io/os: linux node-role.kubernetes.io/master: '' 이 기본값은 변경될 수 있습니다. nodeSelector.matchExpressions 사용은 지원되지 않습니다. nodeSelector.matchLabels만 사용할 수 있습니다. 이는 Kubernetes API의 제한 사항입니다. Pod 사양에서는 노드 선택기에 대한 복잡한 표현식을 허용하지 않습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
15.1.31. .spec.nodePlacement.nodeSelector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
15.1.32. .spec.nodePlacement.nodeSelector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
15.1.33. .spec.nodePlacement.tolerations
- 설명
- 허용 오차는 수신 컨트롤러 배포에 적용되는 허용 오차 목록입니다. 기본값은 빈 목록입니다. https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/에서 참조하십시오.
- 유형
-
array
15.1.34. .spec.nodePlacement.tolerations[]
- 설명
- 이 허용 오차는 일치하는 연산자 <operator>를 사용하여 트리플 <key,value,effect>와 일치하는 테인트를 허용하도록 연결됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| effect는 일치시킬 테인트 효과를 나타냅니다. 비어있는 것은 모든 테인트 효과와 일치함을 의미합니다. 지정된 경우 허용되는 값은 NoSchedule, PreferNoSchedule 및 NoExecute입니다. |
|
| 키는 허용 오차가 적용되는 taint 키입니다. 비어있는 것은 모든 taint 키와 일치함을 의미합니다. 키가 비어 있으면 연산자가 Exists여야 합니다. 이 조합은 모든 값과 모든 키와 일치하는 것을 의미합니다. |
|
| Operator는 값에 대한 키의 관계를 나타냅니다. 유효한 연산자는 Exists 및 Equal입니다. 기본값은 Equal입니다. exists는 값에 대한 와일드카드와 동일하므로 Pod에서 특정 카테고리의 모든 테인트를 허용할 수 있습니다. |
|
| tolerationSeconds는 허용 오차(영향이 NoExecute여야 하며, 그렇지 않으면 이 필드가 무시됨) 테인트를 허용하는 기간을 나타냅니다. 기본적으로 설정되어 있지 않습니다. 즉, 테인트를 영구적으로 허용합니다(제거되지 않음). 0 및 음수 값은 시스템에서 0( 즉시 제거)으로 처리됩니다. |
|
| 값은 허용 오차와 일치하는 taint 값입니다. 연산자가 Exists인 경우 값은 비어 있어야 합니다. 그렇지 않으면 일반 문자열만 사용해야 합니다. |
15.1.35. .spec.routeAdmission
- 설명
- routeAdmission은 새 경로 클레임을 처리하기 위한 정책(예: 네임스페이스 간 클레임을 허용 또는 거부)을 정의합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 routeAdmission 필드를 참조하십시오.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| namespaceOwnership은 네임스페이스에서 호스트 이름 클레임을 처리하는 방법을 설명합니다. value must be one of: - Strict: 다른 네임스페이스의 경로가 동일한 호스트를 요청하는 것을 허용하지 마십시오. - InterNamespaceAllowed: 경로가 네임스페이스에서 동일한 호스트 이름의 다른 경로를 클레임할 수 있습니다. 비어 있는 경우 기본값은 Strict입니다. |
|
| wildcardPolicy는 와일드카드 정책이 있는 경로를 Ingress 컨트롤러에 대해 처리하는 방법을 설명합니다. wildcardPolicy는 경로의 와일드카드 정책을 기반으로 Ingress 컨트롤러에서 공개한 경로 [1] 사용을 제어합니다. [1][1]: WildcardsAllowed에서 WildcardsAllowed로 WildcardPolicy를 업데이트하면 하위 도메인의 와일드카드 정책이 있는 허용된 경로가 하위 도메인의 작동을 중지합니다. https://github.com/openshift/api/blob/master/route/v1/types.go Ingress 컨트롤러에서 이러한 경로를 읽을 수 있도록 None의 와일드카드 정책으로 업데이트해야 합니다. wildcardPolicy는 WildcardsAllowed 및 WildcardsDisallowed 값을 지원합니다. 비어 있는 경우 기본값은 "wildcardsDisallowed"입니다. |
15.1.36. .spec.routeSelector
- 설명
- routeSelector는 Ingress 컨트롤러에서 서비스를 제공하는 경로 집합을 필터링하는 데 사용됩니다. 이는 분할을 구현하는 데 유용합니다. 설정되지 않은 경우 기본값은 필터링이 아닙니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
15.1.37. .spec.routeSelector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
15.1.38. .spec.routeSelector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
15.1.39. .spec.tlsSecurityProfile
- 설명
- tlsSecurityProfile은 ingresscontrollers의 TLS 연결 설정을 지정합니다. 설정되지 않은 경우 기본값은 apiservers.config.openshift.io/cluster 리소스를 기반으로 합니다. Old, Intermediate 및 Modern 프로파일 유형을 사용하는 경우 유효한 프로파일 구성은 릴리스마다 변경될 수 있습니다. 예를 들어 릴리스 X.Y.Z에 배포된 Intermediate 프로파일을 사용하기 위한 사양이 있는 경우 릴리스 X.Y.Z+1로 업그레이드하면 새 프로필 구성이 Ingress 컨트롤러에 적용되어 롤아웃이 발생할 수 있습니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
| `` | Custom은 사용자 정의 TLS 보안 프로필입니다. 잘못된 구성으로 사용자 지정 프로필을 사용하는 것은 치명적일 수 있습니다. 사용자 정의 프로파일의 예는 다음과 같습니다: - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-CHACHA20-POLY1305 - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-ECDSA-AES128-GCM-SHA256 minTLSVersion: TLSv1.1 |
| `` | Intermediate는 다음을 기반으로 하는 TLS 보안 프로필입니다. https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28recommended.29 (yaml): 암호화: - TLS_AES_128_GCM_SHA256 - TLS_AES_256_GCM_SHA384 - TLS_CHACHA20_GCM_SHA384 - TLS_CHACHA20_POLY1305_SHA256 - ECDHE-ECDSA-AES128-GCM-SHA256 - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-RSA-AES256-GCM-SHA384 - ECDHE-RSA-AES256-GCM-SHA384 - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-CHACHA20-POLY1305 - DHE-RSA-AES128-GCM-SHA256 - DHE-RSA-AES256-GCM-SHA384 minTLSVersion: TLSv1.2 |
| `` | modern는 https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility 기반 TLS 보안 프로필입니다. (yaml): 암호화: - TLS_AES_128_GCM_SHA256 - TLS_AES_256_GCM_SHA384 - TLS_CHACHA20_POLY1305_POLY1305_SHA256 minTLSVersion: TLSv1.3 참고: 현재 지원되지 않습니다. |
| `` | Old는 다음을 기반으로 하는 TLS 보안 프로필입니다. https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility (yaml): 암호화: - TLS_AES_128_GCM_SHA256 - TLS_AES_256_GCM_SHA384 - TLS_CHACHA20_GCM_SHA384 - TLS_CHACHA20_POLY1305_SHA256 - ECDHE-ECDSA-AES128-GCM-SHA256 - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-RSA-AES256-GCM-SHA384 - ECDHE-RSA-aes256-GCM-sha384 - ECDHE-ECDSA-chaCHA20-POLY1305 - ECDHE-RSA-chaCHA20-POLY1305 - DHE-RSA-aes128-GCM-sha256 - DHE-RSA-aes256-GCM-sha384 - DHE-RSA-chaCHA20-POLY1305 - ECDHE-ECDSA-aes128-sha256 - ECDHE-RSA-aes128-sha256 - ECDHE-ECDSA-SHA - ECDHE-RSA-aes128-aes128-aes128-aes256-sha384 - ECDHE-RSA-aes256-sha384 - ECDHE-ECDSA-aes256-ECDSA-aes256-RSA-aes-SHA-SHA - DHE-RSA-AES128-SHA256 - DHE-RSA-AES256-SHA256 - AES256-GCM-SHA256 - AES256-GCM-SHA384 - AES128-SHA256 - AES128-SHA - AES128-SHA - AES256-SHA - DES-CBC3-SHA minTLSVersion: TLSv1.0 |
|
| type은 Old, Intermediate, Modern 또는 Custom 중 하나입니다. Custom은 개별 TLS 보안 프로파일 매개변수를 지정하는 기능을 제공합니다. 이전, Intermediate 및 Modern는 다음을 기반으로 하는 TLS 보안 프로필입니다. https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations 프로필은 의도 기반이므로 새 암호가 개발되고 기존 암호가 안전하지 않은 것으로 확인되면 시간이 지남에 따라 변경될 수 있습니다. 프로세스에서 사용할 수 있는 암호에 따라 목록이 줄어들 수 있습니다. Modern 프로파일은 아직 공통 소프트웨어 라이브러리에서 잘 채택되지 않았기 때문에 현재 지원되지 않습니다. |
15.1.40. .spec.tuningOptions
- 설명
- tuningOptions는 수신 컨트롤러 Pod의 성능을 조정하기 위한 매개변수를 정의합니다. 모든 필드는 선택 사항이며 설정되지 않은 경우 해당 기본값을 사용합니다. 자세한 내용은 특정 tuningOptions 필드를 참조하십시오. 일반적으로 tuningOptions 내에서 필드를 설정하는 것은 권장되지 않습니다. 기본값은 대부분의 구성에 적합합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| clientFinTimeout은 서버/backend 연결에 대한 클라이언트 응답을 기다리는 동안 연결이 열린 상태로 유지되는 시간을 정의합니다. 설정되지 않은 경우 기본 제한 시간은 1s입니다. |
|
| clientTimeout은 클라이언트 응답을 기다리는 동안 연결이 열린 상태로 유지되는 시간을 정의합니다. 설정되지 않은 경우 기본 제한 시간은 30s입니다. |
|
| headerBufferBytes는 IngressController 연결 세션에 대해 예약해야 하는 메모리(바이트 단위)를 설명합니다. IngressController(https://tools.ietf.org/html/rfc7540)에 HTTP/2가 활성화된 경우 이 값은 16384 이상이어야 합니다. 이 필드가 비어 있으면 IngressController는 기본값 32768바이트를 사용합니다. 이 필드를 설정하는 것은 일반적으로 headerBufferBytes 값이 너무 작으면 IngressController 및 headerBufferBytes 값이 너무 크면 IngressController가 필요 이상으로 많은 메모리를 사용할 수 있으므로 권장되지 않습니다. |
|
| headerBufferMaxRewriteBytes는 HTTP 헤더 재작성 및 IngressController 연결 세션에 대한 headerBufferBytes의 (바이트 단위)를 예약해야 하는 메모리 양을 설명합니다. 들어오는 HTTP 요청은 (headerBufferBytes - headerBufferMaxRewriteBytes) 바이트로 제한되므로 headerBufferBytes는 headerBufferMaxRewriteBytes보다 커야 합니다. 이 필드가 비어 있으면 IngressController는 기본값인 8192바이트를 사용합니다. 헤더BufferMaxRewriteBytes 값이 너무 작으면 IngressController 및 headerBufferMaxRewriteBytes 값이 너무 크면 IngressController가 필요한 것보다 더 많은 메모리를 사용할 수 있으므로 일반적으로 이 필드를 설정하지 않는 것이 좋습니다. |
|
| healthCheckInterval은 구성된 백엔드의 두 연속 상태 점검 간에 라우터가 대기하는 시간을 정의합니다. 이 값은 모든 경로에 대해 전역적으로 적용되지만 경로 주석 "router.openshift.io/haproxy.health.check.interval"로 덮어쓸 수 있습니다. 10진수의 부호 없는 기간 문자열은 각각 선택적 분수와 단위 접미사인 "300ms", "1.5h" 또는 "2h45m"이 필요합니다. 유효한 시간 단위는 "ns", "us"(또는 " Cryostats" U+00B5 또는 ">&#s" U+03BC), "ms", "s", "h"입니다. 이 값을 5s 미만으로 설정하면 TCP 상태 점검이 너무 자주 발생하고 SYN 패킷 이림으로 인해 과도한 트래픽이 발생할 수 있습니다. 또는 이 값을 너무 높게 설정하면 더 이상 사용할 수 없지만 아직 탐지되지 않은 백엔드 서버로 인해 대기 시간이 증가할 수 있습니다. 빈 또는 제로 상태CheckInterval은 의견이 없으며 IngressController는 시간이 지남에 따라 변경될 수 있는 기본값을 선택합니다. 현재 기본 healthCheckInterval 값은 5s입니다. 현재 허용되는 최소 값은 1s이고 허용되는 최대 값은 2147483647ms(24.85일)입니다. 둘 다 시간에 따라 변경될 수 있습니다. |
|
| maxConnections는 HAProxy 프로세스별로 설정할 수 있는 최대 동시 연결 수를 정의합니다. 이 값을 늘리면 각 Ingress 컨트롤러 Pod에서 더 많은 연결을 처리하지만 추가 시스템 리소스가 소비됩니다. 허용되는 값은 empty, 0, -1 및 범위 2000-2000000입니다. 이 필드가 비어 있거나 0인 경우 IngressController는 기본값인 50000을 사용하지만 기본값은 향후 릴리스에서 변경될 수 있습니다. 값이 -1이면 HAProxy는 실행 중인 컨테이너에서 사용 가능한 ulimits를 기반으로 값을 동적으로 계산합니다. -1(예: auto)을 선택하면 큰 값이 계산됩니다(OpenShift >=4.10 클러스터에서 ~520000). 따라서 각 HAProxy 프로세스는 현재 기본값 50000에 비해 상당한 메모리 사용량이 발생합니다. 현재 운영 체제 제한보다 큰 값을 설정하면 HAProxy 프로세스가 시작되지 않습니다. 개별 값(예: 750000)을 선택하고 라우터 포드가 새 노드로 마이그레이션되면 새 노드가 동일한 ulimits가 구성되어 있다는 보장은 없습니다. 이러한 시나리오에서는 pod가 시작되지 않습니다. 서로 다른 ulimits가 구성된 노드(예: 다른 tuned 프로필)가 있고 불연속 값을 선택하면 지침은 -1을 사용하고 런타임 시 값을 동적으로 계산하도록 하는 것입니다. 'container_memory_working_set_bytes{container="router",namespace="openshift-ingress"}' 메트릭을 사용하여 라우터 컨테이너의 메모리 사용량을 모니터링할 수 있습니다. 'container_memory_working_set_bytes{container="router",namespace="openshift-ingress"}/container_processes{container="router"}'를 사용하여 라우터 컨테이너에서 개별 HAProxy 프로세스의 메모리 사용량을 모니터링할 수 있습니다. |
|
| reloadInterval은 라우터가 새 변경 사항을 수락하도록 다시 로드할 수 있는 최소 간격을 정의합니다. 이 값을 늘리면 시나리오에 따라 HAProxy 프로세스가 누적되지 않을 수 있습니다. 이 간격을 늘리면 roundrobin balancing 알고리즘을 사용할 때 백엔드 서버에서 부하 분산을 줄일 수 있습니다. 또는 HAProxy 구성에 대한 업데이트가 더 빨리 적용될 수 있으므로 이 값을 줄이면 대기 시간이 줄어들 수 있습니다. 값은 기간 값이어야 합니다. https://pkg.go.dev/time#ParseDuration 을 참조하십시오. 현재 허용되는 최소 값은 1s이고 허용되는 최대 값은 120입니다. 향후 OpenShift 버전에서 허용되는 최소 및 최대 값이 변경될 수 있습니다. 이러한 범위를 벗어나는 기간이 제공되면 reloadInterval 값이 제한되고 거부되지 않습니다(예: 120개 이상의 기간이 120으로 제한됨) IngressController는 이를 거부하고 이 허용하지 않은 값을 기본값으로 대체하지 않습니다. reloadInterval의 제로 값은 IngressController에서 기본값을 선택하도록 지시합니다. 현재 5s는 사전 통지 없이 변경될 수 있습니다. 이 필드에는 10진수의 부호 없는 기간 문자열, 각각 선택적 분수와 단위 접미사가 필요합니다. 예를 들면 다음과 같습니다. "300MS", "1.5h" 또는 "2h45m". 유효한 시간 단위는 "ns", "us"(또는 " Cryostats" U+00B5 또는 ">&#s" U+03BC), "ms", "s", "h"입니다. 참고: 기본값 5보다 큰 값을 설정하면 경로 및 엔드포인트에 대한 업데이트를 관찰하는 대기 시간이 발생할 수 있습니다. HAProxy의 구성은 덜 자주 다시 로드되고 새로 생성된 경로가 후속 다시 로드될 때까지 제공되지 않습니다. |
|
| serverFinTimeout은 연결을 닫는 클라이언트에 대한 서버/backend 응답을 기다리는 동안 연결이 열린 상태로 유지되는 시간을 정의합니다. 설정되지 않은 경우 기본 제한 시간은 1s입니다. |
|
| serverTimeout은 서버/backend 응답을 기다리는 동안 연결이 열린 상태로 유지되는 시간을 정의합니다. 설정되지 않은 경우 기본 제한 시간은 30s입니다. |
|
| threadCount는 HAProxy 프로세스별로 생성된 스레드 수를 정의합니다. 더 많은 스레드를 생성하면 각 Ingress 컨트롤러 Pod가 더 많은 시스템 리소스 비용으로 더 많은 연결을 처리할 수 있습니다. HAProxy는 현재 최대 64개의 스레드를 지원합니다. 이 필드가 비어 있으면 IngressController는 기본값을 사용합니다. 현재 기본값은 4개의 스레드이지만 향후 릴리스에서 변경될 수 있습니다. 이 필드를 설정하는 것은 일반적으로 권장되지 않습니다. HAProxy 스레드 수를 늘리면 Ingress 컨트롤러 Pod가 부하에서 더 많은 CPU 시간을 활용할 수 있으므로 너무 높은 경우 다른 Pod가 중단될 수 있습니다. 스레드 수를 줄이면 Ingress 컨트롤러가 제대로 작동하지 않을 수 있습니다. |
|
| tlsInspectDelay는 라우터에서 일치하는 경로를 찾기 위해 데이터를 보유할 수 있는 기간을 정의합니다. 이 값을 너무 짧게 설정하면 일치하는 인증서를 더 잘 사용할 수 있는 경우에도 라우터가 에지 종료 또는 재암호화 경로의 기본 인증서로 대체될 수 있습니다. 설정되지 않은 경우 기본 검사 지연은 5s입니다. |
|
| tunnelTimeout은 터널이 유휴 상태인 동안 터널 연결이 열린 상태로 유지되는 시간을 정의합니다. 설정되지 않은 경우 기본 제한 시간은 1h입니다. |
15.1.41. .status
- 설명
- 상태는 IngressController의 가장 최근에 관찰된 상태입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| availableReplicas는 Ingress 컨트롤러 배포에 따라 모니터링되는 사용 가능한 복제본 수입니다. |
|
| conditions는 조건 및 상태 목록입니다. 사용 가능한 경우 수신 컨트롤러 배포를 사용할 수 있고 서비스 경로 및 수신 리소스(예: .status.availableReplicas 등) 다른 Ingress 컨트롤러 기능 및 기능의 상태를 나타내는 추가 조건이 있습니다. * LoadBalancerManaged - 다음 조건이 충족되면 True: * 끝점 게시 전략에 서비스 로드 밸런서가 필요합니다. - 해당 조건 중 하나라도 만족스럽지 않은 경우 - False입니다. * LoadBalancerReady - 다음 조건이 충족되면 True: * 로드 밸런서가 관리됩니다. * 로드 밸런서가 준비되었습니다. - 해당 조건 중 하나라도 만족스럽지 않은 경우 False입니다. * DNSManaged - 다음 조건이 충족되면 True: * 끝점 게시 전략 및 플랫폼이 DNS를 지원합니다. * Ingress 컨트롤러 도메인이 설정됩니다. * DNS.config.openshift.io/cluster는 DNS 영역을 구성합니다. - 해당 조건 중 하나라도 만족스럽지 않은 경우 False입니다. * DNSReady - 다음 조건이 충족되면 True: * DNS가 관리됩니다. * DNS 레코드가 성공적으로 생성되었습니다. - 해당 조건 중 하나라도 만족스럽지 않으면 False입니다. |
|
| OperatorCondition은 표준 조건 필드입니다. |
|
| domain은 사용 중인 실제 도메인입니다. |
|
| endpointPublishingStrategy는 사용 중인 실제 전략입니다. |
|
| namespaceSelector는 사용 중인 실제 namespaceSelector입니다. |
|
| observedGeneration은 가장 최근 관찰된 세대입니다. |
|
| routeSelector는 사용 중인 실제 routeSelector입니다. |
|
| selector는 IngressController에 해당하는 수신 컨트롤러 Pod의 경우 문자열 형식의 라벨 선택기입니다. 일치하는 Pod 수는 availableReplicas 값과 같아야 합니다. |
|
| TLSProfile은 적용되는 TLS 연결 구성입니다. |
15.1.42. .status.conditions
- 설명
- conditions는 조건 및 상태 목록입니다. 사용 가능한 경우 수신 컨트롤러 배포를 사용할 수 있고 서비스 경로 및 수신 리소스(예: .status.availableReplicas 등) 다른 Ingress 컨트롤러 기능 및 기능의 상태를 나타내는 추가 조건이 있습니다. * LoadBalancerManaged - 다음 조건이 충족되면 True: * 끝점 게시 전략에 서비스 로드 밸런서가 필요합니다. - 해당 조건 중 하나라도 만족스럽지 않은 경우 - False입니다. * LoadBalancerReady - 다음 조건이 충족되면 True: * 로드 밸런서가 관리됩니다. * 로드 밸런서가 준비되었습니다. - 해당 조건 중 하나라도 만족스럽지 않은 경우 False입니다. * DNSManaged - 다음 조건이 충족되면 True: * 끝점 게시 전략 및 플랫폼이 DNS를 지원합니다. * Ingress 컨트롤러 도메인이 설정됩니다. * DNS.config.openshift.io/cluster는 DNS 영역을 구성합니다. - 해당 조건 중 하나라도 만족스럽지 않은 경우 False입니다. * DNSReady - 다음 조건이 충족되면 True: * DNS가 관리됩니다. * DNS 레코드가 성공적으로 생성되었습니다. - 해당 조건 중 하나라도 만족스럽지 않으면 False입니다.
- 유형
-
array
15.1.43. .status.conditions[]
- 설명
- OperatorCondition은 표준 조건 필드입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| |
|
| |
|
| |
|
| |
|
|
15.1.44. .status.endpointPublishingStrategy
- 설명
- endpointPublishingStrategy는 사용 중인 실제 전략입니다.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| HostNetwork에는 HostNetwork 끝점 게시 전략에 대한 매개 변수가 있습니다. type은 HostNetwork인 경우에만 존재합니다. |
|
| LoadBalancer에는 로드 밸런서에 대한 매개변수가 있습니다. type이 LoadBalancerService인 경우에만 표시됩니다. |
|
| NodePort에는 NodePortService 끝점 게시 전략에 대한 매개변수가 있습니다. type이 NodePortService인 경우에만 표시됩니다. |
|
| private에는 Private 엔드포인트 게시 전략에 대한 매개변수가 있습니다. type이 private인 경우에만 존재합니다. |
|
| type은 사용할 게시 전략입니다. 유효한 값은 다음과 같습니다. * LoadBalancerService는 Kubernetes LoadBalancer 서비스를 사용하여 수신 컨트롤러를 게시합니다. 이 구성에서 Ingress 컨트롤러 배포는 컨테이너 네트워킹을 사용합니다. 배포를 게시하기 위해 LoadBalancer 서비스가 생성됩니다. https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer domain이 설정된 경우 LoadBalancer 서비스의 외부 이름을 가리키도록 와일드카드 DNS 레코드가 관리됩니다. DNS 레코드는 dns.config.openshift.io/cluster .spec.publicZone 및 .spec.privateZone에서 정의한 DNS 영역에서만 관리됩니다. 와일드카드 DNS 관리는 현재 AWS, Azure 및 GCP 플랫폼에서만 지원됩니다. * HostNetwork는 Ingress 컨트롤러가 배포된 노드 포트에 Ingress 컨트롤러를 게시합니다. 이 구성에서 Ingress 컨트롤러 배포는 노드 포트 80 및 443에 바인딩된 호스트 네트워킹을 사용합니다. 사용자는 노드 포트를 통해 Ingress 컨트롤러를 게시하도록 외부 로드 밸런서를 구성해야 합니다. * private은 Ingress 컨트롤러를 게시하지 않습니다. 이 구성에서 Ingress 컨트롤러 배포는 컨테이너 네트워킹을 사용하며 명시적으로 게시되지 않습니다. 사용자가 Ingress 컨트롤러를 수동으로 게시해야 합니다. * NodePortService는 Kubernetes NodePort 서비스를 사용하여 수신 컨트롤러를 게시합니다. 이 구성에서 Ingress 컨트롤러 배포는 컨테이너 네트워킹을 사용합니다. 배포를 게시하기 위해 NodePort 서비스가 생성됩니다. 특정 노드 포트는 OpenShift에서 동적으로 할당하지만 정적 포트 할당을 지원하려면 관리형 NodePort 서비스의 노드 포트 필드에 대한 사용자 변경 사항이 유지됩니다. |
15.1.45. .status.endpointPublishingStrategy.hostNetwork
- 설명
- HostNetwork에는 HostNetwork 끝점 게시 전략에 대한 매개 변수가 있습니다. type은 HostNetwork인 경우에만 존재합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| httpPort는 HTTP 요청을 수신 대기하는 데 사용해야 하는 호스트의 포트입니다. 포트 80을 이미 사용 중인 경우 이 필드를 설정해야 합니다. 이 값은 클러스터의 NodePort 범위와 일치해서는 안 됩니다. 값이 0이거나 지정하지 않으면 기본값은 80입니다. |
|
| httpsPort는 HTTPS 요청을 수신 대기하는 데 사용해야 하는 호스트의 포트입니다. 443 포트를 이미 사용 중인 경우 이 필드를 설정해야 합니다. 이 값은 클러스터의 NodePort 범위와 일치해서는 안 됩니다. 값이 0이거나 지정하지 않으면 기본값은 443입니다. |
|
| protocol은 IngressController에서 들어오는 연결이 일반 TCP를 사용하도록 예상하는지 또는 IngressController에서 PROXY 프로토콜을 사용할지 여부를 지정합니다. PROXY 프로토콜은 IngressController로 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 데 지원하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. 다음 값은 이 필드에 유효합니다. * 빈 문자열. * "TCP". * "PROXY". 빈 문자열은 PROXY 프로토콜이 없는 TCP인 기본값을 지정합니다. 기본값은 변경될 수 있습니다. |
|
| statsPort는 라우터의 통계가 게시되는 호스트의 포트입니다. 이 값은 클러스터의 NodePort 범위와 일치해서는 안 됩니다. 외부 로드 밸런서가 이 IngressController에 대한 연결을 전달하도록 구성된 경우 로드 밸런서에서 상태 점검에 이 포트를 사용해야 합니다. 로드 밸런서는 지정된 노드의 이 포트에 HTTP 프로브를 보낼 수 있으며 경로 /healthz/ready로 Ingress 컨트롤러가 노드에서 트래픽을 수신할 준비가 되었는지 확인할 수 있습니다. 적절한 작동의 경우 상태 점검이 준비되었다고 보고할 때까지 로드 밸런서에서 노드로 트래픽을 전달하지 않아야 합니다. 또한 로드 밸런서는 /healthz/ready 보고가 준비되지 않음을 시작한 후 최대 45초 이내에 요청 전달을 중지해야 합니다. 5초의 시간 초과로 5초에서 10초마다 프로빙하는 것은 각각 정상 또는 비정상 상태가 되는 두 개의 성공 또는 실패한 요청의 임계값을 각각 테스트한 값입니다. 값이 0이거나 지정하지 않으면 기본값은 1936입니다. |
15.1.46. .status.endpointPublishingStrategy.loadBalancer
- 설명
- LoadBalancer에는 로드 밸런서에 대한 매개변수가 있습니다. type이 LoadBalancerService인 경우에만 표시됩니다.
- 유형
-
object
- 필수 항목
-
dnsManagementPolicy
-
scope
-
속성 | 유형 | 설명 |
---|---|---|
| `` | allowedSourceRanges는 로드 밸런서에 대한 액세스를 제한해야 하는 IP 주소 범위의 허용 목록을 지정합니다. 각 범위는 CIDR 표기법을 사용하여 지정해야 합니다(예:). "10.0.0.0/8" or "fd00::/8"). 범위가 지정되지 않은 경우 IPv4의 경우 "0.0.0.0/0" 및 IPv6의 경우 "::/0"이 기본적으로 사용되어 모든 소스 주소를 허용합니다. allowedSourceRanges 필드가 없는 이전 버전의 OpenShift에서 원활하게 마이그레이션하기 위해 "openshift-ingress" 네임스페이스에서 "router-<ingresscontroller name>" 서비스에 service.beta.kubernetes.io/load-balancer-source-ranges 주석을 설정할 수 있으며, allowedSourceRanges가 OpenShift 4.12에 비어 있는 경우 이 주석이 적용됩니다. |
|
| dnsManagementPolicy는 로드 밸런서 서비스와 연결된 와일드카드 DNS 레코드의 라이프사이클이 Ingress Operator에 의해 관리되는지를 나타냅니다. 기본값은 Managed입니다. 유효한 값은 Managed 및 Unmanaged입니다. |
|
| providerParameters에는 기본 인프라 공급자와 관련된 원하는 로드 밸런서 정보가 있습니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 providerParameters 필드를 참조하십시오. |
|
| scope는 로드 밸런서가 노출되는 범위를 나타냅니다. 가능한 값은 "외부" 및 "내부"입니다. |
15.1.47. .status.endpointPublishingStrategy.loadBalancer.providerParameters
- 설명
- providerParameters에는 기본 인프라 공급자와 관련된 원하는 로드 밸런서 정보가 있습니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 providerParameters 필드를 참조하십시오.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| AWS는 AWS 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 aws 필드를 참조하십시오. |
|
| GCP는 GCP 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 gcp 필드를 참조하십시오. |
|
| IBM은 IBM Cloud 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 IBM 필드를 참조하십시오. |
|
| type은 로드 밸런서의 기본 인프라 공급자입니다. 허용되는 값은 "AWS", "Azure", "BareMetal", "GCP", "IBM", "Nutanix", "OpenStack", "VSphere"입니다. |
15.1.48. .status.endpointPublishingStrategy.loadBalancer.providerParameters.aws
- 설명
- AWS는 AWS 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 aws 필드를 참조하십시오.
- 유형
-
object
- 필수 항목
-
type
-
속성 | 유형 | 설명 |
---|---|---|
|
| ClassicLoadBalancerParameters에는 AWS 클래식 로드 밸런서에 대한 구성 매개변수가 있습니다. type이 Classic인 경우에만 표시됩니다. |
|
| NetworkLoadBalancerParameters에는 AWS 네트워크 로드 밸런서에 대한 구성 매개변수가 있습니다. type은 NLB인 경우에만 존재합니다. |
|
| type은 ingresscontroller를 인스턴스화할 AWS 로드 밸런서의 유형입니다. 유효한 값은 * "Classic": 전송 계층(TCP/SSL) 또는 애플리케이션 계층(HTTP/HTTPS)에서 라우팅을 결정하는 Classic Load Balancer입니다. 자세한 내용은 https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#clb * "NLB": 전송 계층(TCP/SSL)에서 라우팅을 결정하는 네트워크 로드 밸런서 장치입니다. 자세한 내용은 다음을 참조하십시오. https://docs.aws.amazon.com/AmazonECS/latest/developerguide/load-balancer-types.html#nlb |
15.1.49. .status.endpointPublishingStrategy.loadBalancer.providerParameters.aws.classicLoadBalancer
- 설명
- ClassicLoadBalancerParameters에는 AWS 클래식 로드 밸런서에 대한 구성 매개변수가 있습니다. type이 Classic인 경우에만 표시됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| connectionIdleTimeout은 로드 밸런서가 연결을 닫기 전에 연결이 유휴 상태일 수 있는 최대 기간을 지정합니다. 값은 시간 기간 값으로 구문 분석할 수 있어야 합니다. https://pkg.go.dev/time#ParseDuration 을 참조하십시오. nil 또는 0 값은 의견이 없으며, 이 경우 기본값이 사용됩니다. 이 필드의 기본값은 60s입니다. 이 기본값은 변경될 수 있습니다. |
15.1.50. .status.endpointPublishingStrategy.loadBalancer.providerParameters.aws.networkLoadBalancer
- 설명
- NetworkLoadBalancerParameters에는 AWS 네트워크 로드 밸런서에 대한 구성 매개변수가 있습니다. type은 NLB인 경우에만 존재합니다.
- 유형
-
object
15.1.51. .status.endpointPublishingStrategy.loadBalancer.providerParameters.gcp
- 설명
- GCP는 GCP 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 gcp 필드를 참조하십시오.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| clientAccess는 내부 로드 밸런서에 대해 클라이언트 액세스가 제한되는 방법을 설명합니다. 유효한 값은 * "Global": 글로벌 클라이언트 액세스를 사용하여 내부 로드 밸런서를 지정하면 VPC 내의 모든 리전의 클라이언트가 로드 밸런서와 통신할 수 있습니다. https://cloud.google.com/kubernetes-engine/docs/how-to/internal-load-balancing#global_access * "local": 로컬 클라이언트 액세스를 사용하여 내부 로드 밸런서를 지정하면 GCP 로드 밸런서가 로드 밸런서와 통신할 수 있는 것과 동일한 리전(및 VPC) 내의 클라이언트만 의미합니다. 이는 기본 동작입니다. https://cloud.google.com/load-balancing/docs/internal#client_access |
15.1.52. .status.endpointPublishingStrategy.loadBalancer.providerParameters.ibm
- 설명
- IBM은 IBM Cloud 로드 밸런서와 관련된 구성 설정을 제공합니다. 비어있는 경우 기본값이 적용됩니다. 기본값에 대한 자세한 내용은 특정 IBM 필드를 참조하십시오.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| protocol은 로드 밸런서에서 PROXY 프로토콜을 사용하여 IngressController로 연결을 전달하는지 여부를 지정합니다. https://cloud.ibm.com/docs/containers?topic=containers-vpc-lbaas PROXY 프로토콜에서 "service.kubernetes.io/ibm-load-balancer-cloud-provider-enable-features: "proxy-protocol"을 사용하여 IngressController에 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. protocol에 유효한 값은 TCP, PROXY 및 omitted입니다. 생략하면 이는 의견이 없으며 플랫폼은 시간이 지남에 따라 변경될 수 있는 적절한 기본값을 선택할 수 있음을 의미합니다. 현재 기본값은 프록시 프로토콜이 활성화되지 않은 TCP입니다. |
15.1.53. .status.endpointPublishingStrategy.nodePort
- 설명
- NodePort에는 NodePortService 끝점 게시 전략에 대한 매개변수가 있습니다. type이 NodePortService인 경우에만 표시됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| protocol은 IngressController에서 들어오는 연결이 일반 TCP를 사용하도록 예상하는지 또는 IngressController에서 PROXY 프로토콜을 사용할지 여부를 지정합니다. PROXY 프로토콜은 IngressController로 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 데 지원하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. 다음 값은 이 필드에 유효합니다. * 빈 문자열. * "TCP". * "PROXY". 빈 문자열은 PROXY 프로토콜이 없는 TCP인 기본값을 지정합니다. 기본값은 변경될 수 있습니다. |
15.1.54. .status.endpointPublishingStrategy.private
- 설명
- private에는 Private 엔드포인트 게시 전략에 대한 매개변수가 있습니다. type이 private인 경우에만 존재합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| protocol은 IngressController에서 들어오는 연결이 일반 TCP를 사용하도록 예상하는지 또는 IngressController에서 PROXY 프로토콜을 사용할지 여부를 지정합니다. PROXY 프로토콜은 IngressController로 해당 연결을 전달할 때 클라이언트 연결의 소스 주소를 전달하는 데 지원하는 로드 밸런서와 함께 사용할 수 있습니다. PROXY 프로토콜을 사용하면 IngressController에서 HTTP 헤더 및 로그에서 로드 밸런서의 주소를 보고하는 대신 해당 소스 주소를 보고할 수 있습니다. IngressController에서 PROXY 프로토콜을 활성화하면 IngressController에 연결을 전달하는 데 PROXY 프로토콜을 사용하는 로드 밸런서를 사용하지 않는 경우 연결이 실패합니다. PROXY 프로토콜에 대한 자세한 내용은 http://www.haproxy.org/download/2.2/doc/proxy-protocol.txt 을 참조하십시오. 다음 값은 이 필드에 유효합니다. * 빈 문자열. * "TCP". * "PROXY". 빈 문자열은 PROXY 프로토콜이 없는 TCP인 기본값을 지정합니다. 기본값은 변경될 수 있습니다. |
15.1.55. .status.namespaceSelector
- 설명
- namespaceSelector는 사용 중인 실제 namespaceSelector입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
15.1.56. .status.namespaceSelector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
15.1.57. .status.namespaceSelector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
15.1.58. .status.routeSelector
- 설명
- routeSelector는 사용 중인 실제 routeSelector입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
15.1.59. .status.routeSelector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
15.1.60. .status.routeSelector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |
15.1.61. .status.tlsProfile
- 설명
- TLSProfile은 적용되는 TLS 연결 구성입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 암호는 TLS 핸드셰이크 중에 협상되는 암호화 알고리즘을 지정하는 데 사용됩니다. Operator는 피연산자가 지원하지 않는 항목을 제거할 수 있습니다. 예를 들어 DES-CBC3-SHA(yaml): 암호: - DES-CBC3-SHA |
|
| minTLSVersion은 TLS 핸드셰이크 중에 협상되는 최소 버전의 TLS 프로토콜을 지정하는 데 사용됩니다. 예를 들어 TLS 버전 1.1, 1.2 및 1.3(yaml)을 사용하려면 minTLSVersion: TLSv1.1 참고: 현재 허용되는 가장 높은 minTLSVersion은 VersionTLS12입니다. |