Backstage | Developer Portals

eeeclipse·2020년 5월 5일
1

개요

Backstage는 오픈소스 개발자 포털로, 회사내 다양한 인프라를 한곳에서 보고 관리하기 위한 플랫폼입니다.

특징

Spotify가 사내에서 만들어서 4년째 쓰고있는 것을 오픈소스로 공개

프론트/백엔드 모두 플러그인 구조로 다양한 시스템을 붙이고, 자체 시스템도 연동 가능

GraphQL 통합 Backend 가 회사 정보 및 인증을 연계

TypeScript, React, Material-UI 로 구성된 프론트엔드

아직 백엔드 및 내부에서 사용하는 서비스 플러그인들을 모두 공개하지 않음

구성요소

  • Backstage Service Catalog for managing all your software (microservices, libraries, data pipelines, websites, ML models, etc.)

  • Backstage Software Templates for quickly spinning up new projects and standardizing your tooling with your organization’s best practices

  • Backstage TechDocs for making it easy to create, maintain, find, and use technical documentation, using a "docs like code" approach

  • Plus, a growing ecosystem of open source plugins that further expand Backstage’s customizability and functionality

도입배경

Spotify가 사내에서 만들어서 4년째 쓰고있는 것을 오픈소스로 공개,
사내에서는 110개의 플러그인, 2000+개 백엔드 서비스, 4000+개 데이터 파이프라인이 여기에 연결되어 사용중이며, 실제로 온보딩 타임을 절반 정도로 줄이는 효과

회사가 커질수록, 인프라스트럭쳐 시스템은 복잡해집니다. 다양한 백엔드 시스템을 갖게되고, 프론트엔드 또한 다양한 변화가 있기 마련입니다. 팀윙크에는 멋진 크루들이 있지만 모든 크루들이 모든 운영도구를 잘 이해하고, 알아야 하는 것은 아닙니다. Terraform, GCP/AWS/Azure CLIs, Gitlab CI, Prometheus, Kubernetes, Docker, Grafana, ELK, 기타 등등…

Backstage는 이러한 운영도구들을 통합적으로 잘 관리하여, 서비스가 안정적으로 운영될 수 있도록 하기 위하여 도입을 시도합니다.

Use-Cases

  • 새로운 마이크로 서비스 개발
  • 개발 문서 집중화
  • Mobile Feature 퍼포먼스 리뷰

01. Requirement

  • npm
  • node 12 or 14
  • yarn

02. 구축

Clone and Build

$ git clone https://github.com/backstage/backstage.git
Cloning into 'backstage'...
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 97042 (delta 2), reused 0 (delta 0), pack-reused 97036
Receiving objects: 100% (97042/97042), 370.92 MiB | 25.16 MiB/s, done.
Resolving deltas: 100% (64375/64375), done.

설치

$ yarn install
$ yarn ts
$ yarn build
$ yarn start

Reference

homepage

github

profile
mathematician, researcher, Data Scientist ⊗ Engineer ⊗ Architect, DBA

0개의 댓글