2.11. 수동 DNS 관리를 위한 Ingress 컨트롤러 구성
OpenShift Container Platform의 외부 네트워크에서 애플리케이션 액세스 권한을 보장하기 위해 Ingress 컨트롤러에 대한 DNS 레코드를 수동으로 구성할 수 있습니다.
클러스터 관리자는 Ingress 컨트롤러를 생성할 때 Operator는 DNS 레코드를 자동으로 관리합니다. 이는 필수 DNS 영역이 클러스터 DNS 영역과 다른 경우 또는 DNS 영역이 클라우드 공급자 외부에서 호스팅되는 경우 몇 가지 제한 사항이 있습니다.
다음 목록은 관리형 DNS 관리 정책의 주요 측면을 자세히 설명합니다.
- Ingress 컨트롤러에 대한 관리형 DNS 관리 정책을 사용하면 클라우드 공급자의 와일드카드 DNS 레코드의 라이프사이클이 Operator에 의해 자동으로 관리됩니다. 이는 기본 동작입니다.
-
Ingress 컨트롤러를
Managed에서UnmanagedDNS 관리 정책으로 변경하면 Operator에서 클라우드에 프로비저닝된 이전 와일드카드 DNS 레코드를 정리하지 않습니다. -
Ingress 컨트롤러를
Unmanaged에서ManagedDNS 관리 정책으로 변경하면 Operator에서 클라우드 공급자에 대한 DNS 레코드를 생성하려고 시도하거나 이미 존재하는 경우 DNS 레코드를 업데이트합니다.
다음 목록은 관리되지 않는 DNS 관리 정책의 주요 측면을 자세히 설명합니다.
- Ingress 컨트롤러에 대한 관리되지 않는 DNS 관리 정책은 클라우드 공급자의 와일드카드 DNS 레코드 라이프사이클이 자동으로 관리되지 않도록 합니다. 대신 클러스터 관리자가 담당합니다.
2.11.1. Unmanaged DNS 관리 정책을 사용하여 사용자 정의 Ingress 컨트롤러 생성 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 관리자는 Unmanaged DNS 관리 정책을 사용하여 새 사용자 정의 Ingress 컨트롤러를 생성할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc)를 설치합니다. -
cluster-admin권한이 있는 사용자로 로그인합니다.
절차
다음을 포함하는
sample-ingress.yaml이라는 CR(사용자 정의 리소스) 파일을 생성합니다.apiVersion: operator.openshift.io/v1 kind: IngressController metadata: namespace: openshift-ingress-operator name: <name> spec: domain: <domain> endpointPublishingStrategy: type: LoadBalancerService loadBalancer: scope: External dnsManagementPolicy: Unmanaged다음과 같습니다.
metadata.name-
IngressController오브젝트의 이름으로<name>을 지정합니다. spec.domain-
사전 요구 사항으로 생성된 DNS 레코드를 기반으로
도메인을 지정합니다. loadBalancer.scope-
로드 밸런서를 외부에 노출하려면
범위를External로 지정합니다.LoadBalancer.dnsManagementPolicy: Ingress 컨트롤러가 로드 밸런서와 연결된 와일드카드 DNS 레코드의 라이프사이클을 관리하는지 여부를 지정합니다. 유효한 값은Managed및Unmanaged입니다. 기본값은Managed입니다.
파일을 저장하여 변경 사항을 적용합니다.
oc apply -f <name>.yaml1 출력을 검사하고
dnsManagementPolicy가Unmanaged로 설정되어 있는지 확인합니다.