OCCI » History » Version 1
Marco Gomes, 27 Apr 2012 17:18
| 1 | 1 | Marco Gomes | h1. OCCI |
|---|---|---|---|
| 2 | 1 | Marco Gomes | |
| 3 | 1 | Marco Gomes | h2. Objetivo |
| 4 | 1 | Marco Gomes | |
| 5 | 1 | Marco Gomes | O escopo deste documento trata de avaliar o uso de soluções de protocolos de comunicação para interoperabilidade entre clouds, avaliando a viabilidade de uma determinada solução para o contexto do projeto Educloud, e se o projeto dispõe de informações suficientes para realizar tal análise e um possível deployment em nosso ambiente de desenvolvimento. |
| 6 | 1 | Marco Gomes | |
| 7 | 1 | Marco Gomes | h2. Projeto EduCloud |
| 8 | 1 | Marco Gomes | |
| 9 | 1 | Marco Gomes | O projeto Educloud é um projeto para a implementação de uma infraestrutura de cloud computing para a secretaria da educação do estao de São Paulo. |
| 10 | 1 | Marco Gomes | |
| 11 | 1 | Marco Gomes | h2. OCCI |
| 12 | 1 | Marco Gomes | |
| 13 | 1 | Marco Gomes | O OCCI é um protocolo para realizar interface entre o usuário e as soluções de cloud de uma forma uniforme. Com ela é possível montar um sistema centralizado de gerenciamento de diferentes soluções de cloud, oferecendo dessa forma interoperabilidade e simplicidade de uso. A especificação do OCCI é desenvolvida e mantida pelo Open Grid Forum e disponibilizada para que seja implementada nas soluções de cloud, assim como em ferramentas para realizar validações da implementação de acordo com a especificação. |
| 14 | 1 | Marco Gomes | |
| 15 | 1 | Marco Gomes | O OCCI em específico apresenta-se como uma soluçao de protocolo para interoperabilidade de cloud. Até o presente momento não foram encontradas soluções que servem o mesmo propósito. Existem soluções na mesma linha, mas com propósitos diferentes, e são listadas a seguir: |
| 16 | 1 | Marco Gomes | |
| 17 | 1 | Marco Gomes | * Amazon EC2: A função é para administrar a cloud oferecida pela Amazon, mas algumas soluções de cloud oferecem suporte para trabalhar com soluções híbridas (publicas + privada); |
| 18 | 1 | Marco Gomes | * CDMI (Cloud Data Management Interface): É uma interface para trabalhar com manipulação de dados de Cloud; |
| 19 | 1 | Marco Gomes | * Open Data Center Alliance: É um consórcio de empresas com intuito de definir standards para cloud computing. |
| 20 | 1 | Marco Gomes | |
| 21 | 1 | Marco Gomes | Ela é uma implementação aberta, e tem seus aspectos legais de uso descritos no link a seguir: |
| 22 | 1 | Marco Gomes | |
| 23 | 1 | Marco Gomes | http://occi-wg.org/about/legal |
| 24 | 1 | Marco Gomes | |
| 25 | 1 | Marco Gomes | Esta tecnologia é implementada pelas principais soluções de cloud open source existentes e existem ferramentas de validação da implementação de acordo com este site: http://occi-wg.org/community/implementations |
| 26 | 1 | Marco Gomes | |
| 27 | 1 | Marco Gomes | A questão da adoção varia da necessidade das empresas de possuírem soluções interoperáveis, e até o presente momento não foi encontrada uma referência que pudesse quantificar tal informação. |
| 28 | 1 | Marco Gomes | |
| 29 | 1 | Marco Gomes | Dentro do site do projeto, não há uma referência explicita de roadmap para o OCCI. Porém, eles possuem uma wiki https://forge.ogf.org/sf/projects/occi-wg com informações sobre o processo de desenvolvimento, bugfixes e discussões a respeito do projeto. Acredito que por ser uma especificação, deve haver continuidade na elaboração de novas versões da especificação, porém é apenas uma suposição baseada no desenvolvimento que cloud computing está tendo no mundo. |
| 30 | 1 | Marco Gomes | |
| 31 | 1 | Marco Gomes | Uso no Projeto Educloud |
| 32 | 1 | Marco Gomes | |
| 33 | 1 | Marco Gomes | Os requisitos para o projeto Educloud no contexto de um protocolo de gerenciamento de cloud são: |
| 34 | 1 | Marco Gomes | |
| 35 | 1 | Marco Gomes | * Gerenciamento de VMs (listar, criar, suspender, resumir e deletar) |
| 36 | 1 | Marco Gomes | * Interoperabilidade entre soluções de cloud |
| 37 | 1 | Marco Gomes | |
| 38 | 1 | Marco Gomes | Posto isso, o OCCI é um protocolo desenvolvido para ser interoperável, oferecer um conjunto de soluções para gerenciamento de cloud tanto em situações de IaaS, PaaS e SaaS. Além disso, ele oferece uma API com alto nível de extensibilidade. |
| 39 | 1 | Marco Gomes | |
| 40 | 1 | Marco Gomes | O uso de OCCI é importante para o projeto pois irá adicionar uma camada de interoperabilidade entre as soluções de cloud existentes e com isso teremos a possiblidade de controlar diferentes tipos de soluções através de uma interface centralizada. |
| 41 | 1 | Marco Gomes | As vantagens para o projeto são as já citadas acima, e além disso, a possibilidade da interface poder ser extendida para adicionar funcionalidades de acordo com nossas necessidades. |
| 42 | 1 | Marco Gomes | Uma desvantagem é a provável variação na implementação da interface nas soluções de cloud existentes, podendo culminar em necessidade de retrabalho para nivelar as soluções de cloud em um mesmo patamar de usabilidade da interface. |
| 43 | 1 | Marco Gomes | |
| 44 | 1 | Marco Gomes | O uso do OCCI conflita com as soluções de cloud disponíveis pois ela entra com o papel de substituir as interfaces de gerenciamento das soluções de cloud. Mas isso não é visto como um aspecto negativo, pois a idéia de substituir estas interfaces é justamente sua principal função para ser possível também integrar as soluções e centralizar o comando em uma única interface. |
| 45 | 1 | Marco Gomes | |
| 46 | 1 | Marco Gomes | A documentação do OCCI no site do projeto é referente à especificação do mesmo. Para o contexto do projeto, a documentação procurada se refere às implementações de OCCI nas soluções de cloud. Logo, temos as seguintes documentações: |
| 47 | 1 | Marco Gomes | |
| 48 | 1 | Marco Gomes | * Open Nebula: http://opennebula.org/documentation:rel3.4:occidd |
| 49 | 1 | Marco Gomes | |
| 50 | 1 | Marco Gomes | * Open Stack: http://wiki.openstack.org/occi |
| 51 | 1 | Marco Gomes | |
| 52 | 1 | Marco Gomes | * Eucalyptus: http://occi-wg.org/2010/12/14/occi-in-eucalyptus/ |
| 53 | 1 | Marco Gomes | |
| 54 | 1 | Marco Gomes | Pensando em deployment de OCCI não é efetivamente o termo correto a ser utilizado. Como nosso foco é em interoperabilidade, para esta tecnologia é necessário estudar as implementações de OCCI em cada uma das soluções de cloud que iremos utilizar para poder ser criado uma solução que consiga gerenciar as VMs de forma uniforme entre as clouds. |
| 55 | 1 | Marco Gomes | |
| 56 | 1 | Marco Gomes | No opennebula, o OCCI é implementado de forma a ser um protocolo sobre HTTP operando através de operações de GET, POST, PUT e DELETE. |
| 57 | 1 | Marco Gomes | |
| 58 | 1 | Marco Gomes | No openstack, o OCCI também é implementado sob HTTP, porém aparenta ser uma implementação mais completa que no opennebula, oferecendo uma gama maior de recursos para gerenciamento da VM. |
| 59 | 1 | Marco Gomes | |
| 60 | 1 | Marco Gomes | No eucalyptus não foi encontrado documentação falando a respeito da implementação de OCCI. |