Kubernetes 개체와 관련된 권장 네트워크 정책 규칙을 YAML 형식으로 내보낼 수 있습니다. VMware Aria Operations for Networks는 네임스페이스별 그룹 및 서비스별 그룹 토폴로지에 대해서만 YAML 형식으로 내보내기를 지원합니다.
사전 요구 사항
프로시저
- 권장 규칙을 YAML 형식으로 내보내려면 [보안 계획] 모델에서 보안을 계획할 Kubernetes 클러스터를 선택하고 다음 단계 중 하나를 수행합니다.
- 마이크로 세그먼트 위젯에서 추가 옵션을 펼치고 규칙을 YAML로 내보내기를 선택하거나
- 마이크로 세그먼트 휠 보기에서 노드를 선택하고 권장 방화벽 규칙 수를 클릭한 다음, 추가 옵션을 펼치고 규칙을 YAML로 내보내기를 선택합니다.
VMware Aria Operations for Networks는 Kubernetes 네트워크 정책 및 이와 연결된 타임 스탬프로 이름이 지정된 ZIP 파일을 다운로드합니다. 파일의 압축을 풀면 클러스터 수에 따라 다음과 같은 5개의 CSV 파일과 여러 폴더가 표시됩니다. 각 폴더에는 클러스터에 대한 여러 YAML 파일이 포함됩니다.파일 이름 설명 network-policy-others-ipaddress.csv 서비스 또는 네임스페이스가 통신하는 물리적 서버와 가상 시스템의 IP 주소를 포함합니다. recommended-namespace-labels-to-add.csv 네임스페이스와 연결된 포드에 연결할 레이블을 포함합니다. 예:
- 클러스터 - pdk8s
- 네임스페이스 - sock-shop
- 레이블 - sock-shop-pdk8s
recommended-service-labels-to-add.csv 서비스와 연결된 포드에 연결될 레이블을 포함합니다. 예:
- 클러스터 - pdk8s
- 네임스페이스 - sock-shop
- 서비스 - front-end
- 레이블 - Service:front-sock-shop-pdk8s
- 클러스터 - pdk8s
- 네임스페이스 - sock-shop
- 서비스 - user
- 레이블 - Service:user-sock-shop
recommended-network-policy.csv VMware Aria Operations for Networks가 권장하는 모든 규칙을 포함합니다. exported-network-policy-rule-names.csv 권장 규칙에 따라 내보낸 모든 네트워크 정책을 나열합니다. - 서비스 레이블을 적용하려면 다음 단계를 수행합니다.
- 다음 Kubernetes CLI 명령을 실행합니다.
kubectl edit deployment service-name -n namespace-name
kubectl edit deployment redis-primary -n guestbook
서비스의 배포 파일이 열립니다. - 서비스 레이블 목록에서 CSV 파일에 제안된 레이블을 서비스 배포의 규격 섹션에 언급된 레이블에 추가합니다.
- 다음 Kubernetes CLI 명령을 실행합니다.
- 네임스페이스 레이블을 적용하려면 다음 단계를 수행합니다.
- 다음 Kubernetes CLI 명령을 실행합니다.
kubectl edit namespace namespace-name
kubectl edit namespace guestbook
네임스페이스의 배포 파일이 열립니다. - 메타데이터에서 CSV 파일에 제안된 레이블을 네임스페이스 배포의 spec 섹션에 언급된 레이블에 추가합니다.
- 다음 Kubernetes CLI 명령을 실행합니다.
- 다음 명령을 실행하여 레이블이 포드에 적용되었는지 확인합니다.
kubectl get pods -n namespace-name--show-labels
kubectl get pods guestbook--show-labels
결과 보기에서 레이블을 살펴봅니다.참고: 네임스페이스에 적용하면 레이블이 포드에 반영되지 않습니다. - 네트워크 정책을 생성하려면 해당 클러스터 폴더에서 다른 폴더로 YAML 파일을 복사하고 다음 명령 중 하나를 실행합니다.
kubectl apply -f <folder-name>/
- 모든 방화벽 규칙을 한 번에 적용합니다.kubectl apply -f <folder-name>/<firewall-rule>.yaml
- 방화벽 규칙을 하나씩 적용합니다.