본문 바로가기
WIKI 기술 지식 베이스

Backstage 시작하기

원문 보기 위키 갱신

채택 여정은 다른 골든 패스와는 조금 달라요. 이 가이드의 목표는 여러분이 조직에서 Backstage를 성공적으로 도입할 수 있도록 준비시키는 거예요. 이 골든 패스에는 Backstage에 대한 기술적 이해가 필요 없어요. 필요한 것은 여러분의 Backstage 인스턴스를 소유하게 될 기술 팀을 돕고자 하는 의지뿐이에요.

출처: 문서

본문

채택 여정은 다른 골든 패스와는 조금 달라요. 이 가이드의 목표는 여러분이 조직에서 Backstage를 성공적으로 도입할 수 있도록 준비시키는 거예요. 이 골든 패스에는 Backstage에 대한 기술적 이해가 필요 없어요. 필요한 것은 여러분의 Backstage 인스턴스를 소유하게 될 기술 팀을 돕고자 하는 의지뿐이에요.

이 가이드를 계속 진행하기 전에 https://demo.backstage.io/ 를 둘러보는 것을 적극 권장해요. 사용자로서 이 도구에서 무엇을 기대할 수 있는지에 대한 좋은 기반을 제공하는 Backstage 테스트 인스턴스예요.

Backstage란 무엇인가요?

높은 수준에서 Backstage는 개발자 포털을 구축하기 위한 프레임워크예요. 성공적으로 구현되면 문서와 소유권 같은 정보를 중앙화해서 개발자의 작업량(toil)을 줄이고, 도구 단편화로 인한 인지 부하를 줄이며, 새 코드베이스 설정이나 기존 코드베이스와의 통합을 단순화할 수 있어요.

몇 가지 예를 들어 볼게요.

저희 회사는 모든 것을 스프레드시트로 추적해요. 모든 GitHub 저장소와 각 소유자 목록이 있지만, 최신 상태로 유지하는 게 점점 더 어려워지고 있어요. 팀들이 새 프로젝트를 만들 때 선제적으로 업데이트하지 않고, 재조직이나 팀 헌장 변경으로 금세 최신 상태를 잃게 돼요.

Backstage가 도와줄 수 있어요! 저희는 이 과정을 자동화하는 Software Catalog라는 핵심 플러그인을 제공해요. 팀은 저장소에 이 소유권 정보가 담긴 파일을 유지하도록 요청받고, 그 정보는 자동으로 Backstage에 수집되어 모든 프로젝트를 한 곳에서 볼 수 있어요.

저희 개발자들은 최근에 일상에서 점점 더 많은 수의 서로 다른 웹사이트와 도구를 사용해야 하는 것에 대해 불만을 제기하고 있어요. 모든 도구를 추적하기가 어려워지고 있고, 자주 사용하지 않는 도구는 접근 방법을 기억하려고 X분을 허비하고 있어요.

도구 단편화는 실제 문제이고 Backstage도 여기서 도와줄 수 있어요! 외부 서비스와 통신하는 회사 맞춤 플러그인을 만들 수 있어요. 이 플러그인들은 독립적으로 사용하거나 더 나은 맥락을 위해 Software Catalog와 통합할 수 있어요. 모든 CI/CD 워크플로가 팀 프로젝트의 페이지에 직접 표시되는 것을 상상해 보세요.

Backstage가 이런 도구들을 완전히 대체해서는 안 된다는 점을 기억하는 것이 중요해요. 바퀴를 다시 만들고 싶지는 않아요. 목표는 정말 중요한 모든 정보를 한 곳에 모으는 거예요. 더 고급이거나 깊은 작업을 수행하기 위해 팀이 가는 곳은 여전히 해당 도구여야 해요.

최근에 새 서비스에 표준 템플릿을 사용하도록 팀을 이끄는 데 어려움을 겪고 있어요. 서비스들이 사용하는 표준 라이브러리 집합이나 표준 인프라 관리 방식이 없어요. 플랫폼 팀으로서 모든 것을 관리하는 게 점점 어려워지고 있어요.

