검색

6.9.21. 선택 사항: 인그레스 DNS 레코드 추가

download PDF

Kubernetes 매니페스트를 생성하고 Ignition 구성을 생성할 때 DNS 영역 구성을 제거한 경우, 인그레스 로드 밸런서를 가리키는 DNS 레코드를 수동으로 생성해야 합니다. 와일드카드 *.apps.{baseDomain}. 또는 특정 레코드를 생성할 수 있습니다. 사용자 요구사항에 따라 A, CNAME 및 기타 레코드를 사용할 수 있습니다.

사전 요구 사항

  • GCP 계정을 구성하십시오.
  • Kubernetes 매니페스트를 생성하고 Ignition 구성을 생성할 때 DNS 영역 구성을 제거하십시오.
  • GCP에서 VPC 및 관련 서브넷을 생성하고 구성하십시오.
  • GCP에서 네트워킹 및 로드 밸랜서를 생성하고 구성하십시오.
  • 컨트롤 플레인 및 컴퓨팅 역할을 생성합니다.
  • 부트스트랩 시스템을 생성합니다.
  • 컨트롤 플레인 시스템을 생성합니다.
  • 작업자 시스템을 생성합니다.

프로세스

  1. 인그레스 라우터가 로드 밸런서를 생성하고 EXTERNAL-IP 필드를 채울 때까지 기다립니다.

    $ oc -n openshift-ingress get service router-default

    출력 예

    NAME             TYPE           CLUSTER-IP      EXTERNAL-IP      PORT(S)                      AGE
    router-default   LoadBalancer   172.30.18.154   35.233.157.184   80:32288/TCP,443:31215/TCP   98

  2. 영역에 A 레코드를 추가합니다.

    • A 레코드를 사용하려면,

      1. 라우터 IP 주소에 대한 변수를 내보냅니다.

        $ export ROUTER_IP=`oc -n openshift-ingress get service router-default --no-headers | awk '{print $4}'`
      2. 프라이빗 영역에 A 레코드를 추가합니다.

        $ if [ -f transaction.yaml ]; then rm transaction.yaml; fi
        $ gcloud dns record-sets transaction start --zone ${INFRA_ID}-private-zone
        $ gcloud dns record-sets transaction add ${ROUTER_IP} --name \*.apps.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 300 --type A --zone ${INFRA_ID}-private-zone
        $ gcloud dns record-sets transaction execute --zone ${INFRA_ID}-private-zone
      3. 외부 클러스터의 경우 퍼블릭 영역에 A 레코드를 추가합니다.

        $ if [ -f transaction.yaml ]; then rm transaction.yaml; fi
        $ gcloud dns record-sets transaction start --zone ${BASE_DOMAIN_ZONE_NAME}
        $ gcloud dns record-sets transaction add ${ROUTER_IP} --name \*.apps.${CLUSTER_NAME}.${BASE_DOMAIN}. --ttl 300 --type A --zone ${BASE_DOMAIN_ZONE_NAME}
        $ gcloud dns record-sets transaction execute --zone ${BASE_DOMAIN_ZONE_NAME}
    • 와일드카드를 사용하지 않고 명시적 도메인을 추가하려면 클러스터의 현재 경로에 대한 항목을 생성합니다.

      $ oc get --all-namespaces -o jsonpath='{range .items[*]}{range .status.ingress[*]}{.host}{"\n"}{end}{end}' routes

      출력 예

      oauth-openshift.apps.your.cluster.domain.example.com
      console-openshift-console.apps.your.cluster.domain.example.com
      downloads-openshift-console.apps.your.cluster.domain.example.com
      alertmanager-main-openshift-monitoring.apps.your.cluster.domain.example.com
      grafana-openshift-monitoring.apps.your.cluster.domain.example.com
      prometheus-k8s-openshift-monitoring.apps.your.cluster.domain.example.com

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.