일부 네트워크 리소스의 경우 특정 제한 사항을 숙지한 후 구성해야 합니다.
태그 및 레이블 제한
태그에는 다음과 같은 제한 사항이 있습니다.
- 태그 범위는 128자로 제한됩니다.
- 태그 값은 256자로 제한됩니다.
- 각 개체는 최대 30개의 태그를 가질 수 있습니다.
Kubernetes 또는 OpenShift 주석을 NSX-T Data Center 범위 및 태그에 복사할 때 이러한 제한이 초과되면 문제가 발생할 수 있습니다. 예를 들어 스위치 포트에 대한 태그가 방화벽 규칙에 사용되는 경우 주석 키나 값을 범위 또는 태그에 복사할 때 해당하는 주석 키나 값이 잘리면 규칙이 예상한 대로 적용되지 않을 수 있습니다.
레이블에는 다음과 같은 제한이 적용됩니다.
- 하나의 포드에는 최대 25개의 레이블이 포함될 수 있습니다.
- 하나의 네임스페이스에는 최대 27개의 레이블이 포함될 수 있습니다.
- 수신 컨트롤러 포드에는 최대 24개의 레이블이 포함될 수 있습니다.
네트워크 정책
NetworkPolicy 리소스에는 다음과 같은 제한 사항이 있습니다.
- podSelector 또는 namespaceSelector에는 5개 이상의 matchLabels가 있을 수 없습니다.
- ingress from 섹션 또는 egress to 섹션에서 namespaceSelector 및 podSelector를 둘 다 지정하는 단일 요소가 있는 경우 namespaceSelector에서 6개 이상의 네임스페이스를 선택하면 안 됩니다. 그러지 않으면 오류가 발생합니다. 이러한 규격의 예는 다음과 같습니다(podSelector 앞에 하이픈이 없음).
- namespaceSelector: matchLabels: project: myproject podSelector: matchLabels: role: db
- 수신 또는 송신 규칙에 대해 namespaceSelector와 podSelector를 합한 개수는 5보다 클 수 없습니다. 예를 들어 다음의 경우 규칙에 총 6개의 선택기가 있으므로 허용되지 않습니다.
ingress: - namespaceSelector: matchLabels: project: myproject1 - namespaceSelector: matchLabels: project: myproject2 - namespaceSelector: matchLabels: project: myproject3 - podSelector: matchLabels: role: db - podSelector: matchLabels: role: app - podSelector: matchLabels: role: infra
- to.ports 섹션에서 namedPorts가 있는 모든 송신 허용 네트워크 정책이 지원되지 않습니다.
- matchExpressions 필드는 지원되지 않습니다.
- protocol 필드에서 SCTP를 사용하는 네트워크 정책은 지원되지 않습니다.
제한 사항을 해결하기 위해 좀 더 구체적인 matchLabels를 사용하여 네트워크 정책을 생성하거나, 하나의 네트워크 정책을 6개 이상이 필요하지 않은 여러 개의 네트워크 정책으로 바꿀 수 있습니다.
네트워크 정책이 NCP에서 지원되지 않는 경우 NCP는 오류를 나타내며 주석 처리합니다. 네트워크 정책을 업데이트하여 오류를 수정하면 NCP가 다시 처리합니다.
네트워크 정책에 송신만 지정되고 수신은 지정되지 않은 경우 수신 트래픽에 대한 방화벽 규칙이 생성되지 않습니다. 마찬가지로 네트워크 정책에 수신만 지정되고 송신은 지정되지 않은 경우 송신 트래픽에 대해 방화벽 규칙이 생성되지 않습니다.