Ciclo 2 - Relatório final

Resumo

O conceito de computação em nuvem (em inglês, cloud computing) refere-se à utilização da memória, capacidade de armazenamento e poder computacional dos computadores interligados por meio da Internet, seguindo o princípio da computação em grade. Com a subutilização destes recursos computacionais em equipamentos modernos, surgiu a necessidade de compartilhar recursos de forma isolada, tornando assim uma máquina física em várias máquinas virtuais, cada uma servindo para um determinado propósito e com seus recursos bem definidos, tentando obter o máximo de aproveitamento dos recursos computacionais.

Prover uma infraestrutura de máquinas virtuais para clientes de forma escalável é hoje uma necessidade mundial e um desafio tecnológico. Este relatório tem por objetivo exibir as características e requisitos necessários para instalar e configurar uma infraestrutura de Cloud para prover máquinas virtuais aos usuários do projeto EduCloud.

Introdução

O projeto EduCloud é uma iniciativa do Governo do Estado de São Paulo em parceria com a UNESP e Intel. Esta iniciativa visa fornecer uma infraestrutura de computação em nuvem para hospedar sistemas de apoio ao ensino para as Universidades e Escolas públicas do Brasil.

A maior vantagem da computação em nuvem é a possibilidade de utilizar softwares sem que estes estejam instalados no computador. Mas há outras vantagens1:

Para implementar uma infraestrutura de nuvem, o Núcleo de Computação Ciêntifica - NCC, da UNESP pesquisou as principais ferramentas livres2 do mercado para que juntas, executem esta tarefa.

Para prover uma infraestrutura de nuvem, precisamos atender as seguintes necessidades:

  1. Disponibilizar máquinas virtuais de acordo com a demanda de forma automática e rápida, com diferentes configurações de memória, disco e cpu;
  2. Disponibilizar para estas máquinas virtuais, unidades de armazenamento de dados;
  3. Ter um controle de acesso de usuários e grupos que podem utilizar estes recursos, bem como, uma "quota" de recursos por usuário/grupo;
  4. Armezar as máquinas virtuais e os dados de forma descentralizada, permitindo assim escalar facilmente;

Referências

  1. O que é computação em nuvem?
  2. Definição de software livre