2장. 관리자 네트워크 정책
2.1. OVN-Kubernetes AdminNetworkPolicy 링크 복사링크가 클립보드에 복사되었습니다!
2.1.1. AdminNetworkPolicy 링크 복사링크가 클립보드에 복사되었습니다!
AdminNetworkPolicy
(ANP)는 클러스터 범위의 사용자 정의 리소스 정의(CRD)입니다. OpenShift Container Platform 관리자는 네임스페이스를 만들기 전에 네트워크 정책을 만들어 ANP를 사용하여 네트워크를 보호할 수 있습니다. 또한 NetworkPolicy
개체로 재정의할 수 없는 클러스터 범위 수준에서 네트워크 정책을 만들 수 있습니다.
AdminNetworkPolicy
와 NetworkPolicy
객체의 주요 차이점은 전자가 관리자를 위한 것이고 클러스터 범위인 반면, 후자는 테넌트 소유자를 위한 것이고 네임스페이스 범위라는 것입니다.
ANP를 사용하면 관리자는 다음을 지정할 수 있습니다.
-
평가 순서를 결정하는
우선순위
값입니다. 값이 낮을수록 우선순위가 높습니다. - 정책이 적용되는 네임스페이스 또는 네임스페이스 집합으로 구성된 포드 집합입니다.
-
해당
주체
에 대한 모든 수신 트래픽에 적용될 수신 규칙 목록입니다. -
해당
주체
의 모든 이탈 트래픽에 적용될 이탈 규칙 목록입니다.
AdminNetworkPolicy 예제
예 2.1. ANP에 대한 YAML 파일 예시
- 1
- ANP의 이름을 지정하세요.
- 2
spec.priority
필드는 클러스터 내0~99
값 범위에서 최대 100개의 ANP를 지원합니다. 값이 낮을수록 우선순위가 높아집니다. 범위는 가장 낮은 값부터 가장 높은 값 순으로 읽히기 때문입니다. ANP가 동일한 우선순위로 생성되면 어떤 정책이 우선하는지 보장할 수 없으므로, 의도적으로 우선순위를 정할 수 있도록 ANP를 서로 다른 우선순위로 설정합니다.- 3
- ANP 리소스를 적용할 네임스페이스를 지정합니다.
- 4
- ANP에는 유입 및 유출 규칙이 모두 있습니다.
spec.ingress
필드에 대한 ANP 규칙은action
필드에 대해Pass
,Deny
,Allow
값을 허용합니다. - 5
ingress.name
에 대한 이름을 지정합니다.- 6
namespaceSelector.matchLabels
로 선택한 네임스페이스 내의 포드를 인그레스 피어로 선택하려면podSelector.matchLabels를
지정합니다.- 7
- ANP에는 진입 및 진출 규칙이 모두 있습니다.
spec.egress
필드에 대한 ANP 규칙은action
필드에 대해Pass
,Deny
,Allow
값을 허용합니다.
추가 리소스
2.1.1.1. 규칙에 대한 AdminNetworkPolicy 작업 링크 복사링크가 클립보드에 복사되었습니다!
관리자는 AdminNetworkPolicy
규칙에 대한 작업
필드로 Allow
, Deny
또는 Pass를
설정할 수 있습니다. OVN-Kubernetes는 계층형 ACL을 사용하여 네트워크 트래픽 규칙을 평가하므로 ANP를 사용하면 관리자가 규칙을 수정하거나, 규칙을 삭제하거나, 더 높은 우선순위 규칙을 설정하여 재정의하는 것만으로 변경할 수 있는 매우 강력한 정책 규칙을 설정할 수 있습니다.
AdminNetworkPolicy 허용 예제
우선순위 9로 정의된 다음 ANP는 모니터링
네임스페이스에서 클러스터의 모든 테넌트(다른 모든 네임스페이스)로의 모든 유입 트래픽이 허용되도록 보장합니다.
예 2.2. 강력한 ANP 허용을
위한 YAML 파일 예시
이는 관련된 모든 당사자가 재정의할 수 없기 때문에 강력한 Allow
ANP의 예입니다. 테넌트는 NetworkPolicy
객체를 사용하여 모니터링을 차단할 수 없으며 모니터링 테넌트도 모니터링할 수 있는 항목과 할 수 없는 항목을 선택할 수 없습니다.
AdminNetworkPolicy Deny 예제
우선순위 5로 정의된 다음 ANP는 모니터링
네임스페이스에서 제한된 테넌트( security: restricted
레이블이 있는 네임스페이스)로의 모든 유입 트래픽이 차단되도록 보장합니다.
예 2.3. 강력한 Deny
ANP에 대한 YAML 파일 예시
이는 관련된 모든 당사자가 무시할 수 없는 강력한 Deny
ANP입니다. 제한된 세입자 소유자는 트래픽 모니터링을 허용하도록 스스로 권한을 부여할 수 없으며, 인프라의 모니터링 서비스는 이러한 중요한 네임스페이스에서 어떤 것도 스크래핑할 수 없습니다.
강력한 Allow
예제와 결합하면 블록 모니터링
ANP는 더 낮은 우선순위 값을 갖고 더 높은 우선 순위를 갖게 되므로 제한된 테넌트는 결코 모니터링되지 않습니다.
AdminNetworkPolicy Pass 예제
우선순위 7로 정의된 다음 ANP는 모니터링
네임스페이스에서 내부 인프라 테넌트(레이블이 security: internal
인 네임스페이스)로 향하는 모든 유입 트래픽이 ACL의 2계층으로 전달되고 네임스페이스의 NetworkPolicy
개체에 의해 평가되도록 보장합니다.
예 2.4. 강력한 Pass
ANP를 위한 YAML 파일 예시
이 예제는 테넌트 소유자가 정의한 NetworkPolicy
객체에 결정을 위임하므로 강력한 Pass
작업 ANP입니다. 이 패스 모니터링
ANP를 사용하면 보안 수준 내부
에서 그룹화된 모든 테넌트 소유자가 네임스페이스 범위의 NetworkPolicy
객체를 사용하여 인프라 모니터링 서비스에서 메트릭을 스크래핑할지 여부를 선택할 수 있습니다.