목록 보기
Fabric8로 서비스별 Pod 상태 조회하기
백엔드

Fabric8로 서비스별 Pod 상태 조회하기

넥스트리
넥스트리
2026년 10월 1일

두줄요약

Fabric8 Kubernetes Client로 Spring Boot 서비스에서 Pod 상태를 REST API로 조회하는 구성을 소개했습니다.\nin-cluster 인증과 RBAC 최소 권한 설정, 예외 처리 방법을 함께 다뤘습니다.

문제 상황

  • SSH 접속과 kubectl 수동 조회에 따른 권한 관리·감사 추적·연동 한계
  • 대시보드, 알림, 다중 네임스페이스 통합 조회를 위한 서비스 단 Pod 상태 API 요구

선택 이유

  • Fluent API 기반 Pod·라벨 조회 지원의 Fabric8 Kubernetes Client
  • Config.autoConfigure()를 통한 in-cluster 설정과 로컬 kubeconfig 자동 탐지
  • Spring Boot 및 Spring Cloud Kubernetes와의 자연스러운 결합

구조와 흐름

  • KubernetesClient Bean 등록 후 네임스페이스별 목록·라벨 필터·단건 Pod 조회 서비스 구성
  • Pod 이름·상태·노드·라벨·생성 시각을 PodSummary로 변환해 REST API 노출
  • KubernetesClientException의 401·403 상태 코드 기반 공통 예외 응답

주의할 점

  • 외부 접속 시 127.0.0.1 대신 실제 API 서버 엔드포인트 확인
  • 배포 Pod의 ServiceAccount에 pods 리소스 get·list·watch 최소 권한 부여
  • 다중 네임스페이스 조회 시 ClusterRole·ClusterRoleBinding 범위 신중한 확장

다음 읽기

#Kubernetes 주제를 다룬 다른 회사 글

쿠버네티스 오퍼레이터를 Java로 개발해보기

쿠버네티스 오퍼레이터를 Java와 Spring Boot, Java Operator SDK로 구현하는 과정을 정리한 글입니다. CRD, Dependent Resource, Reconciler 구성과 예시 코드를 통해 기본 흐름을 설명했습니다.

지마켓
지마켓
데브옵스

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...