45

Cloudwalker - processamento distribuído em nuvem

Embed Size (px)

DESCRIPTION

O objetivo do projeto Cloudwalker é prospectar e integrar soluções para processamento distribuído, e prover um conjunto de ferramentas que seja disponibilizado em um ambiente de desenvolvimento (que pode ser em nuvem), para gerar aplicações que façam proveito dos recursos da infraestrutura de nuvem, e que inclusive tornem-se serviços disponíveis pela nuvem.

Citation preview

Page 1: Cloudwalker - processamento distribuído em nuvem
Page 2: Cloudwalker - processamento distribuído em nuvem

Cloudwalker processamento distribuído em

nuvemPalestrante: Flávio Gomes da Silva Lisboa

Page 3: Cloudwalker - processamento distribuído em nuvem

Curriculum

Flávio Gomes da Silva LisboaBacharel em Ciência da Computação com pós-graduação em Aplicações Corporativas usando Orientação a Objetos e Tecnologia Java pela Universidade Tecnológica Federal do Paraná. Já atuou como programador em empresas privadas de informática e foi funcionário de carreira do Banco do Brasil, onde chegou a analista na diretoria internacional. Atualmente é consultor tecnológico da Coordenação Estratégica de Tecnologia do Serviço Federal de Processamento de Dados (Serpro). Foi professor na pós-graduação da UNICID e é instrutor de cursos técnicos na Tempo Real Eventos e conteudista da TreinaWeb. Foi membro do time oficial de tradução do Zend Framework e é autor dos livros: Zend Framework Desenvolvendo em PHP 5 Orientado a Objetos com MVC, Zend Framework Componentes Poderosos para PHP e Criando Aplicações PHP com Zend e Dojo. É Zend Framework Certified Engineer e contribuidor oficial do projeto Tine 2.0, suíte livre de comunicação em PHP. Tem experiência na área de Ciência da Computação, com ênfase em Software Livre, atuando principalmente nos seguintes temas: Java, PHP, Python, padrões, frameworks, MVC, DCI e objetos.

Cloudwalker processamento distribuído em nuvem

Page 4: Cloudwalker - processamento distribuído em nuvem

Curriculum

http://romocavaleirodoespaco.blogspot.com.br

Cloudwalker processamento distribuído em nuvem

Page 5: Cloudwalker - processamento distribuído em nuvem

Projeto Nuvem Livre do SerproA operação do SERPRO hoje comporta uma grande variedade de hardware de servidores, storage, sistemas operacionais e tecnologia de virtualização. A gestão de cada parte destes componentes é feita manualmente ou de forma semiautomática, na melhor das hipóteses. Da instalação de sistema operacional das máquinas, instalação de serviços nesses sistemas, criação de máquinas virtuais, gestão dos recursos computacionais até a instalação de servidores web, servidores de portais, banco de dados, a maioria precisa de um grande esforço manual, passível de erros e vinculado à capacidade de pessoal de cada área.Esse tipo de estrutura não escala facilmente: um técnico que faz a monitoração e gestão de 30 servidores com 10 serviços sendo executadas nessas máquinas não necessariamente tem tempo para gerir 1000 servidores.

A proposta é fornecer serviço de gestão de nuvem, seja para IaaS (Infrastructure as a Service) como também toda a pilha de um PaaS (Plataform as a Service) ou SaaS (Software as a Service)

Cenário

Cloudwalker processamento distribuído em nuvem

Page 6: Cloudwalker - processamento distribuído em nuvem

Objetivos do projeto Nuvem Livre

Cenário

1.Criar a maior nuvem dentro do Governo Federal com uma solução livre.

2. Criar um núcleo de desenvolvimento (devops) com especialização no atendimento das demandas dos serviços de nuvem

3. Criar uma comunidade junto ao portal de software público criando um modelo de infraestrutura de nuvem para o Governo

Cloudwalker processamento distribuído em nuvem

Page 7: Cloudwalker - processamento distribuído em nuvem

