본문으로 건너뛰기

네트워크 정책

COP 콘솔은 클러스터 내의 네트워크 정책을 효과적으로 관리할 수 있는 인터페이스를 제공합니다. 사용자는 네트워크 정책을 생성, 조회, 수정 및 삭제할 수 있으며, 필터링 및 정렬 기능을 통해 원하는 정보를 쉽게 찾을 수 있습니다.

네트워크 정책(NetworkPolicy)은 클러스터 내 Pod 간 또는 Pod과 외부 서비스 간의 통신을 제어하기 위한 리소스입니다. 본 화면은 클러스터에 정의된 네트워크 정책들을 관리할 수 있도록 목록 형태로 제공됩니다.


1.네트워크 정책 목록 화면

네트워크 정책 생성

네트워크 정책 제목 우측의 + 버튼을 클릭하여 새로운 네트워크 정책을 생성할 수 있습니다. 새로운 네트워크 정책의 이름을 입력하여 클러스터에 추가할 수 있습니다.

네트워크 정책 목록 및 정렬

클러스터에 존재하는 네트워크 정책들의 상세 정보가 목록 형태로 표시됩니다. 각 네트워크 정책는 다음과 같은 주요 정보를 포함합니다.

  • 이름: 네트워크 정책의 이름입니다.클릭 시 상세 정보를 확인할 수 있습니다. (예: argocd-repo-server-network-policy 등)
  • 네임스페이스: 해당 네트워크 정책가 존재하는 네임스페이스입니다.
  • 유형: 일반적으로 Ingress 또는 Egress 유형을 나타냅니다.
  • Pod 셀렉터: 이 정책이 적용되는 대상 Pod의 label selector입니다.
  • 경과 시간: 네트워크 정책가 생성된 후 경과된 시간입니다. (예: 5d는 5일 전 생성)
  • 동작: 편집, 삭제 등의 액션 버튼이 위치하는 곳입니다.

정렬

네트워크 정책 목록을 사용자가 원하는 기준으로 정렬하여 볼 수 있습니다. 이름, 상태, 경과 시간 등을 기준으로 오름차순 또는 내림차순 정렬을 지원합니다.

필터

네트워크 정책 목록에서 원하는 네트워크 정책을 쉽고 빠르게 찾을 수 있도록 필터링 기능을 제공합니다.

  • 이름 필터링: 이름 검색창에 네트워크 정책의 일부 또는 전체 이름을 입력하여 해당 이름과 일치하는 네트워크 정책만 표시합니다.
  • 상태 필터링: 상태 검색창을 통해 네트워크 정책의 현재 상태(예: Active)를 기준으로 필터링할 수 있습니다.

동작

각 네트워크 정책 항목의 우측에 위치한 '동작' 열에서는 해당 네트워크 정책에 대해 수행할 수 있는 다양한 관리 작업을 제공합니다.

  • 편집 : 선택된 네트워크 정책의 구성 설정을 수정할 수 있는 화면으로 이동합니다.
  • YAML 보기 : 선택된 네트워크 정책의 YAML(Yet Another Markup Language) 정의 파일을 조회할 수 있습니다. 이는 네트워크 정책의 상세 구성 정보를 확인하는 데 유용합니다.
  • 삭제 : 선택된 네트워크 정책을 클러스터에서 제거합니다. 삭제 시 주의가 필요합니다.

2.네트워크 정책 상세

목록에서 네트워크 정책 이름을 클릭하여 상세 정보를 확인할 수 있습니다. 사용자가 목록에서 네트워크 정책 이름(예: argocd-repo-server-network-policy)을 클릭하면 우측에 해당 정책의 상세 정보 패널이 열립니다. 이 화면을 통해 정책의 메타데이터와 설정 내용을 확인할 수 있습니다.

  • 이름: 네트워크 정책 이름을 표시합니다. (예: argocd-repo-server-network-policy)
  • 네임스페이스: 네트워크 정책이 속한 네임스페이스를 표시합니다. 클릭 시 해당 네임스페이스로 이동합니다. (예: egov-argocd)
  • 생성: 네트워크 정책가 생성된 시간을 표시합니다.
  • 주석: 어노테이션(annotation). 추가 메타정보를 표시합니다. (예: kubectl.kubernetes.io/last-applied-configuration)
  • Pod 셀렉터: 이 정책이 적용되는 대상 Pod을 지정하는 label selector입니다 (예: app.kubernetes.io/name: argocd-repo-server)

인그레스

인그레스는 외부 또는 다른 Pod에서 들어오는 트래픽에 대한 접근을 제어합니다.

  • 포트: 허용된 인그레스 트래픽의 포트를 의미합니다. (예: TCP:8081은 TCP 프로토콜의 8081 포트를 허용)
  • 시작: 조건부 시작이나 특정 동작 트리거에 대한 정보가 포함될 수 있는 항목입니다.
  • IP 블록 : 특정 IP 범위에서만 접근을 허용할 경우 사용됩니다.
  • 네임스페이스 셀렉터 : 인그레스 트래픽을 허용할 네임스페이스 범위를 지정하는 selector입니다.
  • Pod 셀렉터 : 인그레스 트래픽을 허용할 송신 측 Pod의 label 조건을 명시합니다. 아래와 같은 라벨을 가진 Pod에서 들어오는 요청만 허용됩니다 (예 : app.kubernetes.io/name: argocd-server)