Monday, 18 April 2016

Docker 3-Tier Java App (Nginx, Tomcat, MySQL) Automation On Any Cloud


DCHQ simplifica la contenerización de las aplicaciones empresariales y hace posible replicar entornos de aplicaciones muy complejas en múltiples hosts a través de un solo clic botón de implementación. DCHQ no sólo automatizar las implementaciones de aplicaciones, sino que también se integra con 12 diferentes proveedores de nube para automatizar el aprovisionamiento y la auto-escala de las agrupaciones de la armadura habilitado consistentes en máquinas virtuales distribuidos.
En este blog, vamos a ir sobre la automatización de la implementación y gestión del ciclo de vida de una aplicación Java de 3 niveles basados ​​en acoplable desplegado en servidores Tomcat con Nginx para el equilibrio de carga y MySQL para la base de datos.
Esto puede hacerse navegando a la Biblioteca de autoservicio y luego hacer clic en Personalizar para solicitar una aplicación multi-nivel. En este ejemplo, tenemos una aplicación multi-niveles que consiste en Nginx (para el equilibrio de carga), Tomcat (el servidor de aplicaciones en clúster) y MySQL (como la base de datos). Usted notará Nginx está invocando un script BASH plug-in para añadir el contenedor IP de los servidores de aplicaciones en el archivo default.conf dinámicamente (o en el momento de la solicitud). Tomcat también está invocando un script BASH plug-in para desplegar un archivo WAR de Java desde una URL especificada. Usted notará que el CLUSTER_SIZE parámetro le permite especificar el número de contenedores para poner en marcha (con las mismas dependencias de la aplicación). El anfitrión parámetro le permite especificar el host que desea utilizar para las implementaciones de contenedores. Éstos son los valores admitidos para el parámetro host:
  • host1, host2, host3 , etc. - selecciona un host al azar dentro de un centro de datos (o clúster) para implementaciones de contenedores
  • <Dirección IP 1, dirección IP 2, etc.> - permite a un usuario especificar el actual direcciones IP a usar para implementaciones de contenedores
  • <Nombre de host 1, 2 Nombre de host, etc.> - permite a un usuario especificar los nombres de host reales de usar para los despliegues de contenedores
  • Los comodines (por ejemplo, "db- *", o "app-SRV-*") - para especificar los caracteres comodín para utilizar dentro de un nombre de host
Además, un usuario puede crear imagen-cruz asociaciones de variables de entorno, haciendo referencia a la variable de entorno de otra imagen. Aquí está una lista de variables de entorno soportados:
  • {{alphanumeric | 8}} - crea una cadena alfanumérica de 8 caracteres al azar. Esto es muy útil para crear contraseñas aleatorias.
  • {{<Image Name> | ip}}} - le permite introducir la dirección IP del host de una plantilla como un valor para una variable de entorno. Esto es muy útil para permitir que el nivel de middleware para establecer una conexión con la base de datos.
  • {{<Image Name> | container_ip}} - le permite introducir el nombre del contenedor (o IP interna) de una plantilla como un valor para una variable de entorno. Esto es muy útil para permitir que el nivel de middleware para establecer una conexión segura con la base de datos (sin exponer el puerto de base de datos).
  • {{<Image Name> | port _<Port Number>}} - le permite introducir el número de puerto de una plantilla como un valor para una variable de entorno. Esto es muy útil para permitir que el nivel de middleware para establecer una conexión con la base de datos. En este caso, el número de puerto especificado tiene que ser el número de puerto interno - es decir, no el puerto externo que se asigna al recipiente. Por ejemplo, {{PostgreSQL | port_5432}} será traducido al puerto externo real que permitirá que la capa de middleware para establecer una conexión con la base de datos.
  • {{<Image Name> | <Environment Variable Name>}} - le permite introducir el valor de la variable de entorno de una imagen en la variable de entorno de otra imagen. Los casos de uso son infinitas - como la mayoría de las aplicaciones de varios niveles tendrán dependencias imagen cruz.
Un usuario puede seleccionar una Etiqueta para el Medio Ambiente (como DEV o QE) y un Centro de Datos de la armadura activada antes de hacer clic en Ejecutar.

Imagen
Una vez que la aplicación está en funcionamiento, un usuario puede monitorizar la CPU, la memoria, y la Utilización de E / S de los contenedores de funcionamiento y realizar dia-2 operaciones como copia de seguridad, Recipiente actualizaciones usando BASH plug-ins, Escala de entrada / salida y entrega continua .
En la demo grabada, escalamos a cabo la agrupación de servidores de aplicaciones de 2 a 3. Un usuario puede programar la escala a cabo durante el horario laboral y la escala en los fines de semana. A continuación, utiliza el BASH plug-in para actualizar el archivo de default.conf Nginx para que esté al tanto del nuevo servidor de aplicaciones añadido. Los plug-ins de escritura del golpe también se pueden programar para dar cabida a los casos de uso como la limpieza de registros o actualizar las configuraciones en las frecuencias definidas. Una línea de tiempo de la aplicación está disponible para realizar un seguimiento de todos los cambios realizados a la solicitud de auditoría y de diagnóstico.
Las alertas y notificaciones están disponibles para cuando los contenedores o sistemas principales son, o cuando la CPU y memoria La utilización de cualquiera de los anfitriones o contenedores supera un umbral definido.
Inscríbete GRATIS en DCHQ.io Alojado PaaS ( http://dchq.io ) para conseguir esta plantilla junto con Ruby, Python, PHP, MEAN.JS, agrupado MongoDB, y muchos otros plantilla.




No comments:

Post a Comment