Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Current »

La arquitectura para microservicios propuesta es la utilizada por el framework Spring, en el cual se utilizan un conjunto de herramientas con funciones especificas, que se detallan a continuacion:


DIAGRAMA GENERAL

CONFIG-SERVER

Es el servidor de configuración centralizado, aqui se centralizan las configuraciones de los micro-servicios.

Permite tener una jerarquía de configuración a través de perfiles que permite definir las configuraciones para distintos entornos (TEST, PREPROD, PROD), ademas cuenta con un histórico de cambios gracias a que las configuraciones se almacenan en el GIT (en este caso de Cabal).

También permite la recarga de valores de propiedades en caliente.


EUREKA

Su papel es registrar y localizar los micro-servicios existentes, informar de su localización, su estado y datos relevantes de cada uno de ellos.Cada instancia de Micro-servicio (eureka-client) notifica su estado al Eureka Server

API-GATEWAY

Proporciona una puerta de entrada única a todo nuestro ecosistema de micro-servicios para peticiones desde dispositivos móviles, sitios web u otros sistemas externos.

Permite un enrutamiento dinámico, motorización e implementar seguridad de acceso a todo el ecosistema de micro-servicios.


ZIPKIN

Es un solucion de rastreo distribuido. Ayuda a recopilar los datos de interconexion y de tiempo necesarios para solucionar problemas de latencia en arquitecturas complejas de servicio. Las características incluyen tanto la recopilación como la búsqueda de estos datos.

KEYCLOAK

Es un producto de software de código abierto que permite el inicio de sesión único con la gestión de identidades y accesos dirigido a aplicaciones y servicios web.

REGISTRY

Es una aplicación que almacena y le permite distribuir imágenes de Docker.

PORTAINER

Provee un ambiente grafico para la configuración, la gestión y la seguridad centralizadas de los entornos con Dockers, lo que le permite ofrecer "containers-as-a-service" a sus usuarios de forma rápida, sencilla y segura.

RESUMEN

  • Los microservicios se desarrollan utilizando el framework Spring y se implementan dentro de contenedores, donde cada contenedor esta orientada a cubrir una funcionalidad.

  • Las configuraciones que se aplican a nivel de la aplicación estan almacenadas en el GIT, y son gestionadas gracias al Config-Server.

  • En tiempo de ejecucion los microservidos se registran con el Eureka server.

  • El API-Gateway es el unico punto de ingreso desde el exterior hacia los microservicios.

  • El Zipkin nos permite monitorear las conexiones y los tiempos de respuesta de cada microservicio.

  • Con Keycloak gestionamos la seguridad para el acceso y uso de los microservicios.

  • Y el Portainer nos permite gestionar de una forma grafica los contenedores dockers.


HARDWARE REQUERIMIENTOS

  • Sistema Operativo Centos 7.x (o superior)

  • Docker 2.10.7 o superior

  • Servidor con 2 nucleos (recomendado 4)

  • 3.5GB RAM para SO e infraestructura del Middleware, mas 500MB por cada contenedor de Microservicios.

  • 200GB SSD de almacenamiento para SO y contenedores.


  • No labels