Te explicamos por qué combinar multicloud y open source te permite aprovechar las fortalezas específicas de tu proveedor actual sin renunciar a la flexibilidad que promete la nube pública.

El open source puede ser parte de la solución para sacarle el máximo partido a la flexibilidad de la nube
Uno de los grandes atractivos de la nube es la promesa de una flexibilidad casi ilimitada. Sin embargo, si los clientes no pueden cambiar de proveedor cloud sin asumir costos altos, dolores de cabeza legales o incompatibilidades tecnológicas, esa flexibilidad queda seriamente comprometida.
A primera vista, usar varios proveedores cloud parecería una solución sencilla, pero no lo es tanto. En este artículo analizamos el problema del vendor lock-in para los clientes de la nube, por qué adoptar una estrategia multicloud no lo resuelve por sí solo y cómo el open source puede ayudar.
Cómo se produce el vendor lock-in en la nube
Si tu tecnología solo está disponible a través de un único proveedor y no puedes seguir usándola sin pagarle licencias o cuotas de mantenimiento, estás en una situación de vendor lock-in. Migrar a la nube debería liberarte de este tipo de restricción porque, en gran medida, puedes usarla bajo tus propios términos. Por ejemplo, todos los grandes proveedores cloud ofrecen Precios pay-as-you-go, lo que significa que, en teoría, puedes apagar tu entorno, exportar tus datos y máquinas virtuales e irte cuando quieras.
Además, los servicios cloud suelen estar diseñados para soportar la migración de datos tanto hacia las plataformas como desde ellas. Los proveedores han desarrollado servicios y herramientas que te ayudan a migrar tus bases de datos y las aplicaciones que las usan, ya sea hacia la nube o entre nubes.
Aun así, cambiar de proveedor en la nube no es tan sencillo. Tomemos como ejemplo la transferencia de datos: migrar datos entre servidores que utilizan el mismo motor de base de datos (migración homogénea) es relativamente fácil. Pero un cambio tan menor como el número de versión puede sacar a la luz una serie de problemas que hay que resolver antes de pasar a un motor distinto (migración heterogénea). Esto puede requerir un enfoque y una aplicación completamente diferentes.
También hay que tener en cuenta las aplicaciones que se construyeron para aprovechar las fortalezas específicas de la oferta de tu proveedor actual. Reconfigurar una aplicación así para que corra de forma nativa en otra nube es complejo. Y ahí está el meollo del vendor lock-in en la nube: cada proveedor hace las cosas un poco distinto, así que pasar de uno a otro siempre implicará cierto grado de dificultad, sin olvidar la brecha de conocimiento que tu equipo tendrá frente a las tecnologías y al enfoque del nuevo proveedor.
Por qué el multicloud por sí solo no es la respuesta
Un enfoque multicloud reduce tu dependencia de un único proveedor, pero no es una solución mágica contra el vendor lock-in. Mover una aplicación o un workload existente desde un despliegue on-premises a la infraestructura de un proveedor cloud es relativamente sencillo, y el comprador queda bastante protegido frente al vendor lock-in. Cuando le pagas a un proveedor cloud por servidores, red y almacenamiento, el costo de mover tus máquinas virtuales a otro proveedor se reduce básicamente al costo de aprender una nueva API de aprovisionamiento.
Con los servicios la historia es distinta. Los proveedores de nube pública suelen diseñar sus servicios con herramientas de gestión propietarias que solo funcionan dentro del ecosistema cloud de ese proveedor. Por ejemplo, para desplegar una sola aplicación en Amazon Web Services (AWS) podrías usar servicios como Kinesis, DynamoDB, ElastiCache, Simple Queue Services, TimeStream y Lambda, todos ellos servicios propietarios disponibles únicamente en AWS.
Dado el costo de refactorizar una aplicación desarrollada para una plataforma cloud específica y llevarla a otra, desplegar servicios cloud con combinaciones complejas de servicios propietarios de alto nivel dificulta desacoplar tu elección tecnológica de tu elección de proveedor cloud. En teoría, se puede ejecutar el mismo workload en varias nubes, pero eso obliga a quedarse en el mínimo común denominador y a sacrificar el potencial de innovación que ofrece la nube pública.
Tu estrategia multicloud tiene más probabilidades de éxito si diseñas y construyes cada aplicación en la nube que mejor se adapte a ella. Sin embargo, muchas veces es la conveniencia, y no el análisis, la que dicta dónde se despliega un workload. Hay que sopesar las fortalezas relativas de cada nube y cómo se ajustan a tu caso de uso de negocio. Sin datos confiables que indiquen cómo se comportará un workload en una nube determinada, asignarlo a la nube adecuada depende más de la suerte que del análisis.
Cómo el open source puede ayudar a prevenir el vendor lock-in
Los clientes pueden recurrir a una variedad de plataformas y herramientas de cloud computing open source para reducir su dependencia de plataformas propietarias. En la práctica, el open source desacopla tu elección tecnológica de tu elección de proveedor cloud. Los desarrolladores pueden adaptar el código fuente de estas plataformas y herramientas a sus necesidades a medida que despliegan, aprovisionan y gestionan workloads y entornos.
Kubernetes, el sistema de orquestación de contenedores que automatiza el despliegue, el escalado y la gestión de software, y el service mesh Istio, fueron liberados como open source por Google, que se ha consolidado como un referente y contribuyente clave de la comunidad open source.
Por ejemplo, muchas herramientas de Google Cloud Platform (GCP) están construidas sobre tecnología open source, y GCP suma encima una capa de gestión operativa para aportar valor adicional y permitir que los clientes adopten la tecnología rápidamente. Google Kubernetes Engine (GKE) y servicios como Dataflow, Cloud Composer, Managed Service for Prometheus y Cloud Data Fusion están diseñados de tal forma que, en esencia, puedes tomar la misma lógica de negocio y ejecutarla en cualquier otro entorno con solo implementar el nuevo componente operativo.
Una plataforma como Anthos de Google habilita la modernización de aplicaciones en multicloud híbrido y te permite orquestar y ejecutar clústeres de Kubernetes e incluso VMs (en private preview) sobre GCP, AWS, Azure, nube privada y bare metal. Aunque no uses Kubernetes como base de toda tu nube, resulta útil para orquestar algunos de los workloads que corren dentro de una nube pública.
Para asegurar la viabilidad futura del software open source, las empresas deberían fomentar e incentivar las contribuciones open source de sus empleados. Un informe reciente de la CNCF reveló que el 96% de las organizaciones ya usa Kubernetes, y el número de otros proyectos open source nativos de la nube se ha disparado en el último año. El software open source puede facilitar una estrategia multicloud efectiva y evitar que las empresas queden a merced de una única nube.
Sin embargo, depender de una cantidad importante de servicios open source tiene su contraparte: tú asumes las operaciones del Día 2. Eso significa hacerse cargo del monitoreo, las actualizaciones y la seguridad, y todo ese trabajo adicional puede no compensar los recursos y procesos extra que vas a necesitar.
También tendrás que operar con mecanismos de soporte mínimos, en la mayoría de los casos sin ningún tipo de SLA, así que estarás solo si ocurre cualquier caída en producción. ¿Y qué pasa cuando quieres sumar funcionalidades a un servicio clave? Tus Engineers tendrán que sacar tiempo para aportar a la comunidad open source en lugar de mejorar la funcionalidad principal de tu producto. Igual que ocurre con una estrategia multicloud, apoyarse únicamente en el open source para evitar el vendor lock-in tampoco es la respuesta.
¿Y ahora qué sigue?
Entonces, ¿cómo aprovechas el verdadero poder de la nube sin las restricciones que un proveedor pueda imponerte? Trabajar con un partner que conozca a fondo a todos los grandes proveedores cloud te ayuda a planificar tu estrategia cloud para extraerle el máximo valor de negocio al proveedor que elijas.
El equipo de DoiT no solo cuenta con amplia experiencia ayudando a las empresas a aprovechar varias nubes para alcanzar sus objetivos de negocio, sino que también ha desarrollado herramientas open source que agilizan tus operaciones cloud, resuelven retos técnicos complejos y reducen tu dependencia de plataformas propietarias. Con el enfoque adecuado, puedes aprovechar las fortalezas específicas de la oferta de tu proveedor actual sin renunciar a la flexibilidad que promete la nube pública.