본문 바로가기
클라우드/Backstage

🛠️ Backstage 핵심 기능 총정리: 개발 생산성을 높이는 5가지 무기

by gasbugs 2025. 12. 21.

안녕하세요!

우리는 앞서 Backstage가 무엇인지, 왜 필요한지 배웠습니다. 이제는 실제 현장에서 개발자들이 가장 많이 열어보고 사용하는 Backstage의 5대 핵심 기능을 하나씩 파헤쳐 보려 합니다. 이 기능들이 어떻게 상호작용하며 '황금 경로(Golden Path)'를 만들어내는지 함께 확인해 보시죠! 🌟


📌 이번 포스팅의 학습 목표 (Learning Objectives)

이 글을 읽고 나면 여러분은 다음 내용을 완벽히 이해하게 됩니다:

  • 소프트웨어 카탈로그(Catalog)의 개념과 작동 원리 이해 📑
  • 스캐폴더(Scaffolder)를 통한 자동화된 프로젝트 생성 방법 🏗️
  • 검색(Search) 기능의 확장성 파악 🔍
  • TechDocs가 '코드로 쓰는 문서'를 실현하는 방식 학습 📝
  • 플러그인(Plugins)을 활용한 포털 커스터마이징 전략 수립 🧩

1. 모든 것의 시작: 소프트웨어 카탈로그 (Software Catalog) 📑

소프트웨어 카탈로그는 Backstage의 가장 핵심적인 기능이자 모든 기능의 기반입니다.

  • 목적: 조직 내 흩어진 웹사이트, API, 라이브러리, 리소스 등 모든 소프트웨어 자산을 중앙 디렉토리에 매핑합니다.
  • 작동 방식: 각 엔티티(Entity)의 세부 사항은 소스 코드와 함께 저장되는 YAML 파일에 정의됩니다. 이를 통해 코드가 업데이트될 때 카탈로그 정보도 최신 상태를 유지하게 됩니다.
  • 주요 장점: * 자산의 소유권(Ownership)의존성(Dependencies)을 명확히 추적합니다.
    • 부모 엔티티가 없는 '고아 엔티티(Orphaned entities)'를 찾아내 시스템 정리를 돕습니다.
    • 보안 경고나 성숙도 지표 같은 인사이트를 추출하는 원천이 됩니다.

2. 표준화된 시작: 스캐폴더 (Scaffolder) 🏗️

새로운 팀원이 합류했을 때, "어디서부터 시작해야 하죠?"라는 질문에 가장 완벽한 답을 줄 수 있는 기능입니다.

  • 핵심 기능: 미리 정의된 소프트웨어 템플릿을 실행하여 스켈레톤 코드와 설정이 완료된 저장소를 즉시 생성합니다.
  • 골든 패스(Golden Path) 권장: CI/CD, 분석 도구 등이 이미 내장된 템플릿을 제공하여, 신규 개발자가 몇 번의 클릭만으로 배포 준비가 된 서비스를 가질 수 있게 합니다.
  • 카탈로그와의 연동: 스캐폴더로 생성된 서비스는 자동으로 카탈로그에 등록되어 발견 가능성을 높이는 선순환 구조를 만듭니다.

3. 코드로 관리하는 문서: TechDocs 📝

문서화는 중요하지만 관리는 어렵습니다. TechDocs는 이를 'Documentation-as-code' 방식으로 해결합니다.

  • 작동 원리: 마크다운(Markdown) 파일을 소스 코드와 함께 관리하면, Backstage가 이를 가져와 예쁜 정적 페이지로 변환해 줍니다.
  • 개발자 친화적: 개발자는 문서 게시 과정을 신경 쓸 필요 없이 마크다운 작성에만 집중하면 됩니다. 탐색 메뉴와 UI 요소는 TechDocs가 알아서 구성해 줍니다.

4. 인프라 가시성 확보: 쿠버네티스 (Kubernetes) ☸️

Backstage는 개발자가 각 서비스의 클러스터 상태를 직접 시각화하여 볼 수 있는 플러그인을 제공합니다.

  • 상태 확인: 개발, 스테이징, 운영 환경의 클러스터 건강 상태를 한눈에 파악할 수 있습니다.
  • 카탈로그 연동: 카탈로그에 등록된 서비스 정보를 기반으로 GKE 등 외부 클러스터 공급자로부터 데이터를 직접 가져와 표시합니다.

5. 생태계 통합 검색: 서치 (Search) 🔍

조직 규모가 커질수록 필요한 정보를 찾는 속도가 생산성을 결정합니다.

  • 유연한 확장성: 기본적으로 ElasticSearch를 지원하지만, 조직의 선호에 맞는 검색 엔진을 연동할 수 있습니다.
  • 통합 검색: 카탈로그 정보뿐만 아니라 TechDocs, Stack Overflow 등의 데이터를 Collator를 통해 수집하고 인덱싱하여 한 번에 검색할 수 있게 합니다.

🧩 플러그인을 통한 무한한 확장성

위의 모든 기능은 사실 Backstage 팀이 유지 관리하는 코어 플러그인입니다. 하지만 Backstage의 진가는 커뮤니티 플러그인에서 나옵니다.

  • 벤더 통합: PagerDuty의 장애 정보나 ArgoCD의 상태를 포털 안으로 가져올 수 있습니다.
  • 커스텀 플러그인: 조직 내부의 특수한 요구사항이 있다면 직접 플러그인을 작성하여 기능을 확장할 수 있습니다.

오늘 정리한 5가지 기능을 잘 활용한다면, 여러분의 조직도 스포티파이처럼 강력한 개발 문화를 구축할 수 있습니다. 다음 장에서는 가장 중요한 Software Catalog를 실제로 어떻게 구성하는지 더 자세히 알아보겠습니다! 🚀