Ingeniería de plataformas: Revolucionando los procesos de desarrollo con la adopción de Backstage

by Keiran Holloway, Senior Manager, Professional Services Delivery, Rackspace Technology

Introducción

Rackspace Technology ha adoptado Backstage para ayudar a los clientes a establecer una plataforma de desarrollo interno (IDP). Esto resulta enormemente valioso, ya que crea un portal que incluye una cartera de plantillas de despliegue, que los equipos de desarrollo pueden utilizar para desplegar rápidamente -y de forma segura- infraestructuras en la nube.

Backstage.io, desarrollada por Spotify, se ha convertido en una potente plataforma para crear portales para desarrolladores. Simplifica los flujos de trabajo de los desarrolladores, centraliza las herramientas de infraestructura y mejora la productividad de los equipos. Para los desarrolladores nuevos en Backstage.io, esta guía les guiará a través de la configuración y el aprovechamiento de sus capacidades para agilizar sus procesos de desarrollo.

El punto de partida obvio para adoptar esta herramienta en su organización es implantar el software de código abierto. Sin embargo, esta es la parte fácil: impulsar la adopción de una plataforma como Backstage puede convertirse a menudo en un problema del huevo y la gallina. Es posible que los desarrolladores desconfíen de esta herramienta, que ofrece funciones limitadas, así que ¿cómo puede impulsar su adopción en su organización?

Los siguientes aspectos se consideran fundamentales para impulsar la adopción:

1. Establecer un entorno de desarrollo sólido: hacerlo repetible para la incorporación de nuevos ingenieros

Por qué es importante: La coherencia y la repetibilidad en el entorno de desarrollo son cruciales para minimizar los tiempos de configuración y evitar el síndrome de "funciona en mi máquina", especialmente cuando se incorpora a nuevos ingenieros. Backstage, con sus múltiples componentes y su curva de aprendizaje algo empinada, subraya esta necesidad. Adoptar los siguientes enfoques puede facilitar este proceso:

  • Automatice los procesos de configuración: Backstage consiste en automatizar los flujos de trabajo y las prácticas de despliegue. La primera plantilla que cree debe permitir una incorporación más rápida de los desarrolladores. Rackspace ofrece varias plantillas que permiten la rápida implementación de un entorno de desarrollador local o un entorno de prueba en AWS, GCP o Azure. Este proceso, que dura menos de 10 minutos, reduce considerablemente las barreras de entrada.
  • Documéntalo todo: Es esencial documentar claramente cada paso del proceso de configuración. Esta documentación debe ser fácilmente accesible para los nuevos ingenieros, idealmente dentro de su portal Backstage.io.
  • Establezca una lista de tareas pendientes: Lo primero que deben hacer los ingenieros es incorporarse a la empresa. Asegúrese de que se familiarizan con el uso de las herramientas que va a desarrollar.
  • Programar reuniones frecuentes y un apoyo cohesionado:  Al adoptar Backstage, por lo general todos están en el mismo barco y aprenden juntos. Disponer de canales Slack/Teams comunes ha sido muy valioso para eliminar rápidamente los obstáculos. A medida que los ingenieros se incorporan, la celebración de sesiones de demostración también ayuda a impulsar la adopción, responder a las preguntas y conseguir que todo el mundo empiece a trabajar.

2. Sentar las bases correctas: autenticación de usuarios e integración con los directorios existentes

Por qué es importante: Unos mecanismos de autenticación adecuados son cruciales para garantizar que la incorporación de ingenieros sea coherente y que se acceda a los servicios de forma segura.

Cómo conseguirlo:

  • Elija el método de autenticación adecuado: Backstage admite varios proveedores de autenticación (por ejemplo, OAuth, SAML, LDAP). Evalúe su infraestructura actual para seleccionar el método de autenticación más adecuado.
  • Integración con directorios existentes: Si tu organización utiliza Active Directory u otro servicio de directorio, intégralo con Backstage para gestionar el acceso y los permisos de los usuarios sin problemas. Esto también ayuda a mantener el cumplimiento de su política de bajas, incorporaciones y traslados.

3. Mecanismos de integración entre bastidores

