Skip to main content

리소스 맵

COP 콘솔의 '리소스 맵' 기능은 Kubernetes 클러스터 내 리소스 간의 관계를 그래프 형태로 시각화하여 보여줍니다. 이를 통해 사용자는 클러스터 내의 애플리케이션 및 인프라 구성 요소를 한눈에 파악하고, 문제 발생 시 관련 리소스를 신속하게 식별할 수 있습니다.


리소스 맵 접근

좌측 사이드바에서 Map 메뉴를 클릭하면 리소스 맵 화면으로 이동합니다.


그래프 구성

리소스 맵은 노드(Node)엣지(Edge) 로 구성됩니다.

노드 (리소스)

각 노드는 하나의 Kubernetes 리소스를 나타내며, 다음 정보가 표시됩니다.

  • 아이콘: 리소스 타입별 고유 아이콘 (Deployment, Pod, Service 등)
  • 이름: 리소스의 이름
  • 상태 표시: 리소스 상태에 따라 노드 색상이 달라집니다.
    • 정상(Running, Ready): 녹색 계열
    • 경고(Pending, Progressing): 황색 계열
    • 오류(Failed, CrashLoopBackOff): 적색 계열
    • 비활성(Terminated, Completed): 회색 계열

엣지 (관계)

노드 간의 화살표는 리소스 간의 관계를 나타냅니다.

  • 소유 관계(Owner Reference): 실선 화살표. 상위 리소스가 하위 리소스를 소유하는 관계입니다.
  • 참조 관계: 점선 화살표. 리소스가 다른 리소스를 참조하는 관계입니다.

리소스 관계

리소스 맵에서 시각화되는 주요 리소스 관계는 다음과 같습니다.

워크로드 관계

  • Deployment → ReplicaSet → Pod: Deployment가 ReplicaSet을 생성하고, ReplicaSet이 Pod를 생성합니다.
  • StatefulSet → Pod: StatefulSet이 직접 Pod를 관리합니다.
  • DaemonSet → Pod: DaemonSet이 각 노드에 Pod를 배포합니다.
  • Job → Pod: Job이 실행할 Pod를 생성합니다.
  • CronJob → Job → Pod: CronJob이 스케줄에 따라 Job을 생성하고, Job이 Pod를 생성합니다.

네트워크 관계

  • Service → Pod: Service가 셀렉터를 통해 트래픽을 전달하는 Pod 집합을 가리킵니다.
  • Ingress → Service: Ingress가 라우팅 규칙에 따라 트래픽을 전달하는 Service를 참조합니다.

스토리지 관계

  • Pod → PersistentVolumeClaim: Pod가 마운트하는 PVC를 참조합니다.
  • PersistentVolumeClaim → PersistentVolume: PVC가 바인딩된 PV를 가리킵니다.

설정 관계

  • Pod → ConfigMap: Pod가 환경 변수 또는 볼륨으로 참조하는 ConfigMap 입니다.
  • Pod → Secret: Pod가 환경 변수 또는 볼륨으로 참조하는 Secret입니다.

필터링

화면 상단의 필터 옵션을 사용하여 맵에 표시할 리소스를 선택적으로 제어할 수 있습니다.

  • 리소스 유형 필터: Workloads, Storage, Network, Security, Configuration 등 드롭다운 메뉴에서 표시할 리소스 유형을 체크박스로 선택하거나 해제합니다.
  • 그룹화 (Group By): 리소스를 네임스페이스 또는 노드 기준으로 그룹화하여 표시할 수 있습니다. 현재 선택된 그룹을 한번 더 클릭하면 그룹화를 해제합니다.
  • 상태 필터: Status: Error or Warning 버튼을 클릭하여 현재 오류 또는 경고 상태에 있는 리소스만 필터링하여 확인할 수 있습니다.
  • 네임스페이스 필터: 우측 상단의 Filter 입력란을 통해 특정 네임스페이스를 검색하거나 필터링할 수 있습니다.

줌/팬

  • 마우스 휠 줌: 마우스 휠을 스크롤하여 그래프를 확대/축소합니다. 마우스 커서 위치를 기준으로 줌이 적용됩니다.
  • 드래그 팬: 빈 영역을 클릭한 채 드래그하여 그래프를 이동합니다.
  • 줌 컨트롤 버튼: 확대(+), 축소(-), 맞춤(Fit) 버튼을 사용하여 줌 레벨을 조정합니다.

노드 클릭

맵의 리소스 노드를 클릭하면 해당 리소스의 상세 정보 패널이 표시됩니다.

  • 리소스 기본 정보: 이름, 네임스페이스, 타입, 상태
  • 메타데이터: 레이블, 어노테이션, 생성 시간
  • 상세 보기 링크: 클릭하면 해당 리소스의 전체 상세 화면으로 이동합니다.

노드를 클릭하면 해당 노드와 직접 연결된 노드 및 엣지가 강조 표시됩니다.


전체 화면 모드

맵 영역을 전체 화면으로 확장하여 넓은 화면에서 리소스 관계를 확인할 수 있습니다. ESC 키를 누르거나 전체 화면 해제 버튼을 클릭하면 일반 모드로 돌아갑니다.


사용 팁

  • 복잡한 클러스터에서는 리소스 유형 필터를 활용하여 관심 있는 리소스만 표시하면 가독성이 향상됩니다.
  • 그룹화 옵션을 변경하면서 네임스페이스별, 노드별 관점으로 클러스터 상태를 분석할 수 있습니다.
  • 상태 필터를 사용하면 문제가 있는 리소스를 빠르게 식별할 수 있습니다.