Pasar al contenido principal
Cargando...

Backstage

Inspiring technology by Hunters

Hoy nuestros Hunters nos hablan de Backstage: una plataforma que permite lanzar y gestionar proyectos de desarrollo de software creada por el equipo de Spotify. La idea surgió ante la necesidad de organización de los microservicios: “¿Dónde está ese API para ese servicio que supuestamente usamos todos?”, “Este servicio no responde, ¿quién es el dueño?”...

¿Cómo funciona el catálogo de software?

Backstage es un sistema centralizado que mantiene la pista de la propiedad y metadatos de un proyecto en el ecosistema (servicios, sitios web, librerías…). Este se construye en torno al concepto de ficheros YAML de metadatos, que son almacenados junto al código.

Para crear un componente en el catálogo basta con entrar a él y pulsar en Crear componente. A partir de ahí, se mostrarán diversas Templates que permitirán generar un esqueleto del tipo de software deseado: Microservicios, proyectos completos, librerías… Ya solo tenemos que rellenar un pequeño formulario con nombres tales como descripción, paquete, nombre… y el componente aparecerá en el catálogo junto a los metadatos pertinentes.

Crear componente

Figura 1: Cómo crear un componente

¿Qué son las templates?

Una Template es un documento YAML que contiene metadatos relativos al proyecto software que se va a crear, en el que se incluye describe el flujo de creación del componente, así como un esqueleto que sirve para generar el proyecto software ya inicializado y listo para empezar a añadir lógica. Estas pueden ser creadas de cero y son mantenibles vía Git

¿Cómo está construido Backstage?

Backstage está constituido por tres partes fundamentales:

  • Core: Funcionalidad base del sistema.
  • App: Es una instancia de la aplicación que se despliega y ajusta a lo que se necesita. Une la funcionalidad principal con Plugins adicionales.
  • Plugins: Son funcionalidades adicionales que adaptan el comportamiento de la aplicación a lo que la compañía necesita.

Los plugins pueden ser de tres tipos:

  1. Standalone: Aquellos que se ejecutan por entero en el servidor.
  2. Service backed: Son aquellos servicios que requieren de un servicio backend para funcionar. El más importante en este sentido sería el Service Catalog ya que es el que controla el catálogo de componentes.
  3. Third party backed: Son aquellos que necesitan de un proveedor externo para funcionar.

Backstage es fácilmente dockerizable y trae una información muy precisa sobre cómo hacer el proceso, lo que permite adaptar el código fuente a lo que se precise y construir una imagen propia del producto.

Arquitectura de Backstage

Figura 2: Arquitectura de Backstage

Autenticación

Backstage soporta autenticación con diversos providers como Atlassian, Auth0, Azure, Bitbucket, GitHub,GitLab,Google, Okta, OneLogin o OAuth2Proxy.

Esta se activa por despliegue y pueden añadirse otros Providers customizados

¿Quieres saber más sobre Hunters?

En Altia hemos diseñado varios programas para que las personas que estén terminando su carrera o sean recién tituladas puedan iniciarse en el sector IT, sumando su talento y pasión por la tecnología. Uno de ellos es Hunters: personas que les gustan las tendencias, tienen alma innovadora y contribuyen a anticipar los retos del futuro. Formar parte de Hunters es formar parte de un grupo transversal con capacidad de generar y transferir conocimiento

Únete al programa Hunters y forma parte de un grupo transversal con capacidad de generar y transferir conocimiento.

Jose Luis Antón Bueso

José Luis Antón Bueso

Solution Architect en Altia