Resumen:
|
[ES] Los microservicios son un enfoque arquitectónico y organizativo para el desarrollo de
software donde dicho software está compuesto por pequeños servicios independientes
que se comunican a través de APIs bien ...[+]
[ES] Los microservicios son un enfoque arquitectónico y organizativo para el desarrollo de
software donde dicho software está compuesto por pequeños servicios independientes
que se comunican a través de APIs bien definidas. Estas arquitecturas suelen ser
desplegadas y gestionadas en plataformas que 'orquestan' estas soluciones a través de la
infraestructura que proporcionan. En este sentido, Kubernetes se postula como una de
las apuestas más sólidas en estos momentos como orquestador de microservicios .
En este trabajo se pretende dar un paso adelante y extender las capacidades de
computación autónoma, no sólo a la infraestructura computacional – Kubernetes – , sino
también a nivel de la propia arquitectura de microservicios. Para ello, se utilizarán
técnicas provenientes de los bucles de control – en concreto, los bucles de control
MAPE-K propuestos por IBM – que nos permitirá realizar esta ingeniería y diseño de
este tipo de arquitecturas, en el que el diseño arquitectónico de las soluciones basadas
en microservicios podrá adaptarse – en tiempo de ejecución – a las circunstancias, de
manera autónoma, por la propia solución.
Se realizará un trabajo práctico en el que aplicando las técnicas de computación
autónoma desarrolladas en el grupo Tatami con el enfoque FADA (Framework de autoADAptación basado en los bucles de control MAPE-K), se diseñará una solución autoadaptativa que pueda aplicarse sobre soluciones de microservicios orquestadas con
Kubernetes. Se propondrá una estrategia que permita, no sólo configurar en un
momento determinado una solución de microservicios auto-adaptativos sobre
Kubernetes, sino que también definirá operaciones de auto-gestión de la propia
plataforma cuando la solución de microservicios se reconfigure de manera autónoma.
Para ejemplificar y validar el trabajo, se desarrollará un ejemplo prototípico real, en el
que se demostrará la aplicación de la propuesta aplicando FADA sobre una solución de
microservicios operando en clústers computacionales orquestados con Kubernetes y
monitorizados con componentes software propios.
[-]
[EN] Microservices are an architectural and organizational approach to software
development where such software is made up of small independent services that
communicate through well-defined APIs. These architectures are ...[+]
[EN] Microservices are an architectural and organizational approach to software
development where such software is made up of small independent services that
communicate through well-defined APIs. These architectures are usually deployed and
managed on platforms that 'orchestrate' these solutions through the infrastructure they
provide. In this sense, Kubernetes is postulated as one of the strongest bets at the
moment as a microservices orchestrator.
This work aims to take a step forward and extend autonomous computing
capabilities, not only to the computational infrastructure - Kubernetes - but also at the
level of the microservices architecture itself. To do this, techniques from control loops
will be used - specifically, the MAPE-K control loops proposed by IBM - which will
allow us to carry out this engineering and design of this type of architecture, in which
the architectural design of the solutions based on microservices can be adapted - at
runtime - to circumstances, autonomously, by the solution itself.
A practical work will be carried out in which, applying the autonomous computing
techniques developed in the Tatami group with the FADA approach (Framework of selfADAptation based on MAPE-K control loops), a self-adaptive solution that can be
applied will be designed on microservices solutions orchestrated with Kubernetes. A
strategy will be proposed that allows, not only to configure at a certain moment a selfadaptive microservices solution on Kubernetes, but will also define self-management
operations of the platform itself when the microservices solution is reconfigured
autonomously.
To exemplify and validate the work, a real prototypical example will be developed,
in which the application of the proposal will be demonstrated by applying FADA on a
microservices solution operating in computational clusters orchestrated with Kubernetes
and monitored with its own software components.
[-]
[CA] Els microserveis són un enfocament arquitectònic i organitzatiu per al
desenvolupament de programari on aquest programari està compost per petits serveis
independents que es comuniquen a través d'APIs ben definides. ...[+]
[CA] Els microserveis són un enfocament arquitectònic i organitzatiu per al
desenvolupament de programari on aquest programari està compost per petits serveis
independents que es comuniquen a través d'APIs ben definides. Aquestes arquitectures
solen ser desplegades i gestionades en plataformes que 'orquestren' aquestes solucions a
través de la infraestructura que proporcionen. En aquest sentit, Kubernetes es postula
com una de les apostes més sòlides en aquests moments com orquestrador de
microserveis.
En aquest treball es pretén fer un pas endavant i estendre les capacitats de computació
autònoma, no només a la infraestructura computacional - Kubernetes -, sinó també a
nivell de la pròpia arquitectura de microserveis. Per a això, s'utilitzaran tècniques
provinents dels bucles de control - en concret, els bucles de control MAPE-K proposats
per IBM - que ens permetrà realitzar aquesta enginyeria i disseny d'aquest tipus
d'arquitectures, en el qual el disseny arquitectònic de les solucions basades en
microserveis podrà adaptar - en temps d'execució - a les circumstàncies, de manera
autònoma, per la mateixa solució.
Es realitzarà un treball pràctic en què aplicant les tècniques de computació autònoma
desenvolupades en el grup Tatami amb l'enfocament FADA (Framework d'autoadaptació basat en els bucles de control MAPE-K), es dissenyarà una solució acteadaptativa que pugui aplicar-se sobre solucions de microserveis orquestrades amb
Kubernetes. Es proposarà una estratègia que permeti, no només configurar en un
moment determinat una solució de microserveis acte-adaptatius sobre Kubernetes, sinó
que també definirà operacions d'auto-gestió de la pròpia plataforma quan la solució de
microserveis es reconfigure de manera autònoma.
Per exemplificar i validar el treball, es desenvoluparà un exemple prototípic real, en el
qual es demostrarà l'aplicació de la proposta aplicant FADA sobre una solució de
microserveis operant en clústers computacionals orquestrats amb Kubernetes i
monitoritzats amb components programari propis.
[-]
|