Kubow: um serviço de autoadaptação baseada em arquitetura para aplicações implantadas com Docker e Kubernetes [Digital]
Dissertação
Português
681.3.06
Fortaleza, 2019.
Apo¿s mais de uma de¿cada de consolidac¿a¿o como uma plataforma econo¿mica e escalável para implantar e operar aplicac¿o¿es de software, a computac¿a¿o em nuvem esta¿ passando por uma nova fase de transformac¿a¿o, na qual o foco sai da necessidade de gerenciar ma¿quinas virtuais para gerenciar...
Ver mais
Apo¿s mais de uma de¿cada de consolidac¿a¿o como uma plataforma econo¿mica e escalável para implantar e operar aplicac¿o¿es de software, a computac¿a¿o em nuvem esta¿ passando por uma nova fase de transformac¿a¿o, na qual o foco sai da necessidade de gerenciar ma¿quinas virtuais para gerenciar conte¿ineres e servic¿os. Um aspecto fundamental do gerenciamento de aplicac¿o¿es baseadas em conte¿ineres e¿ a autoadaptac¿a¿o, ou seja, a capacidade das aplicac¿o¿es adaptarem dinamicamente o seu comportamento, em resposta a mudanc¿as em seu ambiente de execuc¿a¿o. Embora muitas soluc¿o¿es voltadas para a autoadaptac¿a¿o de aplicac¿o¿es tenham sido propostas na literatura, ate¿ o momento poucas te¿cnicas de autoadaptac¿a¿o, como gerenciamento automa¿tico e autoescalabilidade de servidores, foram efetivamente utilizadas em aplicac¿o¿es de escala industrial. Uma das razo¿es e¿ o desalinhamento arquitetural que costuma haver entre as soluc¿o¿es de autoadaptac¿a¿o propostas pela comunidade cienti¿fica, e as ferramentas de gerenciamento de conte¿ineres mais utilizadas no mercado, como Docker e Kubernetes.
Este trabalho tem como principal objetivo oferecer uma soluc¿a¿o de autoadaptac¿a¿o baseada em modelos de arquitetura para aplicac¿o¿es implantadas com tecnologias de conte¿ineres abertas. A soluc¿a¿o desenvolvida, denominada Kubow, e¿ uma customizac¿a¿o para Docker e Kubernetes do arcabouc¿o de autoadaptac¿a¿o baseada em arquitetura Rainbow, originalmente desenvolvido na Carnegie Mellon University. Kubow foi preliminarmente avaliado tanto qualitativa quanto quantitativamente. Os resultados qualitativos mostram que a soluc¿a¿o pode ser fa¿cil de utilizar e customizar para diferentes aplicac¿o¿es, e fa¿cil de estender para suportar diferentes tipos de adaptac¿a¿o e diferentes modelos de arquitetura. Os resultados quantitativos, por sua vez, obtidos na nuvem da Amazon, mostram a efetividade da soluc¿a¿o para adaptar dinamicamente o comportamento de uma aplicac¿a¿o implantada no Kubenertes, em resposta a variac¿o¿es na sua demanda. O co¿digo fonte do Kubow, incluindo imagens Docker, e arquivos de configurac¿a¿o e teste, esta¿ disponi¿vel publicamente no GitHub, no enderec¿o <https://github.com/cmendesce/kubow>.
Palavras-chaves: Autoadaptac¿a¿o Baseda em Arquitetura. Orquestrac¿a¿o de Conte¿ineres. Rainbow. Docker. Kubernetes.
Ver menos
Este trabalho tem como principal objetivo oferecer uma soluc¿a¿o de autoadaptac¿a¿o baseada em modelos de arquitetura para aplicac¿o¿es implantadas com tecnologias de conte¿ineres abertas. A soluc¿a¿o desenvolvida, denominada Kubow, e¿ uma customizac¿a¿o para Docker e Kubernetes do arcabouc¿o de autoadaptac¿a¿o baseada em arquitetura Rainbow, originalmente desenvolvido na Carnegie Mellon University. Kubow foi preliminarmente avaliado tanto qualitativa quanto quantitativamente. Os resultados qualitativos mostram que a soluc¿a¿o pode ser fa¿cil de utilizar e customizar para diferentes aplicac¿o¿es, e fa¿cil de estender para suportar diferentes tipos de adaptac¿a¿o e diferentes modelos de arquitetura. Os resultados quantitativos, por sua vez, obtidos na nuvem da Amazon, mostram a efetividade da soluc¿a¿o para adaptar dinamicamente o comportamento de uma aplicac¿a¿o implantada no Kubenertes, em resposta a variac¿o¿es na sua demanda. O co¿digo fonte do Kubow, incluindo imagens Docker, e arquivos de configurac¿a¿o e teste, esta¿ disponi¿vel publicamente no GitHub, no enderec¿o <https://github.com/cmendesce/kubow>.
Palavras-chaves: Autoadaptac¿a¿o Baseda em Arquitetura. Orquestrac¿a¿o de Conte¿ineres. Rainbow. Docker. Kubernetes.
Ver menos
After over a decade of consolidation as a cost-effective and scalable platform for deploying and operating software applications, cloud computing is undergoing a new transformation, in which the focus shifts from the need to manage virtual machines to the need to manage containers and services. A...
Ver mais
After over a decade of consolidation as a cost-effective and scalable platform for deploying and operating software applications, cloud computing is undergoing a new transformation, in which the focus shifts from the need to manage virtual machines to the need to manage containers and services. A crucial aspect of managing containerized applications is self-adaptation, that is, an application¿s capacity to dynamically adapt its behavior, in response to changes in its execution environment. Although many self-adaptation solutions have been proposed in the literature, thus far only a few self-adaptation techniques, such as automatic server management and autoscaling, have been actually used in industrial applications. One of the reasons is that there usually is an architectural mismatch between the self-adaptation solutions proposed by the research community, and the container-based management tools mostly used by practitioners, like Docker and Kubernetes.
The main goal of this work is to provide an architecture-based self-adaptation solution for containerized Kubernetes applications. The proposed solution, named Kubow, is a Docker and Kubernetes customization of the Rainbow architecture-based self-adaptation framework, originally developed at Carnegie Mellon University. Kubow has been preliminarily evaluated both qualitatively and quantitatively. The qualitative results show that the proposed solution can be easy to use and customize for different applications, and ease to extend to support different types of adaptation and different architectural models. The quantitative results, in turn, obtained in the Amazon cloud, show that the proposed solution is effective in dynamically adapting the behavior of a Kubernetes application, in response to change in its demand. The Kubow source code, including its Docker images and configuration and test scripts, is publicly available in GitHub, at <https://github.com/cmendesce/kubow>.
Keywords: Architecture-based Self-adaptation. Container Orchestration. Rainbow. Docker. Kubernetes. Ver menos
The main goal of this work is to provide an architecture-based self-adaptation solution for containerized Kubernetes applications. The proposed solution, named Kubow, is a Docker and Kubernetes customization of the Rainbow architecture-based self-adaptation framework, originally developed at Carnegie Mellon University. Kubow has been preliminarily evaluated both qualitatively and quantitatively. The qualitative results show that the proposed solution can be easy to use and customize for different applications, and ease to extend to support different types of adaptation and different architectural models. The quantitative results, in turn, obtained in the Amazon cloud, show that the proposed solution is effective in dynamically adapting the behavior of a Kubernetes application, in response to change in its demand. The Kubow source code, including its Docker images and configuration and test scripts, is publicly available in GitHub, at <https://github.com/cmendesce/kubow>.
Keywords: Architecture-based Self-adaptation. Container Orchestration. Rainbow. Docker. Kubernetes. Ver menos
Aderaldo, Carlos Mendes
Autor
Mendonça, Nabor das Chagas
Orientador
Mendonça, Nabor das Chagas
Banca examinadora
Sampaio, Americo Tadeu Falcone
Banca examinadora
Rosa, Nelson Souto
Banca examinadora
Universidade de Fortaleza. Programa de Pós-Graduação em Informática Aplicada
Dissertação (mestrado)