Backstage도 여기서 도와줄 수 있어요! Scaffolder는 골든 패스 구현을 끼워 넣을 수 있는 템플릿 프레임워크를 제공해요. GitHub 템플릿 저장소와 비슷하게, 팀이 기반으로 삼을 수 있는 표준 기반을 제공할 수 있어요.

저희 플랫폼 팀은 온보딩 단계 디버깅을 돕는 지원 요청을 점점 더 많이 받고 있어요. 이 영역들을 아주 잘 문서화했고 Git에도 예시가 많지만, 팀들은 계속 같은 문제를 겪고 있어요. 항상 잘못된 복사·붙여넣기거나 템플릿 변수 업데이트를 잊어버리는 거예요. 이 문제를 위한 맞춤 템플릿 솔루션을 찾아보기 시작했어요.

Backstage가 도와줄 수 있어요! Scaffolder를 사용하면 사용자가 양식을 통해 데이터를 입력하고, 그 데이터로 맞춤 템플릿 출력을 만드는 템플릿을 만들 수 있어요. 이 출력은 보통 다양한 소스 제어 시스템에 대한 PR 형태예요. 트래픽 구성용 저장소, 인프라 관리용 저장소, k8s 매니페스트용 저장소가 하나씩 있다고 상상해 보세요. Scaffolder로 이 모든 복잡성을 숨길 수 있어요. 출력 PR에 대한 검토를 받아야 할 수도 있지만, 더 이상 복사·붙여넣기 문제는 없어요!

Backstage 도입은 어떤 모습인가요?

일명 "내가 무슨 일을 자처하는 거지?"

Backstage 도입에 성공하는 모습은 대개 이렇게 생겼어요:

  • PoC를 설정해요.

  • 리더십의 승인을 받아요.

  • 프로젝트의 핵심 이해관계자 그룹을 식별하고 그들과 적극적으로 반복 작업해요.

  • 더 큰 조직에 출시해요.

  • 카탈로그 채택을 100%까지 끌어올려요.

  • 여러분의 Backstage 구현이 팀 외부 개발자들로부터 플러그인을 받기 시작해요.

진정으로 성공적인 Backstage 구현은 고객(개발자)에게 가치를 전달하고, 리더십에게 성과를 증명하며, 이너소스(inner source) 모델을 육성하는 것을 연결해요. 오랜 과정이지만 그것을 이뤄낸 이들에게는 큰 보상이 있답니다!

시작하기

이제 무엇을 기대할지 알았으니, 어떻게 시작하는지 살펴볼게요.

비기술 직군이라면 피드백을 위한 개념 증명 설정을 도와줄 기술 파트너를 찾는 것을 적극 권장해요.

소프트웨어 카탈로그

https://demo.backstage.io/ 로 함께 가 볼게요. 페이지에 처음 이동하면 소프트웨어 카탈로그 페이지로 이동하게 돼요. 이 화면은 현재 (데모) Backstage 인스턴스에 등록된 모든 프로젝트의 보기예요. 가지고 놀 수 있는 일련의 필터들이 있어요. 정말 관심이 있다면 소프트웨어 카탈로그 시스템 모델을 읽어보는 것을 권장해요.

"artist-lookup" 같은 Component를 클릭해 볼게요. 그러면 해당 Component 전용 보기로 이동해요. 상단을 가로질러 "CI/CD", "API", "Dependencies", "Docs", "TODOs" 탭이 보여요. 회사 요구에 맞게 변경할 수 있어요. 중요한 것은 이 모든 탭이 이 Component에 대해 자동으로 필터링된다는 점으로, 이것이 어떻게 다른 도구로의 많은 이동을 대체할 수 있는지 알 수 있어요.

Scaffolder

이제 https://demo.backstage.io/create 로 가 볼게요. 이것은 재사용 가능한 템플릿을 저장하는 곳인 Scaffolder예요. "Demo template"에서 "Choose" 버튼을 클릭해요. 그러면 입력할 정보가 있는 양식으로 이동해요. 반드시 작성할 필요는 없어요. 여기서 핵심은 이 양식이 YAML에서 생성되며, 만들고 싶은 각 템플릿마다 프론트엔드 팀이 맞춤 양식을 구현할 필요가 없다는 점이에요.

더 알아보기 (Learn more)