¿Es bueno el Cloud para todos?

jcastro

Curioso
Ultimamente estoy leyendo con mucha frecuencia, discusiones sobre los beneficios y dificultades que presenta el modelo Cloud que algunos incluso tildan de "moda" y creo que realmente la dificultad radica en poner en la nube una aplicación que no fue diseñada para ello, porque no obtendremos ningun beneficio y se nos dispararán los costes en lugar de reducirlos.

Una aplicación convencional pasada a Cloud mediante virtualización por ejemplo, implica una máquina virtual por cada empresa, con su juego de programas para cada empresa, lo que implica un consumo de recursos hardware muy importante puesto que todas las máquinas deben estar disponibles aunque los usuarios no estén trabajando. Deben actualizarse una a una las empresas, cada una con sus personalizaciones y como además una parte o todo el programa está en el terminal del cliente, prácticamente tendremos el mismo trabajo de mantenimiento en cloud que si fuese en local, por lo tanto beneficio ínfimo.

Una aplicación Cloud nativa tiene una única instancia de programas para todas las empresas, a pesar de que cada empresa tenga sus personalizaciones e incluso puedan ser de sectores totalmente diferentes, como una empresa de transportes, una fabrica de productos alimenticios con trazabilidad, etc. Los datos de diferentes empresas no se pueden mezclar ni siquiera por un error de programación pues van en bases de datos diferentes. La parte de programa que se instala en el terminal del usuario es un cliente fino independiente de las actualizaciones del servidor, pues la lógica de negocio se ejecuta en el servidor de aplicaciones. Esto implica que el mantenimiento se realiza sobre una única aplicación para todas las empresas y esto revierte en una drástica reducción de costes. En cuanto al hardware, los usuarios de una misma empresa, pueden ser atendidos por diferentes servidores al mismo tiempo, de modo que se irán levantando servidores de aplicaciones a medida que la carga de trabajo lo requiera sin depender del número de usuarios y empresas contratados, de esta forma se optimizan los recursos pues cuando en unos paises finaliza la jornada laboral comienza en otros.

Evidentemente los beneficios de uno y otro modelos no tienen nada que ver y por tanto sus costes tampoco.

Un ejemplo práctico de aplicación cloud nativo es http://www.clickgest.com y como podreis comprobar los costes serían totalmente inviables si no fuera cloud nativo.
 

xjimenez

Curioso
Haces una buena diferenciación. Realmente no podemos considerar como aplicación Cloud el primer escenario que presentas, el factor multitenancy de la aplicación és básico tal como explicas.
 

jmugeda

Curioso
Estoy totalmente de acuerdo con la diferenciación de los dos escenarios que describes para saber cuando es realmente aconsejable que la empresa vaya a un entorno Cloud y cuando no. Pero yo añadiría una ventaja que el entorno Cloud + virtualización proporciona a cualquiera de los dos escenarios y es el de la disponibilidad y escalabilidad, ya que en los entorno Cloud, al estar basado prácticamente todos ellos en maquinas virtuales, el cliente se olvida de tener que decidirse entre comprar un servidor con un determinado procesador, una determinada controladora RAID, utilizar un sistema RAID u otro, elegir el modelo y tamaño de los discos, asegurarse que todo el hardware que compre pueda ser ampliado a medio plazo para tener una cierta escalabilidad, etc etc… estas decisiones, que sólo son críticas en una mínima parte de los clientes en donde definir a ese nivel el hardware a utilizar es vital, se simplifica un barbaridad con la única preocupación de que el cliente tenga que especificar cuantos procesadores necesita, cuanta memoria RAM y que tamaña de disco (ya que el RAID estará montando en el propio sistema de virtualización), además de que en cualquier momento puede ampliar (o disminuir) estos requerimientos con nulo impacto para su si sistema. Está claro que estas características también las puede obtener un cliente si monta un sistema de nube privada en sus propias instalaciones, pero debido a como están los precios en el mercado, si a este sistema local se le quiere proporcionar la disponibilidad que garantizan ciertos proveedores de sistemas Cloud (Microsoft por ejemplo asegura el 99’9% de disponibilidad con penalización al cliente si no se cumple), más la replicación de los datos en distintos servidores, más los potentes anchos de banda de dichos proveedores, y además tener que asumir los gastos de tener disponible 24horas un técnico para su mantenimiento, en la mayoría de casos saldrá mucho más cara hacer la inversión en una nube privada que contratar un entorno Cloud con un proveedor especializado.