Por qué es importante: Backstage y sus herramientas de canalización CI/CD deben funcionar a la perfección. Una integración torpe puede reducir rápidamente el interés de los desarrolladores.

Cómo conseguirlo:

  • Asegúrese de que está utilizando aplicaciones OAuth: Backstage puede integrarse con plataformas como GitHub. Configurar OAuth desde el principio facilita considerablemente este proceso.
  • Comprenda sus patrones de integración con los proveedores de servicios en la nube: Necesitará mecanismos para desplegar recursos dentro de su nube. Deberían definirse y aplicarse técnicas similares a la OIDC para impulsar una adopción significativa.
  • Documentación: Documentar estos flujos y procesos es crucial. Sin una documentación clara, es casi seguro que los desarrolladores encuentren obstáculos, lo que repercutirá negativamente en la adopción.

 4.        Componentes clave de Backstage

Comprender los componentes clave de Backstage es imprescindible para empezar. Familiarícese con todo lo siguiente: Catálogo de programas, documentos técnicos y plantillas de andamios.

  • Catálogo de software: En el corazón de Backstage se encuentra el Catálogo de software, un sistema centralizado para el seguimiento y la organización de los componentes de software en toda la organización. Proporciona visibilidad sobre lo que existe, cómo se mantiene y a quién pertenece.
  • Documentación técnica: Backstage integra la documentación técnica directamente en el portal para desarrolladores. Gracias a Tech Docs, los equipos pueden crear, almacenar y acceder a la documentación junto con su código, garantizando que esté siempre actualizada y accesible.
  • Plantillas de andamios: Estas plantillas permiten a los equipos poner en marcha rápidamente nuevos proyectos, ya que ofrecen plantillas predefinidas para los tipos habituales de proyectos de software. Esto estandariza la configuración de los proyectos y reduce el tiempo dedicado al código repetitivo.

5. Comprensión de conceptos clave: plantillas, plugins y acciones

Plantillas: En Backstage, las plantillas sirven como planos para crear nuevos componentes como servicios, bibliotecas o sitios web. Esbozan el proceso de andamiaje, detallando qué archivos crear y qué parámetros configurar.

Ejemplos:

  • Una plantilla de servicio Node.js que configura un proyecto básico de API REST.
  • Una plantilla de documentación para crear un sitio Tech Docs.

Plugins: Los plugins amplían la funcionalidad de Backstage, permitiéndole integrar servicios de terceros, herramientas y funcionalidades personalizadas en su portal de desarrollador.

Ejemplos:

  • Un plugin de CI/CD para integrarse con Jenkins o CircleCI y ver el estado de la compilación directamente en Backstage.
  • Un plugin de gestión de incidencias para integrarse con PagerDuty u Opsgenie.

Acciones: Las acciones son las operaciones que realiza el scaffolder al crear un nuevo componente a partir de una plantilla. Pueden incluir la creación de nuevos repositorios, la adición de archivos y la configuración de servicios.

Ejemplos:

  • Una acción que inicializa un repositorio Git con un archivo README y LICENSE.
  • Acción que configura un despliegue de Kubernetes para un nuevo servicio.

Potencie su viaje de desarrollo con Backstage.io

Backstage.io destaca como una plataforma formidable para impulsar la productividad de los desarrolladores y la eficiencia operativa. Establecer un entorno de desarrollo sólido, sentar unas bases sólidas, comprender sus componentes clave y utilizar con destreza plantillas, plugins y acciones le permitirá mejorar notablemente su flujo de trabajo de desarrollo. Esta guía le servirá de introducción para comenzar su andadura en Backstage.io. A medida que profundice en sus funciones y capacidades, descubrirá numerosas oportunidades para adaptar y perfeccionar sus prácticas de desarrollo.

Conclusión

Rackspace Technology aporta una gran experiencia, no sólo en la adopción de estas tecnologías, sino también en garantizar su éxito dentro de su organización.

Aprende a potenciar la innovación y el crecimiento inscribiéndote en el Taller de ideación de ingeniería de plataformas → Platform Engineering Ideation Workshop

Nota: Actualmente, esta oferta sólo la ofrece nuestro equipo de servicios profesionales de EMEA.

 

Descubra cómo Rackspace Platform Engineering puede ayudar a su empresa a crecer