4.10.22. 인그레스 방화벽 규칙 추가


클러스터에는 몇 가지 방화벽 규칙이 필요합니다. 공유 VPC를 사용하지 않는 경우, 이러한 규칙은 GCP 클라우드 공급자를 통해 Ingress Controller에 의해 생성됩니다. 공유 VPC를 사용할 경우에는 모든 서비스에 대한 클러스터 단위 방화벽 규칙을 생성하거나 클러스터가 액세스를 요청할 때 이벤트를 기반으로 각 규칙을 생성할 수 있습니다. 클러스터가 액세스를 요청할 때마다 규칙을 생성하면 필요한 방화벽 규칙을 정확하게 파악할 수 있습니다. 클러스터 단위 방화벽 규칙을 생성하면 여러 클러스터에 동일한 규칙 세트를 적용할 수 있습니다.

이벤트 기준으로 각 규칙을 생성하도록 선택하는 경우, 클러스터를 프로비저닝한 후에 그리고 클러스터 수명 동안 콘솔에서 규칙이 누락되었음을 알릴 때 방화벽 규칙을 생성해야 합니다. 다음 이벤트와 유사한 이벤트가 표시되면 필요한 방화벽 규칙을 추가해야 합니다.

$ oc get events -n openshift-ingress --field-selector="reason=LoadBalancerManualChange"

출력 예

Firewall change required by security admin: `gcloud compute firewall-rules create k8s-fw-a26e631036a3f46cba28f8df67266d55 --network example-network --description "{\"kubernetes.io/service-name\":\"openshift-ingress/router-default\", \"kubernetes.io/service-ip\":\"35.237.236.234\"}\" --allow tcp:443,tcp:80 --source-ranges 0.0.0.0/0 --target-tags exampl-fqzq7-master,exampl-fqzq7-worker --project example-project`

이러한 규칙 기반 이벤트가 생성될 때 문제가 발생하면 클러스터가 실행되는 동안 클러스터 단위 방화벽 규칙을 구성할 수 있습니다.

4.10.22.1. GCP에서 공유 VPC에 대한 클러스터 단위 방화벽 규칙 생성

OpenShift Container Platform 클러스터에 필요한 액세스를 허용하기 위해 클러스터 단위 방화벽 규칙을 생성할 수 있습니다.

주의

클러스터 이벤트 기준으로 방화벽 규칙을 생성하지 않도록 선택하는 경우, 사용자가 클러스터 단위 방화벽 규칙을 생성해야 합니다.

사전 요구 사항

  • 클러스터를 배포하기 위해 Deployment Manager 템플릿에 필요한 변수를 내보냈습니다.
  • 클러스터에 필요한 네트워킹 및 로드 밸런싱 구성 요소를 GCP에 생성했습니다.

프로세스

  1. 모든 서비스에 액세스할 수 있도록 Google Cloud Engine 상태 검사를 허용하는 단일 방화벽 규칙을 추가합니다. 이 규칙을 사용하면 인그레스 로드 밸런서가 인스턴스의 상태를 확인할 수 있습니다.

    $ gcloud compute firewall-rules create --allow='tcp:30000-32767,udp:30000-32767' --network="${CLUSTER_NETWORK}" --source-ranges='130.211.0.0/22,35.191.0.0/16,209.85.152.0/22,209.85.204.0/22' --target-tags="${INFRA_ID}-master,${INFRA_ID}-worker" ${INFRA_ID}-ingress-hc --account=${HOST_PROJECT_ACCOUNT} --project=${HOST_PROJECT}
  2. 모든 클러스터 서비스에 액세스를 허용하는 단일 방화벽 규칙을 추가합니다.

    • 외부 클러스터의 경우:

      $ gcloud compute firewall-rules create --allow='tcp:80,tcp:443' --network="${CLUSTER_NETWORK}" --source-ranges="0.0.0.0/0" --target-tags="${INFRA_ID}-master,${INFRA_ID}-worker" ${INFRA_ID}-ingress --account=${HOST_PROJECT_ACCOUNT} --project=${HOST_PROJECT}
    • 프라이빗 클러스터의 경우:

      $ gcloud compute firewall-rules create --allow='tcp:80,tcp:443' --network="${CLUSTER_NETWORK}" --source-ranges=${NETWORK_CIDR} --target-tags="${INFRA_ID}-master,${INFRA_ID}-worker" ${INFRA_ID}-ingress --account=${HOST_PROJECT_ACCOUNT} --project=${HOST_PROJECT}

    이 규칙은 TCP 포트 80443의 트래픽만을 허용하므로 서비스에서 사용하는 포트를 빠짐없이 모두 추가해야 합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.