Busque para obtener información sobre los productos y soluciones de InterSystems, las oportunidades de carrera y más. Los resultados incluyen contenido de nuestra comunidad de desarrolladores, documentación de productos y sitios web educativos, además de InterSystems.com.

La amplia gama de opciones de implantación en la nube que son posibles gracias a InterSystems IRIS Data Platform

InterSystems IRIS

La amplia gama de opciones de implantación en la nube que son posibles gracias a InterSystems IRIS Data Platform

https://www.intersystems.com/isc-resources/wp-content/uploads/sites/24/La-amplia-gama-de-opciones-de-implantación-en-la-nube-que-son-posibles-gracias-a-InterSystems-IRIS-Data-Platform-min.pdfInterSystems IRIS: Una plataforma unificada de datos para la nube

InterSystems IRIS es una plataforma de datos unificada creada especialmente para la nube que permite a las organizaciones desarrollar, provisionar y mantener rápidamente soluciones ricas en datos en tiempo. A diferencia de otros métodos, que requieren implementar e integrar múltiples tecnologías, InterSystems IRIS proporciona muchas de las funcionalidades esenciales requeridas por los desarrolladores en un mismo producto, incluyendo:

  • Funcionalidades de gestión para bases de datos con carga de trabajo múltiple (simultáneamente transaccional y analítica);
  • Funcionalidades de gestión para bases de datos multimodelo (relacional, multidimensional, de objeto y documentos);
  • Una plataforma de interoperabilidad para integrar fuentes de datos y aplicaciones dispersas; y
  • Funcionalidades de análisis de datos en formatos estructurados, no estructurados y abiertos compatibles con el procesamiento en batch y en tiempo real.

InterSystems IRIS es compatible con el provisionamiento de aplicaciones en variados entornos. Estas funcionalidades permiten a las organizaciones implantar aplicaciones de forma flexible y rápida, escalar y simplificar según sea necesario e incorporar metodologías ágiles como Integración y Entrega Continuas (IC/EC) y DevOps, entre otras.

InterSystems Cloud Manager

La funcionalidad llamada InterSystems Cloud Manager (ICM), la cual viene ya incorporada en InterSystems IRIS permite a los usuarios aprovisionar e implantar servicios en diferentes clústeres virtuales y físicos, de forma rápida e intuitiva, simplificando las tareas de administración.

ICM posee todos los beneficios de la Infraestructura como Código (IaC - Infrastructure as Code), la infraestructura inmutable y la implantación en contenedores de aplicaciones construidas en InterSystems IRIS. ICM permite a las organizaciones sacar el mayor provecho de la eficiencia, agilidad y repetibilidad que ofrecen los entornos en la nube y el software en contenedores, sin requerir mayor desarrollo o re-equipamiento.

ICM posee las siguientes características que conllevan los siguientes beneficios:

  • Aprovisionamiento e implantación automatizada, así como la gestión mediante línea de comandos a gran escala y configuraciones en la nube de InterSystems IRIS;
  • Integración de aplicaciones basadas en InterSystems IRIS a una cadena de herramientas de DevOps corporativa;
  • Aumento en la agilidad gracias al reaprovisionamiento y reimplantación cuando se requiera; y
  • Estabilidad, solidez y minimización de riesgos gracias a un versionado fácil para la aplicación y el entorno en que se ejecuta.

ICM puede aprovisionar nodos de computación virtuales y recursos asociados a las siguientes plataformas:

  • Amazon Web Services (AWS)
  • Google Cloud Platform (GCP)
  • Microsoft Azure
  • VMware vSphere
  • Entornos virtuales preexistentes y bare-metal.

Etapas del Ciclo de Vida de ICM

El rol de ICM en el ciclo de vida de la aplicación se muestra en la siguiente imagen:

 

Definición

Cada implantación de ICM se define según el contenido de los archivos de configuración con formato JSON. Estos archivos contienen casi todas las configuraciones necesarias para provisionar y desplegar las configuraciones de InterSystems IRIS. Una vez que se especifican los tipos y cantidades deseadas de nodos de computación y otros detalles, como las credenciales de seguridad, licencias de InterSystems IRIS, etc., ICM está listo para comenzar la etapa de aprovisionamiento.

Aprovisionamiento

ICM soporta tres actividades principales de aprovisionamiento:
la creación (aprovisionamiento), configuración y destrucción (desaprovisionamiento) de nodos de computación y recursos asociados en un entorno en la nube.

ICM realiza tareas de aprovisionamiento, al integrar y utilizar Terraform, creada por HashiCorp. Terraform es una herramienta de código abierto para crear, cambiar y realizar el versionado de infraestructura de forma segura y eficiente, y es compatible con proveedores de nube existentes y con soluciones personalizadas.

