1장. 네트워크 정책 API 이해
네트워크 정책은 클러스터 범위와 네임스페이스 범위 네트워크 정책 API를 모두 사용하여 정의됩니다. 이러한 다양한 수준에서 네트워크 정책을 정의하면 전체 멀티 테넌트 격리를 포함하여 클러스터에 대한 정교한 네트워크 보안 구성을 만들 수 있습니다.
네트워크 정책 및 범위
- 클러스터 범위 네트워크 정책
클러스터 및 네트워크 관리자는 AdminNetworkPolicy를 사용하여 클러스터 수준에서 네트워크 정책을 정의할 수 있습니다. AdminNetworkPolicy 기능은
AdminNetworkPolicy
API와BaselineAdminNetworkPolicy
API라는 두 가지 API로 구성됩니다. 이러한 API는 전체 클러스터에 적용할 수 있는 규칙을 설정하거나 네임스페이스 범위의NetworkPolicy
에 위임하는 데 사용됩니다.AdminNetworkPolicy
API를 사용하여 정의된 정책은 "허용" 또는 "거부"로 설정된 경우 다른 모든 정책 유형보다 우선합니다. 그러나 관리자는 "Pass"를 사용하여 주어진 정책에 대한 책임을 네임스페이스 범위의NetworkPolicy
에 위임하여 애플리케이션 개발자와 네임스페이스 테넌트가 프로젝트의 네트워크 보안의 특정 측면을 제어할 수 있도록 할 수도 있습니다.BaselineAdminNetworkPolicy
API를 사용하여 정의된 정책은 다른 네트워크 정책이 이를 재정의하지 않는 경우에만 적용됩니다.AdminNetworkPolicy
API를 사용하여 네트워크 정책의 측면을 네임스페이스 범위의NetworkPolicy
에 위임하는 경우BaselineAdminNetworkPolicy
에서도 합리적인 최소 제한을 정의해야 합니다. 네임스페이스의NetworkPolicy가
충분한 보호를 제공하지 못하는 경우, 이를 통해 클러스터 수준에서 기본 수준의 네트워크 보안이 보장됩니다.- 네임스페이스 범위 네트워크 정책
-
애플리케이션 개발자와 네임스페이스 테넌트는
NetworkPolicy
API를 사용하여 특정 네임스페이스에 대한 네트워크 정책 규칙을 정의할 수 있습니다. 네임스페이스에 대한NetworkPolicy
의 규칙은 BaselineAdminNetworkPolicy API를 사용하여 구성된 클러스터 전체 규칙이나 클러스터 전체AdminNetworkPolicy
API에서 위임되거나 "전달된" 클러스터 전체 규칙보다 우선합니다.
네트워크 정책이 평가되고 적용되는 방식
네트워크 연결이 설정되면 네트워크 공급자(기본값: OVN-Kubernetes)는 네트워크 정책 규칙에 대해 연결 세부 정보를 확인하여 연결을 처리하는 방법을 결정합니다.
OVN-Kubernetes는 다음 순서에 따라 네트워크 정책 개체에 대한 연결을 평가합니다.
AdminNetworkPolicy 계층에서 일치 항목을 확인합니다.
-
연결이
허용
또는거부
규칙과 일치하는 경우 해당 규칙을 따르고 평가를 중지합니다. -
연결이
Pass
규칙과 일치하는 경우 NetworkPolicy 계층으로 이동합니다.
-
연결이
NetworkPolicy 계층에서 일치 항목을 확인합니다.
- 연결이 규칙과 일치하면 해당 규칙을 따르고 평가를 중지합니다.
- 일치하는 항목이 없으면 BaselineAdminNetworkPolicy 계층으로 이동합니다.
- BaselineAdminNetworkPolicy 계층에서 일치 규칙을 따릅니다.
그림 1.1. OVN-Kubernetes의 네트워크 정책 평가
1.1. AdminNetworkPolicy와 NetworkPolicy 사용자 정의 리소스 간의 주요 차이점 링크 복사링크가 클립보드에 복사되었습니다!
다음 표에서는 클러스터 범위 AdminNetworkPolicy
API와 네임스페이스 범위 NetworkPolicy
API의 주요 차이점을 설명합니다.
정책 요소 | AdminNetworkPolicy | NetworkPolicy |
---|---|---|
해당 사용자 | 클러스터 관리자 또는 동등 자격 | 네임스페이스 소유자 |
범위 | Cluster | 네임스페이스 |
트래픽 삭제 |
명시적인 |
정책 생성 시 암묵적인 |
위임 트래픽 |
규칙으로 설정된 | 해당 없음 |
트래픽 허용 |
명시적인 | 모든 규칙에 대한 기본 동작은 허용입니다. |
정책 내 규칙 우선순위 | ANP에 나타나는 순서에 따라 달라집니다. 규칙의 위치가 높을수록 우선순위가 높아집니다. | 규칙은 누적적입니다. |
정책 우선순위 |
ANP 중에서 | 정책 간에 정책 순서가 없습니다. |
기능 우선 순위 | 1계층 ACL을 통해 먼저 평가되고, BANP는 3계층 ACL을 통해 마지막으로 평가됩니다. | ANP 이후, BANP 이전에 시행되며 ACL 2계층에서 평가됩니다. |
매칭 포드 선택 | 네임스페이스 전반에 걸쳐 다양한 규칙을 적용할 수 있습니다. | 단일 네임스페이스의 여러 포드에 걸쳐 다양한 규칙을 적용할 수 있습니다. |
클러스터 이그레스 트래픽 |
|
허용되는 CIDR 구문과 함께 |
클러스터 유입 트래픽 | 지원되지 않습니다. | 지원되지 않습니다. |
정규화된 도메인 이름(FQDN) 피어 지원 | 지원되지 않습니다. | 지원되지 않습니다. |
네임스페이스 선택기 |
|
|