¿LA PAREJA PERFECTA?
Más allá de la consolidación, la virtualización 2.0 volverá más ágiles y escalables las aplicaciones para que encajen en SOA. Por Andy Dornan / Primera Parte
Son las dos tecnologías más actuales, y con razón. La virtualización de los servidores ahorra costos, además de dar flexibilidad. Y la arquitectura orientada a servicios (SOA, por sus siglas en inglés) provee la oportunidad de reutilizar aplicaciones y dar respuesta rápida a las necesidades del negocio.
SOA contribuye a la virtualización al desglosar las aplicaciones en fragmentos más pequeños que se distribuyen mejor entre servidores múltiples o en los CPU. Mediante tiempos de ejecución comunes, como los estándares Java y XML, esta infraestructura protege las interfaces de programación de aplicaciones (API) frente al sistema operativo o hardware subyacente. A su vez, la virtualización simplifica el uso de SOA, al facilitar el aprovisionamiento de nuevos recursos de hardware.
Podría decirse que son la pareja perfecta, si no fuera porque hay muchos obstáculos que se interponen en su unión. En otras palabras, los beneficios de combinar SOA y la virtualización no son tan obvios como se creyera.
Las aplicaciones para la gestión de la virtualización presentan problemas de comunicación cuando se trata de SOA, mientras que los servicios Web equivalentes no sirven para establecer límites en las máquinas virtuales. Con todo, el que el matrimonio de agilidades todavía no se consuma no significa que las organizaciones que inviertan en SOA, virtualización o en ambas tengan que esperar ese acoplamiento para decidir la compra. Grandes proveedores como BEA Systems, IBM, Microsoft, Red Hat y Sun Microsystems, ya están trabajando en la sinergia SOA/virtualización.
LOS BEMOLES DE SU UNIÓN. La virtualización de servidores hace que muchos profesionales IT piensen en la consolidación, y es fácil ver porqué: una máquina que acepte tareas que antes requerían dos, cuatro o incluso 10 servidores supone un igual ahorro en hardware, gestión y enfriamiento. Pero éste es sólo el primer paso. El mayor beneficio de la virtualización provendrá de una mayor flexibilidad, derivada de partir los servidores en unidades menores de recursos, como CPU, memoria y espacio en disco, que se conjuntan y adjudican a las aplicaciones según la demanda.
Lo que la virtualización hace para el hardware, SOA lo hace para el software. Los programadores ya no requieren desarrollar cada aplicación por separado; con SOA construyen aplicaciones a partir de servicios simples que se pueden usar una y otra vez. Estos programadores, cada vez más, son analistas del negocio que usan ambientes de desarrollo basados en modelos y nunca tienen que escribir una línea de código.
El problema estriba en que la reutilización que convierte el desarrollo de
aplicaciones en un procedimiento mucho más rápido, también puede estresar el hardware subyacente. Cuando un servicio se reutiliza, el servidor que lo corre exige mucha más capacidad de cómputo.
Por otro lado, las variables cargas de SOA exigen asignaciones del servidor que van desde una pequeña fracción de sus capacidades hasta la necesidad de muchos servidores para dar el servicio. Del lado de la virtualización, la mayor parte de la industria se encuentra todavía en el estadio de consolidación (dividir un solo servidor entre múltiples sistemas operativos). Conjuntar los recursos de múltiples servidores requiere moverse en la dirección opuesta, hacia algo más cerca del grid computing o el clústering.
Una infraestructura verdaderamente ágil requiere también máquinas virtuales que puedan moverse con rapidez entre servidores. Algo que es muy importante es que la capacidad de gestión esté integrada por todo el software. Los proveedores de virtualización ofrecen herramientas de gestión que facilitan la instalación y eliminación de las máquinas virtuales, pero esos instrumentos todavía no están integrados con la administración de aplicaciones y de gobernabilidad de SOA.
La virtualización puede ayudar a SOA en dos categorías importantes: el middleware y los servicios subyacentes. La mayoría de los productos que se clasifican, en general, como SOA pertenecen al primer grupo (gestión, gobernabilidad, software de seguridad). Con todo, las mayores ganancias en flexibilidad de virtualización de SOA provienen de la segunda categoría (que incluye los servidores Java y .Net, así como los conectores a las plataformas de legado). Esto se debe a que los servicios usan más recursos de cómputo que middleware y a que es más probable que fluctúe la demanda de servicios particulares.
UNA BUENA OPCIÓN. Para que SOA sea realmente ágil, la virtualización debe permitir al área IT extender una aplicación a través de múltiples servidores y no sólo dividir un único servidor en varias maquinas virtuales. Pero esto es más difícil que la virtualización estándar de servidores, porque actualmente la mayoría de las aplicaciones son bastante lineares y no distribuyen fácilmente su procesamiento en múltiples operaciones paralelas.
Los desarrolladores tratan de hacer aplicaciones paralelas para CPU multicore, pero los servidores en clúster plantean ulteriores retos de ancho de banda y latencia. Por esta razón, la mayoría de los procedimientos en materia de Web services en clúster no consisten en desmenuzar los servicios en pedazos paralelos. Por el contrario, el pool para aplicaciones de proveedores como Appistry y DataSynapse instala una aplicación en servidores múltiples y mantiene el equilibrio de carga entre ellos. Esto funciona bien en la mayoría del tráfico SOA, dado que los servicios Web por lo general suponen responder a múltiples solicitudes de los usuarios, lo que fácilmente se puede extender entre varios servidores.
Además de WebSphere XD, de IBM, hay start-ups que han lanzado productos de este tipo. Una de ellas es DataSynapse, cuyo producto FabricServer funciona con la mayoría de las aplicaciones de Microsoft y Java, con soporte para sus aplicaciones internas vía máquinas virtuales Java y .Net de Microsoft, y funciona con VMware, que simula la virtualizacion basada en el hipervisor entre múltiples servidores.
Por ahora, el pool parece una buena opción para quienes requieren reducir sus aplicaciones. Pero tiene sus inconvenientes: no se vincula con la gestión y registros de SOA, sino que para distribuir la capacidad se basa en sus propios algoritmos de balanceo de carga, y las licencias de software podrían resultar costosas, pues cada plataforma de sistema operativo o de aplicaciones requeriría licencia para cada servidor en el que puedan correr.
El consejo para los que traten de implementar SOA y virtualización juntas intentando que sean lo más compatibles posible, es seguir la filosofía del diseño de SOA: el acoplamiento suelto. Como no hay estándares para correr servicios Web en máquinas virtuales, y los sistemas propietarios son inmaduros todavía, la pareja que conforman SOA y virtualización puede esperar un largo noviazgo. Con todo, no hay que perder de vista los desarrollos que se vayan dando para estar listos cuando el matrimonio se haya consumado.
EL IMPACTO DE SOA + VIRTUALIZACIÓN
Beneficios Riesgos
Organización ITAmbas iniciativas consisten en volver la organización IT más flexible: SOA, para el software, y virtualización, para el hardware. El reto es lograr que funcionen juntas |
SOA es inmadura y la mayor parte de la virtualización todavía apunta a la consolidación de los servidores. No existe un modo estándar de extender las aplicaciones entre los servidores o de compartir los datos entre las plataformas de la governance de SOA y la gestión de la virtualización |
Organización del negocioSOA alinea los servicios IT con los procesos de negocio, mientras que la virtualización alinea la plataforma de hardware subyacente con los servicios IT requeridos. Conjuntarlos logra que las IT respondan mucho mejor a las necesidades de la empresa |
La virtualización de SOA debe tener pocas desventajas para la organización. La única amenaza real es que la inmadurez técnica del área caiga en más tiempos muertos, gastos inútiles o menor productividad |
Competencia del negocioLos servicios de la virtualización deben contribuir a que los negocios respondan mejor a los clientes y, por tanto, se vuelvan más competitivos. También colaboran al cumplimiento de normas y a reducir los gastos en hardware |
El área está en evolución, lo que significa que la tecnología todavía no está probada. Faltan estándares importantes, hay que evaluar bien las alianzas entre proveedores para que puedan perdurar largo tiempo y garantizar así que los negocios aumentarán su productividad, en vez de perderla |
EL BOTTOM LINE
La virtualización de SOA es una tendencia a largo plazo. Las organizaciones interesadas en este matrimonio deben comenzar a planear desde ahora, porque para que la infraestructura del servidor sea verdaderamente ágil necesita mucho más que sólo un hipervisor. Hay que apuntar a integrar el gestor de la máquina virtual con el repositorio del servicio y observar si hay madurez en input/output.
No hay artículos relacionados


¿Desea imprimir?