| Nome: | Descrição: | Tamanho: | Formato: | |
|---|---|---|---|---|
| 8.29 MB | Adobe PDF |
Autores
Orientador(es)
Resumo(s)
Observa-se, hoje em dia, um crescimento muito elevado da utilização de dispositivos no
domínio da Internet of Things (IoT) e de dispositivos móveis, bem como do número de
aplicações com consumo elevado de largura de banda (ex.: visualização de vídeos, a pedido).
Tal implica que, num futuro próximo, não será viável suportar a quantidade de
dados transferidos entre os dispositivos clientes ("end devices") e os centros de dados cloud,
onde tipicamente são alojadas aplicações de acesso ubíquo. O problema do consequente
aumento da latência percebido nas aplicações clientes, é ainda agravado no caso de aplicações
"sensíveis à latência" (latency sensitive), como sejam aplicações bastante interativas ou
de tempo real/quase-real (ex.: carros autonómicos, jogos online, etc.). A localização deste
tipo de aplicações na cloud, onde é grande a distância entre os clientes e a localização dos
centros de dados, resulta em níveis inaceitáveis de Quality of Service (QoS) percebida
pelos clientes, ou mesmo a impossibilidade de cumprir os requisitos funcionais das aplicações.
A computação na edge (Edge computing) surge como resposta aos problemas de
latência referidos, ao usar recursos computacionais dos dispositivos na periferia da rede,
que se situam mais próximo das aplicações cliente. É ainda possível realizar computações
que filtrem os dados gerados na periferia, contribuindo para diminuir o volume de dados
em trânsito, e que teriam de ser processados na cloud. Comparativamente com os recursos
presentes nos centros de dados cloud, os recursos dos nós na edge são, no entanto, de capacidade
computacional bastante limitada. Isto implica que utilizar aplicações monolíticas
(tipicamente de grandes dimensões) não é uma opção eficaz na computação na edge, quer
pelo custo da sua migração/replicação, quer pela impossibilidade de alojar as aplicações
nesses nós. O uso da arquitetura de micro-serviços permite contribuir para a resolução
deste problema. As aplicações são compostas por múltiplos micro-serviços, cada um com
pequena dimensão, oferecendo uma funcionalidade única, com interfaces bem definidas
e que comunicam entre si através de mensagens, tornando-os independentes entre si.
Desta forma, é possível realizar uma gestão mais eficaz dos recursos disponíveis nos nós
periféricos.
O trabalho que se procura resolver relaciona-se com os problemas inerentes a um
gestor centralizado quando temos um domínio muito dinâmico, o que inclui quer a infraestrutura,
quer as aplicações variadas que são lançadas nesses nós, quer a grande volatilidade
e diversidade nos acessos por parte dos clientes. Foi desenvolvida uma solução de um gestor distribuído, com arquitetura hierárquica, de um conjunto de nós e serviços
no ambiente cloud/edge, incluindo a necessidade de efetuar melhoramentos adicionais à
solução existente. A hierarquia de gestores distribuídos permitiu distribuir a responsabilidade
e trabalho, ao reduzir a região geográfica abrangida por cada gestor, reduzindo
assim a distância de comunicação entre os nós que cada um controla.
There is nowadays a very high growth in the use of devices in the domain of IoT and mobile devices, as well as the number of applications with high bandwidth consumption (e.g. video on-demand). This implies that in the near future it will not be feasible to support the amount of data transferred between end devices and data centers, where ubiquitous access applications are typically hosted. The problem of the consequent increase in perceived latency in client applications is further aggravated in the case of latency-sensitive applications, such as very interactive or real-time applications (e.g. autonomic cars, online games, etc.). The location of this type of cloud applications, where the distance between customers and the location of data centers is large, results in unacceptable levels of QoS perceived by customers, or even the impossibility of meeting the functional requirements of such applications. Edge computing emerges as a response to the latency problems referred to by using computing resources of the devices at the edge of the network, which are closer to the client applications. It is also possible to perform computations that filter the data generated in the edge, contributing to decrease the volume of data in transit, that would have to be otherwise processed in the cloud. Compared with the resources available in the cloud data centers, the resources of the nodes in the edge are, however, of very limited computational capacity. This implies that using monolithic (typically large) applications is not an efficient choice in edge computing, either because of the cost of its migration/replication or because it is impossible to host the applications on those nodes. The use of the micro-services architecture seeks to solve this problem. The applications are composed of multiple micro-services, each with a small dimension, offering a unique functionality, with well-defined interfaces that communicate with each other through messages, making them independent of each other. In this way, it is possible to perform a more efficient management of the available resources in the edge devices. This work looks to solve problems related to a centralized manager on a very dynamic domain, including the infrastructure, multiple heterogeneous aplications launched on the system nodes, and the diversity and volatibility of the users. The prototype consists of a hierarchy of distributed managers of nodes and services in the cloud/edge environment, including the necessity of doing aditional improvements of the existing work. The hierarchy of distributed managers allows the distribution of work and resposabilities between managers and the reduction of the geographical area managed by one particular manager, which implies a lesser distance of communication between nodes.
There is nowadays a very high growth in the use of devices in the domain of IoT and mobile devices, as well as the number of applications with high bandwidth consumption (e.g. video on-demand). This implies that in the near future it will not be feasible to support the amount of data transferred between end devices and data centers, where ubiquitous access applications are typically hosted. The problem of the consequent increase in perceived latency in client applications is further aggravated in the case of latency-sensitive applications, such as very interactive or real-time applications (e.g. autonomic cars, online games, etc.). The location of this type of cloud applications, where the distance between customers and the location of data centers is large, results in unacceptable levels of QoS perceived by customers, or even the impossibility of meeting the functional requirements of such applications. Edge computing emerges as a response to the latency problems referred to by using computing resources of the devices at the edge of the network, which are closer to the client applications. It is also possible to perform computations that filter the data generated in the edge, contributing to decrease the volume of data in transit, that would have to be otherwise processed in the cloud. Compared with the resources available in the cloud data centers, the resources of the nodes in the edge are, however, of very limited computational capacity. This implies that using monolithic (typically large) applications is not an efficient choice in edge computing, either because of the cost of its migration/replication or because it is impossible to host the applications on those nodes. The use of the micro-services architecture seeks to solve this problem. The applications are composed of multiple micro-services, each with a small dimension, offering a unique functionality, with well-defined interfaces that communicate with each other through messages, making them independent of each other. In this way, it is possible to perform a more efficient management of the available resources in the edge devices. This work looks to solve problems related to a centralized manager on a very dynamic domain, including the infrastructure, multiple heterogeneous aplications launched on the system nodes, and the diversity and volatibility of the users. The prototype consists of a hierarchy of distributed managers of nodes and services in the cloud/edge environment, including the necessity of doing aditional improvements of the existing work. The hierarchy of distributed managers allows the distribution of work and resposabilities between managers and the reduction of the geographical area managed by one particular manager, which implies a lesser distance of communication between nodes.
Descrição
Palavras-chave
Cloud Edge Micro-serviço Gestão de recursos Virtualização Sistema distribuído
