softwarecatalog9 Backstage 아키텍처 깊게 보기: Software Entity와 React Component의 상호작용 안녕하세요! 오늘은 Backstage의 핵심 개념 중 하나인 "컴포넌트(Component)"가 두 가지 다른 맥락에서 어떻게 사용되는지에 대해 자세히 알아보겠습니다. 🚀Backstage를 처음 접하시는 분들이 가장 헷갈려 하는 부분 중 하나인데요, 이 두 가지 '컴포넌트'의 의미를 명확히 이해하면 Backstage 아키텍처와 실제 활용 방안을 훨씬 더 깊이 있게 파악할 수 있습니다. 오늘 이 글을 통해 그 혼란을 완전히 해소해 드리겠습니다! 💡🏗️ Backstage에서 '컴포넌트'의 두 가지 의미Backstage에서 "컴포넌트"라는 용어는 크게 두 가지 맥락에서 사용됩니다. 하나는 소프트웨어 카탈로그 엔티티로서의 kind: Component이고, 다른 하나는 프론트엔드 UI를 구성하는 React 컴.. 2025. 12. 26. Backstage 확장하기: 커스텀 애노테이션 정의와 예약어 충돌 방지 전략 안녕하세요! 오늘은 Backstage의 유연성을 극대화해주는 애노테이션(Annotations), 그중에서도 관리를 위해 필수적인 네임스페이싱(Namespacing) 규칙에 대해 깊이 있게 다뤄보겠습니다. 🚀Backstage를 운영하다 보면 기본 기능 외에 우리 조직만의 특별한 데이터를 추가하고 싶을 때가 많죠. 이때 사용하는 것이 애노테이션입니다. 하지만 아무 이름이나 사용하면 시스템 내부 충돌이 발생할 수 있습니다. 오늘은 절대로 사용해서는 안 되는 '예약된 접두사'와 올바른 네임스페이싱 전략을 완벽히 정리해 드립니다! 💡🏗️ Backstage 애노테이션이란?Backstage의 catalog-info.yaml 파일에서 metadata.annotations 섹션은 엔티티에 대한 비정형 메타데이터를 .. 2025. 12. 26. Backstage 엔티티의 정체성, kind 필드 완벽 이해하기 (Component부터 Resource까지) 안녕하세요! 오늘은 Backstage의 핵심 중의 핵심, 모든 메타데이터의 시작점이라고 할 수 있는 catalog-info.yaml 파일의 kind 필드에 대해 아주 깊이 있게 파헤쳐 보겠습니다. 🚀Backstage를 설정하다 보면 가장 먼저 마주하게 되는 이 필드가 정확히 무엇을 의미하는지, 그리고 어떤 종류들이 있는지 알면 서비스 카탈로그를 설계하는 시야가 완전히 달라질 것입니다. 💡🏗️ kind 필드란 무엇인가?Backstage의 소프트웨어 카탈로그는 모든 자원을 '엔티티(Entity)'라는 단위로 관리합니다. 이때 kind 필드는 "이 엔티티가 어떤 유형의 사물인가?"를 정의하는 가장 기본적인 분류 체계입니다.객체 지향 프로그래밍에 비유하자면, kind는 클래스(Class)와 같고, 우리가 .. 2025. 12. 26. Backstage 모델 탐구: API 엔티티가 단순한 문서를 넘어 '계약'이 되는 이유 안녕하세요! 오늘은 Backstage의 심장부라고 할 수 있는 소프트웨어 카탈로그(Software Catalog), 그중에서도 시스템 간의 대화 창구인 API 엔티티(Entity)의 역할에 대해 아주 상세하게 파헤쳐 보겠습니다. 🚀Backstage를 처음 접하면 Component, System, Group 등 다양한 개념들 사이에서 API가 정확히 어떤 위치에 있는지 헷갈릴 때가 많죠. 오늘 이 글을 읽고 나면 API가 단순한 문서화를 넘어, 어떻게 마이크로서비스 생태계를 연결하는지 완벽히 이해하시게 될 겁니다! 💡🏗️ Backstage 모델에서 API란 무엇인가? Backstage의 소프트웨어 카탈로그 모델에서 API는 "하나의 소프트웨어가 다른 소프트웨어에 제공하는 인터페이스"를 정의하는 독립적.. 2025. 12. 26. 내 맘대로 구성하는 Backstage 엔터티 페이지! 조건부 탭(Conditional Tab) 구현 가이드 🛠️ 안녕하세요, 플랫폼 엔지니어 여러분! 👋 Backstage를 운영하다 보면 이런 고민이 생깁니다. "우리 팀은 Kubernetes를 쓰는 서비스만 K8s 탭을 보여주고 싶은데...""자바 프로젝트에만 SonarQube 탭을 노출할 수 없을까?" Backstage는 EntityLayout.Route와 'Filter Functions'를 결합하여 이 문제를 아주 우아하게 해결합니다. 지금부터 그 방법을 상세히 파헤쳐 보겠습니다!1. 기본 개념: EntityLayout.Route와 if 프롭 🧩Backstage 엔터티 페이지의 각 탭은 EntityLayout.Route 컴포넌트로 정의됩니다. 이 컴포넌트에는 if라는 아주 특별한 프롭(Prop)이 있습니다.동작 원리: if 프롭에 전달된 함수가 true를 .. 2025. 12. 25. 클릭 몇 번으로 끝! Backstage 카탈로그 수동 등록(Manual Register) 완벽 가이드 안녕하세요, 플랫폼 엔지니어 여러분! 🛠️ 새로운 마이크로서비스를 만들었거나 기존 프로젝트를 Backstage에 통합하고 싶을 때, 가장 빠르고 확실한 방법은 무엇일까요?자동 스캔 기능이 설정되어 있지 않더라도 걱정하지 마세요. Backstage는 사용자가 직접 엔터티(Entity)의 위치를 알려주는 수동 등록(Manual Registration) 방식을 지원합니다. 지금부터 그 단계를 하나씩 파헤쳐 보겠습니다!1. 수동 등록이란 무엇인가요? 🤔수동 등록은 개발자가 자신의 서비스 정의 파일(catalog-info.yaml)이 어디에 있는지 Backstage에게 직접 알려주는 행위입니다.핵심 메커니즘: 파일의 URL(경로)을 등록합니다.지원되는 소스: GitHub, GitLab, Bitbucket 등 .. 2025. 12. 25. 이전 1 2 다음