No quiero generalizar en que cualquiera de los dos modelos que comentas se deben de llevar a un sistema Cloud, por supuesto que el primero que indicas no es optimo, pero habrá un cierto porcentaje de este tipo de modelos (los que por ejemplo tienen varias sedes repartidas geográficamente, o no tienen un CPD de alto rendimiento, o no tienen buen ancho de banda donde está ubicadas sus instalaciones, etc) que sí se puedan llevar a un entrono cloud y aunque no se beneficien del multitenancy, beneficiarse de los otros beneficios que aporta está tecnología.
 

jcastro

Curioso
Hablando bajo el punto de vista de una empresa tic que se dedique a subcontratar hardware cloud a sus clientes y ofrezca sus servicios de mantenimiento sobre estas aplicaciones, no podría estar más de acuerdo con tus reflexiones en cuanto a los males de cabeza que te resuelve el hardware en cloud y fíjate que normalmente el coste es proporcional a cpu, memoria, disco... y esto para cada máquina virtual que necesites tener abierta (una para cada empresa cliente) y es ahí justamente donde la aplicación cloud nativa vuelve a distanciarse enormemente ya que únicamente necesitas contratar una máquina virtual con cpu y memoria dinámica o sea pagas estrictamente por "necesidad en cada momento" y no por tener sesiones abiertas como en el otro caso.
 

xjimenez

Curioso
Muy interesantes vuestros comentarios. Ademas creo que haceis la diferenciación básica entre el prestador del servicio y el usuario y eso es básico. Si bien la infraestructura que soporta el servicio puede ser totalmente trasparente para el usuario y por tanto no notar diferencia entre los dos modelos (como usuario insisto), suponiendo una disponibilidad garantizada identica, sobre el papel deberia haber una diferencia de precio en el servicio o sostenibilidad economica del prestador diferente. Por eso comentaba la necesidad del multitenency, entendiendo esto como factor de viabilidad por parte del proveedor (precio competitivo y retorno de inversion para el proveedor).
 

jcastro

Curioso
Has dado en el clavo Xjimenez la palabra clave es "Multitenancy", tal como dices el usuario es muy probable que no lo note, a excepción del precio y aquellos proveedores que ofrezcan estos servicios por debajo del coste para enmascararlo serán dificilmente sostenibles.
 

jmugeda

Curioso
Efectivamente, yo creo que las aplicaciones totalmente enfocadas y adaptadas al Multitenancy han sido ampliamente acogidas por el mercado y la mayoría de los cliente son conscientes de sus beneficios. Pero yo tengo ganas de ver como otras aplicaciones donde a día de hoy difícilmente se puede compartir un núcleo común de dicha aplicación como son los ERP son acogidas por lo clientes. Ya que por ejemplo, Microsoft quiere liberar la nueva versión de Dynamics NAV este año y la misma utilizará la plataforma cloud Windows Azure del propio Microsoft… y aunque yo tengo una clara convicción de que esto va a ser un gran avance y una gran ventaja, estoy impaciente por ver el grado de aceptación de los clientes y partners del sector, ya que Dynamics NAV, pese a tener una gran núcleo de funcionalidad estándar que viene por defecto con la aplicación, en muchas ocasiones, yo creo que por culpa de algunos Partners (esto es solamente mi opinión y no pretendo abrir un debate sobre esto) se ha utilizado para realizar implantaciones donde se ha minimizado la utilización de la parte estándar del ERP potenciando un alto grado de personalización, rompiendo esta metodología con unos de los principios del Multitenancy (un mismo núcleo de funcionalidad para todos), así que el sector de Dynamics tendrá que “cambiar el chip” y si quiere adaptarse a los nuevos tiempos que corren y que están apunto de llegar, habrá que inculcar a los clientes de las grandes ventajas que conseguirán si apuestan por potenciar la implantación de un ERP con una alta funcionalidad estándar y minimizan sus necesidades de personalización, ya que de esta manera podrán obtener todos los beneficios del Cloud Computing en Multitenancy y beneficiarse de todo lo que ya hemos comentado en este hilo.
 
Arriba