Así es cómo ICM complementa Terraform:

  • ICM ejecuta múltiples tareas de Terraform de forma paralela para configurar todos los tipos de nodos simultáneamente, para lograr un aprovisionamiento más rápido;
  • ICM provee acceso programático a Terraform utilizando Java;
  • ICM define la infraestructura deseada en un formato JSON genérico.

ICM también realiza algunas tareas de configuración, post aprovisionamiento utilizando SSH de la misma forma, ejecutando comandos en paralelo en múltiples nodos para un funcionamiento más rápido.

Despliegue

ICM despliega imágenes prediseñadas de InterSystems IRIS
en contenedores Docker sobre los nodos de computación que aprovisiona. Estos contenedores son independientes de la plataforma y completamente portables, no necesitan instalarse y son fácilmente ajustables. ICM en sí se despliega en un contenedor Docker. Una aplicación en contenedor se ejecuta de forma nativa en el kernel del sistema anfitrión (host), mientras que el contenedor le entrega solo los elementos necesarios para ejecutarla y darle accesibilidad. Estos elementos incluyen las conexiones, servicios e interfaces requeridos: un entorno de tiempo de ejecución, el código, librerías, variables del entorno y archivos de configuración.

Las tareas de despliegue se llevan a cabo haciendo solicitudes a Docker.

Así es como ICM complementa a Docker:

  • ICM ejecuta comandos Docker en todas las máquinas en hilos paralelos, reduciendo así la cantidad total del tiempo para ejecutar tareas largas, como la descarga de imágenes;
  • ICM puede orquestar tareas como distribuir actualizaciones que tienen requerimientos específicos de la aplicación.

Gestión

ICM permite a los usuarios interactuar con, y gestionar, los nodos aprovisionados en la nube y los contenedores implantados en ellos de varias formas. Por ejemplo, pueden ejecutar comandos en los hosts de la nube o dentro de los contenedores, copiar documentos en los hosts o los contenedores, actualizar los contenedores e interactuar directamente con InterSystems IRIS.

Además de ejecutar comandos únicos en múltiples nodos simultáneamente, ICM permite gestionar de forma interactiva los nodos individuales en el despliegue, en varios niveles. Por ejemplo, los usuarios pueden:

  • Abrir un comando de Shell en un nodo de computación para interactuar con su sistema operativo;
  • Abrir un comando de Shell dentro de un contenedor para interactuar con su sistema operativo;
  • Abrir una sesión segura de InterSystems IRIS directamente a una instancia operativa del programa.

Factores de negocio que impulsan la estrategia de implantación en la nube

La adopción de la Infraestructura como Servicio (IaaS) continúa su aceleración, ya que las organizaciones implantan cada vez más aplicaciones y cargas de trabajo nuevas y existentes en la nube. Gartner predice que los ingresos para el mercado de servicios de nube pública a nivel mundial alcanzarán 186,4 mil millones de dólares en 2018, a medida que las organizaciones se hacen conscientes de los múltiples beneficios operacionales y estratégicos de las infraestructuras en la nube, incluyendo:

  • Aumento en la agilidad y reducción del riesgo. La separaciónde los componentes y la facilidad del versionado que otorga la Infraestructura como Servicio y, además, el funcionamiento por contenedores hace que la implantación sea replicable y confiable, a la vez que reduce el esfuerzo.
  • Reducción en el costo total de operaciones y costo de partida. La Infraestructura como Servicio puede utilizarse de forma rentable, por ejemplo, para aprovisionar recursos solo según se necesiten.
  • Escalamiento flexible. El escalamiento vertical y horizontal es más rápido y fácil en la nube y la capacidad puede ajustarse continuamente a medida que las cargas de trabajo cambian.
  • Soporte de implantaciones híbridas. Las implantaciones on- premise y en data centers pueden traspasarse a la infraestructura de nube pública y privada, según se necesite.
  • Soporte de metodologías de Integración y Entrega Continuas (IC/EC) y DevOps. Los contenedores proporcionan el movimiento ordenado de una aplicación desde el desarrollo hasta su proceso de prueba, y luego a producción; y separan la etapa de desarrollo del proceso de ejecución, soportando la entrega bajo demanda (on-demand) de la aplicación mientras fomenta la integración con cadenas de herramientas de DevOps.

Contenedores

Una imagen de contenedor es un paquete ejecutable independiente y liviano que incluye un software y todo lo necesario para ejecutarlo: código, tiempo de ejecución, herramientas del sistema, librerías de sistema y configuraciones. Un contenedor es una instancia operativa de una imagen de contenedor.

Las imágenes de contenedor crean paquetes de aplicaciones con soluciones independientes de la plataforma y completamente portables, con todas las dependencias conformes y aisladas, que puede ejecutarse cuando sea que un contenedor lo necesite.

