1장. 네트워크 정책 API 이해


쿠버네티스는 사용자가 네트워크 보안을 강화하는 데 사용할 수 있는 두 가지 기능을 제공합니다. 사용자가 네트워크 정책을 시행할 수 있는 기능 중 하나는 NetworkPolicy API입니다. 이 API는 주로 애플리케이션 개발자와 네임스페이스 테넌트가 네임스페이스 범위 정책을 만들어 네임스페이스를 보호하도록 설계되었습니다.

두 번째 기능은 두 가지 API, 즉 AdminNetworkPolicy (ANP) API와 BaselineAdminNetworkPolicy (BANP) API로 구성된 AdminNetworkPolicy 입니다. ANP와 BANP는 클러스터 및 네트워크 관리자가 클러스터 범위 정책을 만들어 전체 클러스터를 보호할 수 있도록 설계되었습니다. 클러스터 관리자는 ANP를 사용하여 NetworkPolicy 개체보다 우선하는 재정의 불가능한 정책을 적용할 수 있습니다. 관리자는 BANP를 사용하여 필요한 경우 NetworkPolicy 객체를 사용하여 사용자가 재정의할 수 있는 선택적 클러스터 범위 네트워크 정책 규칙을 설정하고 적용할 수 있습니다. ANP, BANP 및 네트워크 정책을 함께 사용하면 관리자가 클러스터를 보호하는 데 사용할 수 있는 완전한 다중 테넌트 격리를 달성할 수 있습니다.

OpenShift Container Platform의 OVN-Kubernetes CNI는 액세스 제어 목록(ACL) 계층을 사용하여 이러한 네트워크 정책을 구현하고 이를 평가하고 적용합니다. ACL은 1계층부터 3계층까지 내림차순으로 평가됩니다.

1계층은 AdminNetworkPolicy (ANP) 객체를 평가합니다. 2계층은 NetworkPolicy 객체를 평가합니다. 3계층은 BaselineAdminNetworkPolicy (BANP) 객체를 평가합니다.

ANP가 먼저 평가됩니다. 일치하는 규칙이 ANP 허용 또는 거부 규칙인 경우 클러스터에 있는 기존 NetworkPolicyBaselineAdminNetworkPolicy (BANP) 개체는 평가에서 건너뜁니다. 매치가 ANP 통과 규칙인 경우 평가는 ACL의 1계층에서 NetworkPolicy 정책이 평가되는 2계층으로 이동합니다. 트래픽과 일치하는 NetworkPolicy가 없으면 평가는 2계층 ACL에서 3계층 ACL로 이동하여 BANP가 평가됩니다.

1.1. AdminNetworkPolicy와 NetworkPolicy 사용자 정의 리소스 간의 주요 차이점

다음 표에서는 클러스터 범위 AdminNetworkPolicy API와 네임스페이스 범위 NetworkPolicy API의 주요 차이점을 설명합니다.

Expand
정책 요소AdminNetworkPolicyNetworkPolicy

해당 사용자

클러스터 관리자 또는 동등 자격

네임스페이스 소유자

범위

Cluster

네임스페이스

트래픽 삭제

명시적인 거부 작업을 규칙으로 설정하여 지원됩니다.

정책 생성 시 암묵적인 Deny 격리를 통해 지원됩니다.

위임 트래픽

규칙으로 설정된 Pass 작업으로 지원됩니다.

해당 없음

트래픽 허용

명시적인 허용 작업을 규칙으로 설정하여 지원됩니다.

모든 규칙에 대한 기본 동작은 허용입니다.

정책 내 규칙 우선순위

ANP에 나타나는 순서에 따라 달라집니다. 규칙의 위치가 높을수록 우선순위가 높아집니다.

규칙은 첨가적이다

정책 우선순위

ANP 중에서 우선순위 필드는 평가 순서를 설정합니다. 우선순위 번호가 낮을수록 정책 우선순위가 높습니다.

정책 간에 정책 순서가 없습니다.

기능 우선 순위

1계층 ACL을 통해 먼저 평가되고, BANP는 3계층 ACL을 통해 마지막으로 평가됩니다.

ANP 이후, BANP 이전에 시행되며 ACL 2계층에서 평가됩니다.

매칭 포드 선택

네임스페이스 전반에 걸쳐 다양한 규칙을 적용할 수 있습니다.

단일 네임스페이스의 여러 포드에 걸쳐 다양한 규칙을 적용할 수 있습니다.

클러스터 이그레스 트래픽

노드네트워크 피어를 통해 지원됨

허용되는 CIDR 구문과 함께 ipBlock 필드를 통해 지원됩니다.

클러스터 유입 트래픽

지원되지 않음

지원되지 않음

정규화된 도메인 이름(FQDN) 피어 지원

지원되지 않음

지원되지 않음

네임스페이스 선택기

namespaces.matchLabels 필드를 사용하여 고급 네임스페이스 선택을 지원합니다.

namespaceSelector 필드를 사용하여 레이블 기반 네임스페이스 선택을 지원합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat