Hay demasiadas cosas que cuidar, como el espacio del servidor, los entornos de desarrollo, la seguridad, las actualizaciones de software, el mantenimiento del hardware, entre otras. Por años las empresas han estado invirtiendo muchos recursos para mantener las plataformas funcionando. Es por eso que surgió la necesidad de soluciones de plataforma en la nube.
Estas soluciones emplean un modelo de computación en la nube para proporcionar todo lo que los desarrolladores necesitan para hacer su trabajo, desde entornos de desarrollo alojados y herramientas de base de datos, hasta completar las capacidades de administración de aplicaciones. En el siguiente pos te decimos cuáles son las mejores plataformas en la nube open source para empresas
A continuación encontrarás una selección de las plataformas en la nube de código abierto para la empresa que lideran el mercado actual.
Alibaba
Aunque apenas se menciona cuando se habla de plataformas en la nube de código abierto y PaaS, el negocio de computación en la nube de Alibaba ha estado creciendo a un ritmo meteórico, ya ha conquistado el 50% del mercado de la nube pública china y ha aprendido concienzudamente cómo servir a los mercados fuera de China.
Por ejemplo, están comenzando a proporcionar asistencia de facturación en dólares estadounidenses en 168 países y a diseñar servicios especialmente diseñados para mercados extranjeros.
Los servicios de plataforma en la nube incluidos en la oferta de Alibaba abarcan muchas características gratuitas, incluidos los servicios de contenedor para Docker y Kubernetes, Registro de contenedores, Auto Scaling y DataWorks, un entorno seguro para el desarrollo de datos fuera de línea.
Sus servicios están bien documentados y están acompañados de todo lo que pueda necesitar para comenzar a migrar sus aplicaciones a la nube de inmediato, como muchos videos tutoriales.
Stackato
Stackato es un producto PaglS políglota basado en Cloud Foundry y Docker que se ejecuta sobre su infraestructura en la nube y sirve como plataforma de lanzamiento para sus aplicaciones. Los usuarios de Stackato dicen que proporciona una plataforma de aplicación ágil y robusta que ayuda a mejorar la productividad de los administradores y desarrolladores de la nube.
Se adapta bien a las implementaciones de la nube empresarial, combinando la flexibilidad de acceder directamente a la VM en la infraestructura de la nube con la configuración automatizada proporcionada por un PaaS completo. Las infraestructuras de nube compatibles incluyen HP Cloud Services, Citrix XenServer, AWS, OpenStack, VMware, entre otros.
En Stackato, cada aplicación tiene su propio contenedor de Linux (LXC), que garantiza un intercambio de recursos eficiente y seguro. Su gama de servicios se compone de: Helion Control Plane, que Stackato utiliza para comunicarse con la nube subyacente y administrar los ciclos de vida del servicio; Helion Service Manager, un repositorio de servicios complementarios disponibles para las aplicaciones; Helion Cloud Foundry, un tiempo de ejecución elástico diseñado para simplificar el alojamiento y desarrollo de aplicaciones; Helion Code Engine, un servicio de entrega continua integrado con repositorios Git, tanto privados como públicos, y Helion Stackato Console, una interfaz web para administrar todas las funciones de Helion Cloud.
Tsuru
Tsuru es un producto PaaS (plataforma como servicio) basado en Docker capaz de orquestar y ejecutar aplicaciones en un entorno de producción. Es una plataforma de múltiples proveedores de código abierto que admite sitios con millones de usuarios.
Los usuarios de Tsuru afirman que mejora sustancialmente el tiempo de comercialización sin renunciar a la simplicidad, alta disponibilidad, seguridad o estabilidad. Se puede ejecutar en una variedad de infraestructuras en la nube, ya sean públicas o privadas, siempre que sean compatibles con una máquina Docker.
También es compatible con casi todos los lenguajes de programación disponibles, lo que da a los desarrolladores la libertad de elegir según sus preferencias.
Con Tsuru, puedes utilizar diversos almacenes de datos, incluidas bases de datos SQL o NoSQL, o alternativas en memoria, como Memcached o Redis. Simplemente selecciona el que prefieras y conéctalo a tu aplicación. Para administrar la aplicación, puedes elegir entre usar la línea de comando o una interfaz web y luego implementarla a través de Git. La infraestructura de Tsuru se encargará de todos los detalles esenciales.
OpenShift
OpenShift es una plataforma basada en Kubernetes, con un instalador flexible y muy rápido y un amplio soporte de API, que permite a los desarrolladores expandir la plataforma de acuerdo a sus necesidades.
Está construido teniendo en cuenta la seguridad, lo que se ilustra con un ejemplo: se espera que los contenedores se ejecuten como usuarios no root, y cuando ese no es el caso, OpenShift requiere una anulación explícita para ejecutar el contenedor.
Su uso de Kubernetes requiere una cantidad considerable de servidores, y se necesita una cierta curva de aprendizaje para dominarlo. Es por eso que esta plataforma no es adecuada para implementaciones pequeñas a menos que puedan convertirse en una implementación más grande en el futuro cercano.
Los usuarios de OpenShift destacan sus rápidos procedimientos de instalación y configuración, así como su fácil mantenimiento de módulos y engranajes. Otra ventaja es el hecho de tener su propio repositorio de Git. Lo que no les gusta demasiado es la dificultad de leer e interpretar registros. En particular, cuando hay un error al cargar un proyecto, es difícil entender dónde está el problema.
Cloudify
Cloudify es un marco de orquestación diseñado para modelar aplicaciones y servicios mientras automatiza sus ciclos de vida. Esto incluye la capacidad de implementar en cualquier entorno de nube o centro de datos y realizar un mantenimiento continuo.
También ofrece herramientas para monitorear todos los aspectos de las aplicaciones implementadas, detectar condiciones de falla y resolverlas, ya sea manual o automáticamente.
Una de las características más notables de Cloudify es el modelado de planos basado en TOSCA. Esta innovación permite a los desarrolladores usar YAML para crear planos de las topologías de la aplicación. YAML es un lenguaje de serialización de datos legible para humanos, utilizado para escribir definiciones basadas en la especificación TOSCA, que da a los desarrolladores una forma estandarizada de describir las interconexiones entre aplicaciones, sistemas y componentes de infraestructura en la nube.
WSO2
Si trabajas intensamente en SOA, seguramente debes lidiar con muchas API internas y externas. Ese es el escenario donde WSO2 brilla, gracias a su Administrador de API, que es capaz de manejar el ciclo de vida completo de la API. WSO2 cumple con la mayoría de los requisitos que tus clientes podrían presentar, incluidas las versiones, la documentación de la API y la descarga de SSL.
WSO2 utiliza un concepto de tienda en el que los desarrolladores pueden encontrar, probar y calificar las API. La implementación es simple y directa, dando muchas opciones para controlar el flujo de la API.
También ofrece una función de recuperación automática, en caso de que se produzca una suspensión de punto final. Todas estas cualidades tienen como objetivo reducir el tiempo de comercialización, simplificar la administración de costos y, en general, mejorar la agilidad de los procesos comerciales.
Cloud Foundry
Cloud Foundry destaca por estar disponible como una aplicación de software independiente de código abierto, lo que la hace independiente de los proveedores de la nube. Se puede implementar en VMware vSphere u otras infraestructuras en la nube, como HP Helion, Azure o AWS. O incluso podría elegir alojarlo usted mismo en su servidor OpenStack.
Cloud Foundry está diseñado para ofrecer un rápido desarrollo e implementación de aplicaciones a través de una arquitectura altamente escalable y flujos de trabajo amigables con DevOps.
Su soporte de lenguaje incluye Python, Ruby, PHP, Java y Go, entre muchos otros. Sin embargo, para encajar adecuadamente en Cloud Foundry se recomienda que tu proyecto siga el estándar de aplicación Twelve-Factor: una metodología especialmente diseñada para desarrollar aplicaciones óptimas de software como servicio (SaaS).