Backstage è una piattaforma open per costruire portali per sviluppatori, alimentata da un catalogo centralizzato, che mette ordine nei microservizi e nell’infrastruttura e consente ai team di prodotto di deliverare più rapidamente codice di alta qualità, senza compromettere l’autonomia.
La piattaforma è progettata per unificare il tooling, i servizi e la documentazione dell’infrastruttura, per creare un ambiente di sviluppo semplificato end-to-end.
Backstage è stato sviluppato da Spotify e ora è un progetto open source della Cloud Native Computing Foundation, che a sua volta fa parte dell’organizzazione no-profit Linux Foundation.
La piattaforma, di base, include innanzitutto Backstage Software Catalog, che aiuta gli sviluppatori a gestire tutto il proprio software: microservizi, librerie, pipeline di dati, siti web, modelli di machine learning e così via.
Backstage Software Templates consente di avviare rapidamente nuovi progetti e standardizzare gli strumenti con le best practice della propria organizzazione. Infine, Backstage TechDocs facilita la creazione, la manutenzione, la ricerca e l’utilizzo della documentazione tecnica, utilizzando un approccio “docs like code”.
In più, la piattaforma può contare su un ecosistema crescente di plugin open source che espandono ulteriormente le possibilità di personalizzazione e le funzionalità di Backstage.
Backstage semplifica la gestione di 10 servizi da parte di un solo team e permette all’intera azienda di gestirne migliaia. Ogni team può vedere tutti i servizi di cui è owner e le risorse correlate: deployment, data pipeline, stato delle pull request e così via.
La gestione centralizzata di tutto il software in un unico posto consente di costruire un ecosistema ordinato, e di evitare confusione.
Come è nato Backstage e le motivazioni che hanno spinto alla sua realizzazione le ha illustrate Spotify, che ha sempre creduto nei vantaggi che derivano dall’avere team di sviluppo autonomi. Ma l’esperienza diretta ha anche insegnato che, più velocemente si cresce, più frammentato e complesso diventa il proprio ecosistema software. E, di conseguenza, tutto diventa di nuovo più lento.
Centralizzando i servizi e standardizzando il tooling, Backstage ottimizza l’ambiente di sviluppo end-to-end. Tale standardizzazione, secondo Spotify, invece di limitare l’autonomia, libera gli sviluppatori e gli ingegneri dalla complessità dell’infrastruttura. In questo modo, l’azienda può tornare a costruire e scalare, in modo rapido e sicuro.
Backstage nasce anche dalla necessità di gestire la complessità di Kubernetes.
Chi sviluppa un servizio oggi, ha messo in evidenza Spotify, probabilmente fa il deployment come container, che è dentro un pod che a sua volta è dentro un cluster (insieme a una serie di altri servizi di terzi), con deployment su diversi cluster che girano in tutto il mondo. Può essere difficile tenere traccia di tutto ciò.
Secondo Spotify, nonostante l’adozione diffusa di Kubernetes, tutti gli strumenti per navigare in questa complessità erano stati focalizzati sulle esigenze degli amministratori dei cluster. Questo può rendere qualcosa di semplice come controllare lo stato di salute del proprio servizio, abbastanza complicato.
Ed è questo il motivo per cui il team di Spotify ha sviluppato uno strumento di monitoraggio di Kubernetes focalizzato sulle esigenze degli owner dei servizi e lo ha poi reso una funzione core di Backstage. L’intento era quello di rendere l’esperienza di gestione dei servizi distribuiti su Kubernetes più facile per tutti gli sviluppatori.
Come tool di monitoring standalone, secondo Spotify può già migliorare l’esperienza di qualsiasi sviluppatore che distribuisce su Kubernetes. Combinato con le altre funzionalità di Backstage, gli sviluppatori ottengono una soluzione completa per costruire e gestire i loro servizi.
Al core di Backstage c’è il suo service catalog, che aggrega le informazioni sui sistemi software in modo da avere una UI coerente e un unico strumento da usare per gli sviluppatori.
Per anni, ha sottolineato l’azienda, Backstage ha fornito agli sviluppatori di Spotify un posto per vedere tutto ciò che hanno bisogno di sapere sui loro servizi: API, documentazione, proprietà e così via.
Backstage è stato poi donato come open source alla Cloud Native Computing Foundation e attualmente è nella fase Sandbox.