Multicloud

Definición
Los sistemas multicloud ('varios clouds', por oposición a sistemas específicos para un cloud determinado) estarían orientados a la portabilidad, interoperabilidad y migración de aplicaciones cloud, intentando eliminar o mitigar los problemas asociados al vendor lock-in. Pese a su juventud, existen gran cantidad de iniciativas en este campo (la mayoría para IaaS, aunque comienzan a paracer algunas que abordan la problemática de los sistemas PaaS) lo que en gran medida reproduce las debilidades y amenazas que podemos detectar en los sistemas cloud: En la literatura, el término multicloud  se utiliza con significados muy distintos, por lo que es necesario precisarlo. Para ello podríamos establecer varios niveles de sistemas multicloud.
 * falta de estándares
 * inestabilidad
 * trasladan el lock-in del cloud vendor al multicloud vendor

Nivel 0. Sistemas monocloud específicos

 * Sistemas específicamente desarrollados para un cloud determinado y que por tanto presentan una gran dependencia (vendor lock-in) respecto al mismo. La decisión respecto al cloud de destino se toma en etapas tempranas del desarrollo, lo que permite aprovechar las características propias del mismo.


 * Incluimos en esta categoría a las iniciativas de estandarización actuales, debido a que su limitada difusión hace que se conviertan de facto en un elemento más de la heterogeneidad existente en este campo.

Nivel 1. Sistemas multicloud agnósticos

 * Sistemas desarrollados para desplegarse en un único cloud, pero en los que la decisión de asignación (es decir, la definición de la topología) se intenta retrasar lo más posible, de forma que se consiga cierta independencia en el desarrollo y mayor facilidad para desplegarlo o moverlo a un cloud distinto al originariamente planteado. La mayor parte de las iniciativas multicloud actualmente existentes se encuadrarían en este nivel.

Nivel 2. Sistemas multicloud de topología estática

 * Sistemas desarrollados para desplegarse en varios clouds e interactuar con servicios disponibles en clouds remotos y de esta manera aprovechar ventajas relativas ofrecidas por unos y otros. Una vez definida la topología, asignando cada uno de sus componentes o artefactos a un cloud concreto, esta permanece inmutable.

Nivel 3. Sistemas multicloud de topología dinámica

 * Sistemas multicloud en los que la decisión inicial de asignación a cloud de cada uno de sus artefactos puede revertirse, debido fundamentalmente al análisis de costes o rendimiento del sistema. Precisan de algún tipo de mecanismo de monitorización para poder realizar dicho análisis, de toma de decisiones de reasignación y de redespliegue. Estas operaciones pueden realizarse de forma automática o manualmente, con distintos grados de soporte e interacción usuario/herramientas.

Clasificación
Un primer intento de clasificación de las iniciativas multicloud nos llevaría a distinguir los siguientes tipos:


 * iniciativas basadas en estandarización


 * iniciativas basadas en el desarrollo de middleware y APIs


 * iniciativas basadas en MDD