Esto permite que un desarrollador mueva una aplicación en contenedor fácilmente entre ambientes (por ejemplo, desde desarrollo a prueba y luego a producción), reduciendo los conflictos entre departamentos con diferentes objetivos. Por ejemplo, los desarrolladores pueden enfocarse en su código y librerías más actuales, mientras los ingenieros de operaciones pueden concentrarse en la infraestructura general de
la solución, incluyendo redes, alta disponibilidad, persistencia de los datos, etc.

Usando el mismo autentificador, el sistema con contenedores provee la agilidad y repetibilidad necesarias para revolucionar la forma en que muchas organizaciones responden a las necesidades comerciales y tecnológicas. Los contenedores separan ordenadamente el proceso de aprovisionamiento de la aplicación, incluyendo la etapa de desarrollo del proceso de ejecución, y permite a una organización adoptar un método uniforme para la entrega de la aplicación, incluyendo una metodología de entrega (por ejemplo, DevOps) y arquitectura (por ejemplo, micro servicios) más ágiles.

Mediante la separación clara de códigos y datos, los contenedores permiten una implantación fluida de la aplicación y de su ambiente, en una infraestructura inmutable provista por el software. Esto hace el despliegue y la actualización de las aplicaciones más rápidos y fáciles, reduce los riesgos y costos asociados con actualizaciones de infraestructura, y facilita de uso y adaptación de DevOps. Las organizaciones pueden implantar soluciones basadas en InterSystems IRIS usando las imágenes de contenedor de InterSystems IRIS que ofrece InterSystems, y pueden agregar aplicaciones a las imágenes de contenedores de InterSystems IRIS para implantar dichos contenedores integrados.

Una aplicación en contenedor, se mantiene completamente dentro de éste mientras que, a la vez, no se ejecuta completamente en el sistema operativo sobre el cual se ejecuta el contenedor, ni el contenedor incluye un sistema operativo completo para ejecutar la aplicación. En vez de esto, una aplicación en contenedor se ejecuta de forma nativa en el kernel del sistema anfitrión (host), mientras el contenedor provee solo los elementos necesarios para su ejecución y da accesibilidad a las conexiones, servicios e interfaces necesarios: el entorno de tiempo de ejecución, el código, librerías, variables del ambiente y archivos de configuración.

Ya que incluye solo estos elementos y ejecuta la aplicación de forma nativa, un contenedor es muy eficiente, y ejecuta un proceso discreto y gestionable que no demanda más memoria que ningún otro programa ejecutable. Al mismo tiempo, es completamente portable, permaneciendo completamente aislado del entorno anfitrión, accediendo a los archivos y puertos locales solo si está configurado para llevar a cabo estos procesos. A la vez, provee una configuración, comportamiento y acceso de aplicaciones estándar y fácil de comprender. No importa en qué sistemas y plataformas de sistemas operativos físicos, virtuales o en la nube se ejecuten los contenedores InterSystems IRIS basados en Linux; los usuarios pueden interactuar con todos ellos de la misma forma que lo harían con instancias tradicionales de InterSystems IRIS que se ejecutan en sistemas Linux.

Implantación de Arquitecturas Fragmentadas de InterSystems IRIS con ICM

ICM es compatible con arquitecturas fragmentadas en shards (y no fragmentadas) de InterSystems IRIS. ICM aprovisiona y despliega los servidores de datos, de aplicaciones, de shards y web requeridos, y los distribuidores de carga necesarios, además de los nodos árbitro para configuraciones en espejo.

Los servidores de datos se pueden duplicar para otorgar alta disponibilidad a los datos. En un clúster fragmentado, el shard maestro (que almacena datos no fragmentados) y los servidores de datos de shards (que almacenan datos fragmentados) pueden duplicarse.

Conclusión

El uso de InterSystems IRIS con InterSystems Cloud Manager puede permitir a las organizaciones aprovechar más fácilmente la infraestructura en la nube y los métodos de implantación avanzados,
y adoptar nuevos procesos de ingeniería de software para simplificar el desarrollo, implantación y mantenimiento de soluciones ricas en datos y en tiempo real. La tecnología de InterSystems puede ayudar a las organizaciones a aumentar la agilidad y flexibilidad; además de reducir los riesgos y costos sin sacrificar el rendimiento, la escalabilidad, confiabilidad o seguridad.

InterSystems es el motor detrás de las aplicaciones más importantes del mundo. En la salud, finanzas, gobierno y otros sectores donde la vida y la subsistencia de las personas estén en juego, InterSystems es el poder detrás de lo que es importante. Fundada en 1978, InterSystems es una compañía de capitales privados, con sede en Cambridge, Massachusetts, EE.UU. y con oficinas en todo el mundo. Millones de personas en más de 80 países utilizan sus productos de software diariamente.

Para más información, visite InterSystems.com/IRIS

 


1 - Gartner predice un crecimiento de 21,4% de los ingresos para servicios de nube pública a nivel mundial en 2018, Abril 2018.

2 - Un shard de la base de datos es una partición horizontal de datos en una base de datos.

Otros recursos que puede disfrutar.