Cumpliendo la promesa de DevOps a través de la ingeniería de plataformas

CloudSaaS

Por Douglas Wallace, Gerente de Ventas de Distrito, América Latina y el Caribe (Excepto Brasil) en Pure Storage.

En ingeniería de software, el camino dorado tiene como objetivo proporcionar la forma más sencilla de avanzar a través de una plantilla de autoservicio para tareas comunes. Esta técnica está habilitada por ingenieros de plataformas, que brindan a los desarrolladores la plataforma de desarrollo interna más simple posible y las herramientas que necesitan para ofrecer innovación.

Aquí analizamos la disciplina emergente de la ingeniería de plataformas y los beneficios que aporta al desarrollo de aplicaciones a través de un acceso más fácil y rápido a los servicios y recursos, en particular mediante el uso de plataformas de gestión de datos modernas creadas en entornos contenedorizados de Kubernetes.

Dar a los desarrolladores lo que quieren

Cuando DevOps surgió a fines de la década de 2000, trajo consigo principios clave de propiedad compartida, retroalimentación rápida y automatización del flujo de trabajo para ayudar a cumplir con la visión del desarrollo de software ágil. Requería un alto grado de autonomía para los desarrolladores y, a cambio, les otorgaba las herramientas que necesitaban para ser eficientes.

La automatización es uno de los principios clave de DevOps, ya que el ritmo rápido de los cambios que impulsa es incompatible con los flujos de trabajo de “humanos en el circuito”.

El modo de operaciones preferido por los desarrolladores (y muchos roles de especialistas técnicos como científicos de datos, investigadores de IA, etc.) a menudo se puede resumir en 3 preguntas principales:

  • Acceso instantáneo a los recursos
  • Resultados instantáneos
  • Autoservicio completo

Usar lo anterior como la “estrella del norte” al crear servicios orientados a perfiles técnicos es una excelente manera de permitir la innovación y garantizar una adopción rápida. Si bien brindar recursos y resultados instantáneos puede no ser siempre posible, acercarse lo más posible a lo instantáneo generará una mayor satisfacción.

La ingeniería de plataformas trata al desarrollador como su cliente principal

Hoy en día, vemos la llegada de la era de DevOps a través del auge de la ingeniería de plataformas, una nueva función para una era más madura en el desarrollo de aplicaciones, que proporciona un conjunto de herramientas de autoservicio para empoderar a los desarrolladores. La ingeniería de plataformas opera tras bastidores para proporcionar un catálogo de servicios y componentes de infraestructura de autoservicio fácil de usar para respaldar la experiencia de desarrollo diaria.

La ingeniería de plataformas de mejores prácticas tiene como objetivo ayudar a los desarrolladores de aplicaciones a incorporarse y comenzar a desarrollar más rápido al proporcionar todo lo que necesitan para experimentar, desarrollar, probar e implementar. La plataforma que se pone a disposición de estos desarrolladores a menudo se inspira en los servicios popularizados por la nube pública y su modo de funcionamiento.

Está diseñada para proporcionar acceso instantáneo no solo a las últimas y mejores herramientas y software que sustentan la innovación, sino también para proporcionar un acceso fácil a los datos en sí, protegidos por barandillas y protocolos de seguridad predeterminados.

Kubernetes y gestión de datos

La plataforma ideal centrada en el desarrollador también incluye la gestión de datos. Puede construirse sobre Kubernetes como medio para orquestar, implementar, ejecutar y escalar aplicaciones nativas de la nube, así como para administrar los servicios de datos necesarios para esas aplicaciones.

Las capacidades de gestión de datos son clave para la ingeniería de plataformas porque permiten la exploración y la prueba en condiciones realistas, por ejemplo, utilizando una copia instantánea de los datos de producción en lugar de un conjunto de datos sintéticos poco realista.

Lo ideal es que las capacidades de gestión de datos también se diseñen teniendo en cuenta el autoservicio y brinden acceso a los datos de una manera altamente disponible, confiable, elástica, multiusuario y segura.

Portworx de Pure Storage es un ejemplo de una plataforma de datos moderna de este tipo. Totalmente integrada con Kubernetes, permite al desarrollador obtener acceso fácilmente a opciones de datos persistentes (incluidas capacidades de protección de datos como replicación, copia de seguridad y archivo de datos), pero también a los propios conjuntos de datos a través de la clonación instantánea de datos, incluso permitiendo el uso de la creación y restauración de instantáneas instantáneas de autoservicio para que los desarrolladores puedan experimentar con cambios y volver a estados anteriores de manera rápida y sencilla.

Además, Portworx Data Services ofrece un catálogo de servicios de datos seleccionados, incluidos MongoDB, Elasticsearch, Cassandra, Kafka y PostgreSQL, lo que simplifica la implementación con solo unos pocos clics o una sola llamada a la API, de modo que los desarrolladores puedan implementar o escalar estos servicios de datos fácilmente con la configuración y protección óptimas del almacenamiento de datos.

Esta base ofrece estas cadenas de herramientas y servicios de datos fáciles de especificar a los desarrolladores, de modo que puedan usarlos fácilmente como bloques de construcción, incluso si no tienen un conocimiento extenso de Kubernetes o de cómo implementar un motor de base de datos determinado de manera segura y escalable.

La ingeniería de plataformas permite el Camino Dorado

Los equipos de ingeniería de plataformas están ocupados trabajando sin ser vistos en segundo plano para llevar el Camino Dorado de autoservicio al desarrollo de aplicaciones. Con Kubernetes como marco de orquestación, contenedores y servicios de datos como recursos clave, los ingenieros de plataformas finalmente pueden cumplir plenamente con la visión de una mayor agilidad y productividad de DevOps.

Lea también :