Propostas para Dissertação

Mestrados no Departamento de Informática



Consultar ficha completa de uma proposta de dissertação

proponente: INOVA-RIA- PROGRAMA GENIUS - ALTICE LABS
instituição/empresa: Inova-Ria/ Altice LAbs
tema/título: 2017_N91 Framework de suporte à gestão e monitoria de sistemas distribuídos
área científica: Sistemas Distribuídos, Desenvolvimento, Monitoria, Configuração
local: Altice Labs Aveiro
curso de mestrado: Mestrado Integrado em Engenharia Informática
descrição:
Contexto:
A Altice Labs tem um conjunto de produtos na área dos OSS (Operations support system tal como
definido pelo https://www.tmforum.org). Esses produtos são complementares entre si e têm pontos
de integração entre eles. Pretende-se fazer uma evolução da arquitectura funcional dos mesmos,
diluindo a fronteira entre produtos com um enfoque maior nos processos de negócio suportados.
Adicionalmente pretende-se também permitir em âmbito de projecto uma maior flexibilidade na
adaptação dos sistemas aos processos concretos dos clientes (operadores de telecomunicações),
diminuir a complexidade das partes constituintes do sistema e facilitar uma evolução tecnológica
das partes de forma independente uma das outras. Para responder às questões anteriores, a
arquitectura técnica dos sistemas começou a ser alterada no sentido de autonomizar funções que
estavam embebidas em produtos, desta maneira flexibilizando-se o desenho das fronteiras funcionais
e ficando-se simultaneamente com peças mais simples. Apesar de cada uma das peças ser mais
simples, o todo é um sistema mais complexo no sentido em que é constituído por um maior numero
de peças mais ou menos independentes entre si. Aspectos que já são pertinentes na arquitectura
actual tornam-se obrigatórios nesta evolução: automação de instalações; automação de
testes; sistema de monitoria e auditing que dê uma visão centralizada do funcionamento do
sistema; visão centralizada das configurações; sistema de suporte à descoberta e  registo de
serviços. A área de automação de instalações e testes são já endereçadas actualmente
utilizando as seguintes ferramentas: ansible, cucumber, selenium e jenkins. Na área da monitoria ,
auditing, configuração e descoberta de serviços, existe uma abordagem de nicho em cada um dos
produtos que não facilita uma visão centralizada e não fragmentada dos sistemas. Objetivos do Projeto: Desenvolver um framework que suporte uma visão centralizada da monitoria dos vários serviços,
midleware de suporte e infraestrutura (a partir do so); dos logs dos vários serviços e permitir
correlacionar logs de serviços distintos envolvidos na resposta de um dado pedido externo; de
auditing do sistema, que permita responder às questões: o quê, por quem, quando, onde (deve
nomeadamente conter informação que permita perceber os padrões de comunicação dentro do
sistema e deste com o exterior; das configurações dos vários serviços e, por fim, que suporte
um serviço de descoberta e registo de serviços. Apesar da visão centralizada que se pretende, é de esperar que o próprio framework seja ele
próprio um sistema distribuído constituído por vários serviços. Deve-se preferencialmente
tentar utilizar ferramentas open source já existentes e não desenvolver de raiz. Os seguintes aspectos são relevantes na concepção do framework: - Custo do seu desenvolvimento - Custo de integração com os sistemas já existentes - Custo da sua operação - Escalabilidade - Tolerância a falhas - Flexibilidade para posterior evolução - Facilidade de uso e configuração - Uso que faz dos recursos: cpu, rede, io, memória. Principalmente agentes (a haver) que tenham
de correr nos sistemas geridos têm de ser o menos intrusivos possível. - Não comprometer a utilização futura numa cloud publica. Aspetos inovadores: Monitoria de sistemas distribuídos; Micro-serviços Ferramentas a utilizar : A seleccionar durante o projeto mas é previsível a utilização de:   - bases de dados que
permitam text search de forma flexível e eficiente   - base de dados que permitam fazer queries
sobre séries temporais de forma flexível e eficiente   - Sistema que permita levar a
informação dos nós monitorados para o sistema de gestão (possivelmente midleware que permita
modelos tipo publish/subscribe como seja o apache kafka, ou rabitmq ou ...)   - Utilização de
interfaces gráficos suportados em tecnologias web que permitam pesquisar e visualizar a
informação   - Ferramentas do género do zookeeper ou consul ou outras que sejam uma boa base
para montar o serviço de registo e descoberta de outros serviços   - java ou outras linguagens
de programação de acordo com as peças selecionadas. Referências bibliográficas:NGINX, \"Microservices From Design to Deployment\"Jonas Bonér,
\"Reactive Microservices Architecture Design Principles for Distributed Systems\"Rob Ewaschuk,
\"Monitoring Distributed Systems Case Studies from Google’s SRE Teams\". Atividades: • Levantamento de requisitos funcionais• Análise do estado da arte de monitoria, auditing e
descoberta de serviços em sistemas distribuídos• Análise de ferramentas open source que possam
ser usadas no desenvolvimento do framework• Concepção e implementação do framework•
Concepção e implementação de um caso de uso do framework que demonstre e teste a utilização
do mesmo.• Elaboração de um relatório final que: descreva o problema, a solução encontrada,
o racional para as escolhas feitas, limitações da solução, possíveis evoluções futuras.
Elaboração de relatório final. Orientador: João Moreto jpmoreto@alticelabs.com Competências Chave requeridas: Boa capacidade de investigação e analíticas. Conhecimentos de java e/ou outras linguagens de programação. Conhecimentos de sistemas distribuídos. Desejável conhecimentos de base de dados que suportem documentos schema less e text search. Desejável conhecimentos básicos de web (http; html; javascript; css). Desejável conhecimentos de json e yaml. Notas: Os projetos da Altice Labs enquadram-se no Programa Genius/InovaRia que se rege pelo regulamento da
Inova-Ria aprovado pela FCT, mas em contexto empresarial e com financiamento próprio. Serão
realizados nas instalações da Altice Labs em Aveiro /Porto e geridos pela Inova Ria em termos
processuais. Para se habilitar ao projeto neste programa o aluno deverá ter uma média prevista
final de 14 valores (13,5valores) (média linear entre licenciatura e mestrado), uma elevada
motivação para o projeto. Nesta fase a bolsa de Investigação atribuída será uma BIC no
valor de 385€ liq/mês. O processo de recrutamento e seleção é constituído pelas seguintes etapas: 1. Entrevista Individual: detalha-se o perfil técnico e comportamental do candidato validando alinhamento com um projeto concreto;Os alunos interessados oportunidades de
esclarecer todas as dúvidas. 2. Decisão final; (de acordo com a UM ) 3. Acolhimento + Formação (Setembro/Outubro em dia a definir) 4. Candidaturas: Enviar CV para GENIUS@inova-ria.pt ou regina@inova-ria.pt


Voltar...