Projetos de Software Livre - PSSL

Belo Horizonte / Curitiba

Page 8: Cloudwalker - processamento distribuído em nuvem

Entendimento da necessidade

Cloudwalker processamento distribuído em nuvem

Hoje o Serpro investe em tecnologias de computação em nuvem, para otimizar o uso dos seus recursos computacionais e prover elasticidade à demanda dos usuários e clientes. Essa elasticidade é provida pelo compartilhamento de memória, processadores e capacidade de armazenamento.

Page 9: Cloudwalker - processamento distribuído em nuvem

Entendimento da necessidade

Cloudwalker processamento distribuído em nuvem

A questão que se coloca é a seguinte: as aplicações farão uso dos recursos providos pelo ambiente de nuvem? Hoje temos computadores pessoais com processadores de múltiplos núcleos, ou unidades de processamento. Mas a maximização do uso dos recursos providos por eles requer ajustes tanto dos sistemas operacionais quanto das aplicações.

Page 10: Cloudwalker - processamento distribuído em nuvem

Entendimento da necessidade

Cloudwalker processamento distribuído em nuvem

Uma aplicação que não foi desenvolvida para fazer uso de processamento distribuído não irá usufruir plenamente da capacidade computacional do ambiente de nuvem. O Serpro até utiliza tecnologias que tem suporte a processamento distribuído, mas essa característica não é explorada de modo pleno.

Page 11: Cloudwalker - processamento distribuído em nuvem

O projeto

Cloudwalker processamento distribuído em nuvem

Page 12: Cloudwalker - processamento distribuído em nuvem

O projeto

Cloudwalker processamento distribuído em nuvem

O objetivo do projeto Cloudwalker é prospectar e integrar soluções para processamento distribuído, e prover um conjunto de ferramentas que seja disponibilizado em um ambiente de desenvolvimento (que pode ser em nuvem), para gerar aplicações que façam proveito dos recursos da infraestrutura de nuvem, e que inclusive tornem-se serviços disponíveis pela nuvem.

Page 13: Cloudwalker - processamento distribuído em nuvem

O projeto

Cloudwalker processamento distribuído em nuvem

Profº. Marins

Page 14: Cloudwalker - processamento distribuído em nuvem

O projeto

Cloudwalker processamento distribuído em nuvem

O escopo do projeto envolve o estudo e integração das soluções Cassandra, MongoDB, VoltDB, Hadoop, Hive, Gearman e Openstack. Toda a pilha de softwares contempla soluções livres, já mantidas em comunidade. A ideia é aderir às comunidades e uni-las em torno dos objetivos comuns, reduzindo o custo de manutenção do Serpro e de outros parceiros e colaboradores.

Page 15: Cloudwalker - processamento distribuído em nuvem

O projeto

Cloudwalker processamento distribuído em nuvem

Page 16: Cloudwalker - processamento distribuído em nuvem

Objetivos gerais

Cloudwalker processamento distribuído em nuvem

Criar, adaptar e integrar ferramentas de processamento distribuído para ambiente de nuvem, de modo que as aplicações tirem o máximo proveito da capacidade computacional disponível.

Page 17: Cloudwalker - processamento distribuído em nuvem

Objetivos específicos (versão 1.0)

Cloudwalker processamento distribuído em nuvem

Criar uma camada de abstração do Expresso 3 para o MongoDB.

Criar um adaptador MongoDB para o Tine 2.0

Criar um paper sobre o suporte MongoDB ao Tine 2.0

Criar um modelo tecnológico para o MongoDB no Expresso 3

Page 18: Cloudwalker - processamento distribuído em nuvem

Premissas

Cloudwalker processamento distribuído em nuvem

Page 19: Cloudwalker - processamento distribuído em nuvem

Premissas

O projeto será desenvolvido de forma aberta: todo código-fonte estará disponível desde o início para download.

Cloudwalker processamento distribuído em nuvem

Page 20: Cloudwalker - processamento distribuído em nuvem

Premissas

