Propostas Submetidas - sem aluno

DEI - FCTUC
Gerado a 2024-12-04 19:19:33 (Europe/Lisbon).
Voltar

Titulo Estágio

2016_N81 CI/CD: Integração e Entrega Contínua

Áreas de especialidade

Engenharia de Software

Comunicações, Serviços e Infraestruturas

Local do Estágio

Aveiro

Enquadramento

Um dos objectivos do projeto H2020 SONATA-NFV será o de desenvolver uma plataforma de Integração Contínua (CI) e de Entrega Contínua (CD) para testar, validar e instanciar soluções de software desenvolvido por equipas externas mas sobre um SDK comum.
Esta capacidade permitirá a criação e entrega de soluções para a rede dos operadores, nomeadamente Funções e Serviços de Rede Virtualizados (VNF’s e NS’s), convenientemente Testadas, disponiveis em Catálogo e Instaladas e Mantidas de uma forma ágil e eficiente, minimizando o erro humano, acelerando os tempos de Entrega e facilitando a Operação.
A AlticeLabs (ALB) tem a responsabilidade de desenvolver a componente de inicialização da plataforma de serviços (SP) do Sonata, bem como a instanciação de recursos (VNF’s e NS’s) em ambiente Multi-Site e Multi-Plataforma.

Objetivo

As competências a adquirir neste estágio poderão vir a ser usadas em projectos fundamentais para a ALB, como sejam a “containerização” de componentes de software e a orchestração e automação do seu deployment.
Considerando que a ALB contribui com a infraestrutura para um dos PoP’s onde serão demonstrados serviços NFV (neste caso CICD, VNF’s e NS’s), este estágio terá por isso acesso privilegiado à plataforma, contribuíndo assim para alguma optimização de recursos neste projecto.
Objetivos
Os objectivos a alcançar com este estágio serão:
• Orchestrar o deployment de stacks aplicacionais baseado em templates (TOSCA e/ou HOT) implementando assim o conceito “Infrastrucuture as code”
• Automatizar o deployment de aplicações (VNF’s e/ou NS’s) e gerir o seu ciclo de vida (SLM)
• Dominar a gestão e manutenção de aplicações (VNF’s e/ou NS’s) baseadas em tecnologias de Containers (inicialmente, Docker)
Para responder aos desafios de inicialização, configuração, automação e orchestração, o código a desenvolver (maioritariamente em Ansible, mas também “Dockerfile” scripts e Python) será publicado no repositório Github do projecto, em modelo de Open Source, e convenientemente documentado para facil reutilização pelos parceiros.

Plano de Trabalhos - Semestre 1

Descrição das atividades e resultados esperados
• Estudo da tecnologia Heat para orchestração de infraestrutura em plataformas Openstack e desenvolvimento de stacks em templates HOT para deployment de soluções (NFV’s e/ou NS’s) ao nível do componente “Infrastructure Adapter”
• Desenvolvimento de templates TOSCA para deployment de soluções aplicacionais (NFV’s e/ou NS’s) no modelo de serviço PaaS
• Numa prespectiva de “zero downtime rolling updates”, desenvolver playbooks ANSIBLE assumindo como sendo a ferramenta para gestão de Configurações, orchestração da Implantação e provisão de Infraestrutura (“general purpose automation tool”)
• Numa prespectiva de Integração Contínua e Entrega Contínua, fornecer componentes de software (ex, Ansible) para interação com ferramentas de CICD (ex, Jenkins)
• Criação de stacks aplicacionais (inicializar, configurar, instalar componentes de software) sob e forma de Imagens em formato VM e/ou Container

Plano de Trabalhos - Semestre 2

Descrição das atividades e resultados esperados
• Estudo da tecnologia Heat para orchestração de infraestrutura em plataformas Openstack e desenvolvimento de stacks em templates HOT para deployment de soluções (NFV’s e/ou NS’s) ao nível do componente “Infrastructure Adapter”
• Desenvolvimento de templates TOSCA para deployment de soluções aplicacionais (NFV’s e/ou NS’s) no modelo de serviço PaaS
• Numa prespectiva de “zero downtime rolling updates”, desenvolver playbooks ANSIBLE assumindo como sendo a ferramenta para gestão de Configurações, orchestração da Implantação e provisão de Infraestrutura (“general purpose automation tool”)
• Numa prespectiva de Integração Contínua e Entrega Contínua, fornecer componentes de software (ex, Ansible) para interação com ferramentas de CICD (ex, Jenkins)
• Criação de stacks aplicacionais (inicializar, configurar, instalar componentes de software) sob e forma de Imagens em formato VM e/ou Container
. Relatorio Final

Condições

O aluno será acompanhado internamente por uma equipa de I&D;
Durante a 2º Fase será atribuida Bolsa ao aluno

Observações

Competências Chave requeridas:
Os Candidatos deverão ter o seguinte perfil técnico:
• Aluno finalista de mestrado (5 anos) com sólida formação em Eng. Informática
• Conhecimentos de programação em linguagens YAML, nomeadamente Ansible
• Conhecimentos de programação em linguagens baseadas em formato Template, nomeadamente HOT e TOSCA
• Conhecimentos de programação em linguagens de alto nível, preferencialmente Python
Os Candidatos devem ter o seguinte perfil individual:
- Motivação para aceitar novos desafios e capacidade de adaptação
- Assertividade na discusão de conceitos, arquiteturas e tecnologias
- Gestão autónoma de tempo
- Domínio da lingua Inglesa como requisito fundamental para colaboração em projetos Europeus.
Cv para regina@inova-ria.pt

Orientador

Doutoramento - Francisco Fontes
PCarv@alticelabs.com 📩