O projeto aceitará desde o início colaborações externas, que podem ser propostas de melhoria, de novas funcionalidades, identificação ou correção de bugs.

Cloudwalker processamento distribuído em nuvem

Page 21: Cloudwalker - processamento distribuído em nuvem

Premissas

De acordo com o critério da meritocracia, onde quem contribui mais e tem responsabilidade conquista mais direitos, será concedida permissão de gravação no repositório do projeto para aqueles que submeterem contribuições que agreguem valor ao projeto e se responsabilizarem por elas.

Cloudwalker processamento distribuído em nuvem

Page 22: Cloudwalker - processamento distribuído em nuvem

Premissas

O projeto fará reuso de soluções existentes.

Cloudwalker processamento distribuído em nuvem

Page 23: Cloudwalker - processamento distribuído em nuvem

Premissas

O projeto será integrado com as comunidades de software livre: modificações das soluções utilizadas serão devolvidas como contribuições.

Cloudwalker processamento distribuído em nuvem

Page 24: Cloudwalker - processamento distribuído em nuvem

Premissas

Será utilizado o Git para o controle de versão do projeto.

Para gestão e armazenamento do código-fonte do projeto será usado o Github (github.com). O endereço do projeto é http://sourceforge.net/projects/cloudwalker.

Cloudwalker processamento distribuído em nuvem

Page 25: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Versão 2

Cloudwalker processamento distribuído em nuvem

Page 26: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Versão 2

+ 500.000 usuários

Cloudwalker processamento distribuído em nuvem

Page 27: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Versão 2

Cloudwalker processamento distribuído em nuvem

Page 28: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Versão 2eGroupWare

Expresso 1

Expresso 2 eGroupWare

Cloudwalker processamento distribuído em nuvem

Page 29: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Cloudwalker processamento distribuído em nuvem

Page 30: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

3

Cloudwalker processamento distribuído em nuvem

Page 31: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

3

Cloudwalker processamento distribuído em nuvem

Page 32: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Postfix SMTPIMAP PostgreSQL

ClienteServidor

Cloudwalker processamento distribuído em nuvem

Page 33: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Cloudwalker processamento distribuído em nuvem

Page 34: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Cloudwalker processamento distribuído em nuvem

Application/Backend/Application/Controller/Application/css/Application/Frontend/Application/js/Application/Model/Application/Setup/Application/translations/

Page 35: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Versão 2

Expresso 3

Tine 2.0

Cloudwalker processamento distribuído em nuvem

Page 36: Cloudwalker - processamento distribuído em nuvem

Estudo de caso: Expresso 3

Cloudwalker processamento distribuído em nuvem

Page 37: Cloudwalker - processamento distribuído em nuvem

Estrutura Analítica

Cloudwalker processamento distribuído em nuvem

Page 38: Cloudwalker - processamento distribuído em nuvem

Proposta Arquitetural

Cloudwalker processamento distribuído em nuvem

Page 39: Cloudwalker - processamento distribuído em nuvem

Cobaia

Cloudwalker processamento distribuído em nuvem

Page 40: Cloudwalker - processamento distribuído em nuvem

Proposta Arquitetural

Cloudwalker processamento distribuído em nuvem

Page 41: Cloudwalker - processamento distribuído em nuvem

Proposta Arquitetural

Cloudwalker processamento distribuído em nuvem

Page 42: Cloudwalker - processamento distribuído em nuvem

Proposta Arquitetural

Cloudwalker processamento distribuído em nuvem

Page 43: Cloudwalker - processamento distribuído em nuvem

Proposta Arquitetural

Cloudwalker processamento distribuído em nuvem

Page 44: Cloudwalker - processamento distribuído em nuvem

Ambiente colaborativo

Cloudwalker processamento distribuído em nuvem

Page 45: Cloudwalker - processamento distribuído em nuvem

Obrigado

https://github.com/fgsl/cloudwalker

[email protected]

@fgsl

Cloudwalker processamento distribuído em nuvem