diff options
Diffstat (limited to 'doc/hidra.pdf.html')
-rw-r--r-- | doc/hidra.pdf.html | 989 |
1 files changed, 0 insertions, 989 deletions
diff --git a/doc/hidra.pdf.html b/doc/hidra.pdf.html deleted file mode 100644 index 7c5da53..0000000 --- a/doc/hidra.pdf.html +++ /dev/null @@ -1,989 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> - <title>O Processo Hidra</title> - - - -<style> -html, body { margin: 0; padding: 0; } - -body { font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; } - -a:link, a:visited { color: black; } - -h1 { font-size: 30pt; } -h2 { font-size: 28pt; } -h3 { font-size: 25pt; } -p, li, dt, dd, td, th { font-size: 18pt; } - -pre { font-size: 14pt; } -pre.small { font-size: 11pt; } - -pre.code { - background-color: azure; - padding: 5px; - } - -ul { list-style-type: square; } - -.center { text-align: center; } - -.slide { page-break-after: always; - min-height: 100mm; - padding: 40px; - - border: 1px dotted black; - -/* - background: -moz-linear-gradient( top, maroon, red); -*/ - } - - -body { - font-family: monospace; -} - -.centered img { - display: block; - margin-left: auto; - margin-right: auto; -} - -.centered { - text-align: center; -} - -p, li, dt, dd, td, th { - font-size: 16pt; -} - -.slide h1 { - font-size: 25pt; -} - - - -/* -for princexml (CSS3 paged media support) -@page { size: A4 landscape } -*/ -</style> - -</head> -<body> - -<div class="presentation"> - -<div class='slide centered'> - -<!-- _S9SLIDE_ centered --> - -<p><img src="hidra-oil.png" alt="O Processo Hidra" /></p> - - -</div> -<div class='slide '> -<h1 id="o-processo-hidra">O Processo Hidra</h1><div class="centered"> - <p><img src="hidra-oil.png" alt="O Processo Hidra" /></p> - - <p>De relógios a nuvens, de nuvens a hidras.</p> -</div> - - -</div> -<div class='slide '> -<h1 id="parte-1-introduo">Parte 1: Introdução</h1></div> -<div class='slide '> -<h1 id="objetivo-da-apresentao">Objetivo da apresentação</h1><p>O objetivo desta fala é divulgar os estudos em andamento sobre o processo hidra dando espaço para possíveis andamentos:</p> - -<ol> - <li> - <p>Informar os grupos e pessoas que possuem conteúdo hospedado em infraestruturas tecno-sociais comuns sobre o trabalho desenvolvido.</p> - </li> - <li> - <p>Encorajar grupos técnicos existentes para adotarem procedimentos que favoreçam suas infraestruturas a terem comportamento hidra.</p> - </li> -</ol> - -<p>Esta apresentação ainda está em processo de concepção e revisão e por isso não está sendo divulgada.</p> - - -</div> -<div class='slide '> -<h1 id="o-que--uma-hidra">O que é uma Hidra?</h1></div> -<div class='slide '> -<h1 id="ser-mitolgico-de-mltiplas-cabeas-regenerativas-destrudo-por-hrcules">Ser mitológico de múltiplas cabeças regenerativas, destruído por Hércules</h1><div class="centered"> - <p><img src="images/Hydra_04.jpg" alt="Hidra mitológica" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="na-biologia-moderna-animal-aqutico-que-possui-capacidades-regenerativas">Na biologia moderna, animal aquático que possui capacidades regenerativas</h1><div class="centered"> - <p><img src="images/Hydra001.jpg" alt="Hida biológica" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="o-que--o-processo-hidra">O que é o Processo Hidra?</h1><p>O Processo Hidra é uma descrição de infraestruturas tecno-sociais que apresentam:</p> - -<ol> - <li> - <p>Replicabilidade e escalabilidade.</p> - </li> - <li> - <p>Capacidade de combinação rizomática.</p> - </li> - <li> - <p>Regeneração e reagrupamento após eventos catastróficos.</p> - </li> -</ol> - -<p>A Hidra moderna pode resistir a Hércules.</p> - - -</div> -<div class='slide '> -<h1 id="parte-2-grupos-tcnicos-sociais">Parte 2: Grupos Técnicos Sociais</h1><p>Mas antes façamos uma retrospectiva…</p> - - -</div> -<div class='slide '> -<h1 id="sistemas-informacionais-sociais">Sistemas informacionais sociais</h1><p>Modelo “clássico” de hospedagem: arquitetura “cliente-servidor”:</p> - -<div class="centered"> - <p><img src="http://code.google.com/edu/parallel/img/client-server.gif" alt="Arquitetura cliente-servidor" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="trabalho-tcnico-informacional-em-grupos-sociais">Trabalho técnico informacional em grupos sociais</h1><p>Características:</p> - -<ul> - <li> - <p>Considerado tecnicamente de alta dificuldade e dedicação.</p> - </li> - <li> - <p>Esforço para provisionamento, configuração e manutenção de sistemas.</p> - </li> - <li> - <p>Trabalho demorado: escala de meses para alcançar estabilidade.</p> - </li> - <li> - <p>Suscetível a muitas falhas: escala de horas para que um sistema seja inutilizado.</p> - </li> - <li> - <p>Pouco tempo disponível para o trabalho.</p> - </li> - <li> - <p>Dificuldade para a realização de backups e manutenção de procedimentos administrativos.</p> - </li> - <li> - <p>Baixa mobilização e força de trabalho “tarefeira”.</p> - </li> - <li> - <p>Custa um bom dinheiro…</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="interldio-a-destruio-das-redes">Interlúdio: a destruição das redes</h1><p><img src="http://www.ibiblio.org/pioneers/images/centralized.gif" alt="Redes centralizadas e descentralizadas" /> -<img src="http://www.ibiblio.org/pioneers/images/distributed.gif" alt="Rede distribuída" /></p> - -<p>A cada evento catastrófico, vários grupos são prejudicados com danos à comunicação de difícil cicatrização.</p> - - -</div> -<div class='slide '> -<h1 id="parte-3-contra-ataque-infraestrutural">Parte 3: Contra-ataque infraestrutural</h1><p>Como impedir que uma rede seja destruída mesmo que a remoção de nodos continue?</p> - - -</div> -<div class='slide '> -<h1 id="a-diviso-em-camadas">A divisão em camadas</h1><p>Observação crucial:</p> - -<pre><code>"Ghost in the shell": o disco e o hardware são intercambiáveis, - provisionamento pode ocorrer em múltiplas etapas. É possível - manter um estoque de discos pré-instalados e uma reserva financeira - para a aquisição de máquinas. Isso e backups permite a reconstrução - de sistemas. -</code></pre> - -<p>Conclusão imediata:</p> - -<pre><code>É necessário "descolar" a camada de serviços (web, streaming, email, -etc) da camada infraestrutural (máquinas, conexões, etc): filtragem -de problemas físicos e jurídicos. -</code></pre> - -<p>A camada de serviços pode então ser “congelada” na forma de backups, enquanto que a camada infraestrutural não possui “alma” intrínseca, podendo ser reconfigurada quando necessário. Desse modo, várias máquinas podem ser mantidas no ar para aumentar a tolerância a falhas.</p> - -<p>Mas como um sítio pode estar simultaneamente em várias máquinas?</p> - - -</div> -<div class='slide '> -<h1 id="dns-colando-domnios-em-mquinas">DNS: colando domínios em máquinas</h1><p><img src="images/An_example_of_theoretical_DNS_recursion.png" alt="DNS" /> -<img src="http://www.linux.org/docs/ldp/howto/Jabber-Server-Farming-HOWTO/c2s-round-robin.jpeg" alt="Round Robin DNS" /></p> - -<p>O colamento/descolamento entre camadas é possível mediante mudanças de DNS.</p> - - -</div> -<div class='slide '> -<h1 id="proxies-distribuindo-um-stio-entre-mquinas">Proxies: distribuindo um sítio entre máquinas</h1><div class="centered"> - <p><img src="http://perl.apache.org/docs/tutorials/apps/scale_etoys/machine_layout.png" alt="App proxy" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="aplicao-descentralizada-ou-distribuda">Aplicação descentralizada ou distribuída</h1><div class="centered"> - <p><img src="http://upload.wikimedia.org/wikipedia/en/thumb/5/5a/ICEgrid.png/800px-ICEgrid.png" alt="ICE" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="tipos-de-camadas">Tipos de camadas</h1><p>Informação de um sistema é dividida conforme sua aplicabilidade:</p> - -<ul> - <li> - <p>Hardware: manifestações cristalizadas de informação: computadores.</p> - </li> - <li> - <p>Programas (software): pacotes.</p> - </li> - <li> - <p>Configuração (módulos).</p> - </li> - <li> - <p>Chaves e senhas.</p> - </li> - <li> - <p>Dados (o conteúdo propriamente dito).</p> - </li> -</ul> - -<p>Tais camadas podem ser empacotadas em sistemas e tais sistemas podem ser agregados em outros sistemas (camadas de camadas de camadas): pode ser uma abstração complicada, mas o ganho conceitual em isolamento de instâncias é importante.</p> - - -</div> -<div class='slide '> -<h1 id="problemas">Problemas</h1><p>O discurso é bonito, porém…</p> - -<ol> - <li> - <p>Hardware é muito heterogêneo para padronizações serem efetivas.</p> - </li> - <li> - <p>Os programas são muito diversos para serem estudados, integrados e desenvolvidos.</p> - </li> - <li> - <p>Configurações são muito complexas e numerosas para serem facilmente separadas e replicadas de forma genérica.</p> - </li> - <li> - <p>São necessárias muitas senhas de boa complexidade, o que torna sua manutenção complicada.</p> - </li> - <li> - <p>Backups são difíceis de serem realizados e recuperados.</p> - </li> -</ol> - -<p>Ou seja: o discurso da divisão em camadas é interessante, porém na realidade sua implementação enfrenta diversos problemas. Serão eles impeditivos?</p> - - -</div> -<div class='slide '> -<h1 id="o-plano-r">O Plano R*</h1><p><img src="http://www.autistici.org/orangebook/slides/rete.png" alt="Rede" /> -<img src="http://www.autistici.org/orangebook/slides/rings.png" alt="Anéis" /></p> - - -</div> -<div class='slide '> -<h1 id="o-plano-r-email">O Plano R*: email</h1><div class="centered"> - <p><img src="http://www.autistici.org/orangebook/slides/flussomail.png" alt="Sistema de email escalável" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="como--possvel">Como é possível?</h1><p>O segredo está na articulação da força de trabalho com a divisão de camadas. A regra geral é:</p> - -<ol> - <li>Utilização de ferramentas sólidas e amplamente utilizadas por comunidades de software livre e aberto.</li> - <li>Trabalho de desenvolvimento focado na integração de soluções existentes, enviando alterações em código corrente acima sempre que possível.</li> - <li>Desenvolvendo código próprio, porém livre, apenas quando não existente ou insuficiente nas comunidades.</li> -</ol> - -<p>Cada um desdes tipos informacionais é distribuído em unidades que por sua vez são agregados em árvores:</p> - -<ul> - <li>Hardware em servidores (canalizadores de fluxos, nodos ou instâncias em nuvens).</li> - <li>Programas em pacotes e distribuições.</li> - <li>Configurações em módulos e repositórios.</li> - <li>Chaves (que são unidades de segredo) em repositórios.</li> - <li>Dados em árvore de backups.</li> -</ul> - - -</div> -<div class='slide '> -<h1 id="diviso-arteftica">Divisão artefática</h1><p>A divisão em camadas é artificial (artefática), porém com importantes consequências quando observada à luz da divisão do trabalho de comunidades de software livre e aberto:</p> - -<pre><code> /'\ | - | \./ -upstream downstream -</code></pre> - -<ul> - <li>Hardware: desenvolvimento caro e complexo; hardware livre e aberto engatinhando; dependência do mercado. Exemplo: disco rígido.</li> - <li>Programas e distribuições: grandes comunidades de desenvolvimento e uso. Exemplo: GNU/Linux, Debian.</li> - <li>Configuração: comunidades mais restritas de desenvolvimento e uso. Exemplo: manuais, howtos, módulos.</li> - <li>Chaves e senhas: restrita ao grupo responsável por manter uma dada infraestrutura. Exemplo: senha de superusuário/a.</li> - <li>Dados: desenvolvidos pelas pessoas e grupos hospedados. Exemplo: texto num wiki. </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="diviso-arteftica---2">Divisão artefática - 2</h1><p>É possível reconstruir um sistema dados esses elementos. A divisão do trabalho upstream/downstream é favorável à reconstrução, já que as tarefas se tornam mais complexas ao longo da subida da corrente onde usualmente os grandes grupos sociais se reúnem para solucioná-las.</p> - - -</div> -<div class='slide '> -<h1 id="economia-de-trabalho">Economia de trabalho</h1><p>Assim, é possível economizar muita força de trabalho.</p> - -<ol> - <li> - <p>Enviar um desenvolvimento corrente acima (upstream) libera o grupo técnico de uma manutenção posterior, pois o trabalho passa a ser de responsabilidade da comunidades mais ampla.</p> - </li> - <li> - <p>Quanto mais específica for a informação, mais abaixo da corrente (downstream) ela deve ser mantida.</p> - </li> - <li> - <p>Naquilo que não houver desenvolvimento corrente acima, atuar como fonte (ou seja, agir como upstream) e fornecer para a comunidade.</p> - </li> -</ol> - - -</div> -<div class='slide '> -<h1 id="tipos-de-salvaguarda">Tipos de salvaguarda</h1><p>Para todas as camadas divididas anteriormente é possível criar algum tipo de salvaguarda contra perdas:</p> - -<ul> - <li> - <p>Dinheiro: armazenamento e replicação de força de trabalho (potencial de trabalho armazenado).</p> - </li> - <li> - <p>Estoque: hardware hoje é commodity, podendo ser minimamente estocado ou mantido online em diversos locais.</p> - </li> - <li> - <p>Repositórios: programas, pacotes, distribuições e configurações.</p> - </li> - <li> - <p>Backups: manutenção de dados ou coisas sobressalentes.</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="parte-3-contexto-brasileiro">Parte 3: contexto brasileiro</h1></div> -<div class='slide '> -<h1 id="oramento-e-infraestrutura">Orçamento e infraestrutura</h1><p>Custos:</p> - -<ul> - <li>Plano R*: EUR 10.000 anuais.</li> - <li>No Brasil, é praticamente a despesa anual de um centro social alugado e muito mais do que a receita da maioria dos grupos.</li> -</ul> - -<p>Conexão:</p> - -<ul> - <li>Nos EUA e na Europa, a conexão é rápida e barata. Datacenters corporativos são acessíveis.</li> - <li>No Brasil, a conexão é lenta, cara e o preço dos datacenters é exorbitante.</li> -</ul> - -<p>Repressão:</p> - -<ul> - <li>Criminalização dos movimentos sociais (entulho jurídico).</li> - <li>Polícia violenta.</li> -</ul> - -<p>Estaremos impossibilitados/as de mantermos servidores no país?</p> - - -</div> -<div class='slide '> -<h1 id="por-outro-lado">Por outro lado</h1><ul> - <li> - <p>A legislação, a jurisprudência, cultura e valores brasileiros são muito mais favoráveis à preservação da privacidade que nos EUA ou na Europa (fator Dantas).</p> - </li> - <li> - <p>Honorários advocatícios não são tão altos quanto no exterior (?).</p> - </li> - <li> - <p>O câmbio é favorável a doações internacionais.</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="o-caso-satangoss">O caso Satangoss</h1><p>“O que demorou quatro anos para juntarmos nos foi arrebatado num único dia.”</p> - -<ul> - <li> - <p>Agosto de 2008: polícia civil apreende o servidor do Saravá sem mandado judicial.</p> - </li> - <li> - <p>Mais de cem sítios fora do ar.</p> - </li> - <li> - <p>Não havia backup remoto e nem medidas de contingência estabelecidas.</p> - </li> - <li> - <p>Todos os ovos estavam na mesma cesta.</p> - </li> - <li> - <p>Grande desmobilização.</p> - </li> - <li> - <p>Análise do caso: http://www.sarava.org/node/44</p> - </li> -</ul> - -<p>Como reverter a crise num novo ciclo de mudança e amadurecimento?</p> - - -</div> -<div class='slide '> -<h1 id="parte-4-o-processo-hidra">Parte 4: O Processo Hidra</h1><div class="centered"> - <p><img src="http://f.i.uol.com.br/folha/ciencia/images/0825246.jpg" alt="Regeneração" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="regenerao">Regeneração</h1><p>Hidra: toda célula pode ter o germe da própria organização. Múltiplas cabeças, células tronco que podem adquirir especialização conforme a necessidade.</p> - -<div class="centered"> - <p><img src="http://image.wistatutor.com/content/growth-regeneration-ageing/regeneration-hydra.jpeg" alt="Regeneração da hidra" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="hidra-em-processo">Hidra em processo</h1><div class="centered"> - <p><img src="http://www.uni-kiel.de/zoologie/bosch/jpg/bosch_fig2.jpg" alt="Regeneração da Hidra" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="hidra-em-processo---2">Hidra em processo - 2</h1><div class="centered"> - <p><img src="http://www.uni-kiel.de/zoologie/bosch/jpg/bosch_fig3.jpg" alt="Regeneração da Hidra" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="topologias">Topologias</h1><pre><code>"[To] keep our sources safe, we have had to spread assets, encrypt everything, -and move telecommunications and people around the world to activate protective -laws in different national jurisdictions," Mr Assange said told the BBC earlier -this year. -</code></pre> - -<p>Fonte: <a href="http://www.bbc.co.uk/news/world-11047811">http://www.bbc.co.uk/news/world-11047811</a></p> - -<p>Possíveis montagens: anel, estrela, rizomática, etc. Frontends e backends.</p> - - -</div> -<div class='slide '> -<h1 id="parte-5-o-processo-hidra-saravento">Parte 5: O Processo Hidra Saravento</h1><ol> - <li> - <p>Apresenta Padrão Saravá (Sarava Pattern, <a href="http://padrao.sarava.org">http://padrao.sarava.org</a>).</p> - </li> - <li> - <p>Utiliza Resource Sharing Protocol (RSP, <a href="http://rsp.sarava.org">http://rsp.sarava.org</a>).</p> - </li> - <li> - <p>Considerando a adoção de padrões definidos de política de segurança e privacidade.</p> - </li> - <li> - <p>Organiza-se de acordo com protocolos (<a href="http://protocolos.sarava.org">http://protocolos.sarava.org</a>).</p> - </li> -</ol> - -<p>Na Hidra Saraventa, cada célula é chamada de “nodo”:</p> - -<ul> - <li> - <p>Nodos físicos com servidores virtuais com fins específicos.</p> - </li> - <li> - <p>Nodos virtuais em diversos locais (inclusive hospedados por terceiros).</p> - </li> -</ul> - -<p>Baseada no seguinte pricípio: quais problemas solucionaremos, quais não.</p> - - -</div> -<div class='slide '> -<h1 id="o-padro-sarav">O Padrão Saravá</h1><p>O Padrão Saravá é uma sistematização de configuração de servidores, gerenciadores de conteúdo e aplicações diversas usados pelo Grupo Saravá. O padrão foi desenvolvido para:</p> - -<ul> - <li> - <p>Ter controle dos pacotes utilizados, arquivos de configuração e serviços em uso.</p> - </li> - <li> - <p>Uniformidade de administração.</p> - </li> - <li> - <p>Sistema de gerenciamento de backups comum para que as máquinas de um projeto possam trocar dados.</p> - </li> - <li> - <p>Que um servidor seja configurado apenas uma vez e que suas configurações possam ser aproveitados para outras máquinas.</p> - </li> - <li> - <p>Que sites e serviços sejam armazenados de maneira regular para facilitar atualizações e migrações.</p> - </li> - <li> - <p>Manter projetos e serviços isolados uns dos outros através de servidores virtuais.</p> - </li> - <li> - <p>Tornar a instalação dos servidores facilmente replicável.</p> - </li> -</ul> - -<p>Dinâmica de desenvolvimento:</p> - -<pre><code>Documentação wiki -> Configurações pré-gravadas -> Software -</code></pre> - - -</div> -<div class='slide '> -<h1 id="puppet">Puppet</h1><p><img src="http://docs.reductivelabs.com/images/Puppet_Star.png" alt="Puppet: topologia" /> -<img src="http://www.puppetlabs.com/images/system_diagram.png" alt="Puppet: diagrama de sistema" /></p> - - -</div> -<div class='slide '> -<h1 id="puppet-compartilhando-configurao">Puppet: compartilhando configuração</h1><p>Código puppet:</p> - -<pre><code>file { '/etc/passwd': - owner => root, - group => root, - mode => 644, -} -</code></pre> - -<p>Módulos compartilhados:</p> - -<ul> - <li> - <p><a href="http://git.sarava.org">http://git.sarava.org</a></p> - </li> - <li> - <p><a href="https://labs.riseup.net/code/projects/sharedpuppetmodules">https://labs.riseup.net/code/projects/sharedpuppetmodules</a></p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="git-e-gitosis">Git e gitosis</h1><p><img src="http://hoth.entp.com/output/scm.png" alt="VCS" /> -<img src="http://hoth.entp.com/output/dscm.png" alt="VCS distribuído" /></p> - - -</div> -<div class='slide '> -<h1 id="o-protocolo-de-compartilhamento-de-recursos">O Protocolo de Compartilhamento de Recursos</h1><pre><code>"The Resource Sharing Protocol (RSP) is a set of metadata intended to help free -software groups - - * Share their available resources and also Find groups that can host - * services for them given their needs and requirements. - -The RSP splits each resource in a layer or set of service layers. You can think -of service layers something very general, ranging from servers, databases, -websites. If you need to, you can even consider stuff such as tables and -bicycles as layers that provide some kind of service to a hosted group. ;)" - --- http://rsp.sarava.org -</code></pre> - - -</div> -<div class='slide '> -<h1 id="orquestrao">Orquestração</h1><p>Para complementar a Configuração de sistemas padronizada e centralizada, procedimentos como</p> - -<ol> - <li>Atualização de pacotes.</li> - <li>Atualização de código de gerenciadores de conteúdo.</li> - <li>Carga de bancos de dados. </li> -</ol> - -<p>podem ser codificados de forma a serem facilmente aplicados a múltiplas camadas de forma simultânea.</p> - -<p>Exemplos:</p> - -<ul> - <li><a href="https://git.sarava.org/?p=hydra.git;a=summary">https://git.sarava.org/?p=hydra.git;a=summary</a></li> - <li><a href="http://www.capify.org">http://www.capify.org</a></li> - <li><a href="http://marionette-collective.org">http://marionette-collective.org</a></li> - <li><a href="https://fedorahosted.org/func">https://fedorahosted.org/func</a></li> - <li><a href="http://fabfile.org">http://fabfile.org</a></li> - <li><a href="http://www.debian-administration.org/article/Automating_ssh_and_scp_across_multiple_hosts">http://www.debian-administration.org/article/Automating_ssh_and_scp_across_multiple_hosts</a></li> -</ul> - - -</div> -<div class='slide '> -<h1 id="ikiwiki">Ikiwiki</h1><p>O Ikiwiki (<a href="http://ikiwiki.info">http://ikiwiki.info</a>) é um software de wiki que usa um sistema de controle de versão e arquivos de texto, possibilitando:</p> - -<ol> - <li>A existência de múltiplas cópias integrais do wiki (online e offline).</li> - <li>Desenvolvimento distribuído de documentação.</li> -</ol> - -<p>O ikiwiki é muito útil para reunir documentação de sistemas, já que não necessita de nenhum sistema web funcional para abrigá-la.</p> - - -</div> -<div class='slide '> -<h1 id="virtualizao">Virtualização</h1><p>Virtualização através de Linux-VServer (existem outras implementações possíveis):</p> - -<ul> - <li><a href="http://www.linux-vserver.org">http://www.linux-vserver.org</a></li> - <li><a href="http://slack.sarava.org/vservers">http://slack.sarava.org/vservers</a></li> -</ul> - -<p>Principais vantagens:</p> - -<ul> - <li> - <p>Permite diversos grupos compartilharem uma mesma máquina presevando sua autonomia.</p> - </li> - <li> - <p>Grupos podem hospedar mutuamente instâncias virtuais. Exemplo: se existem 5 grupos com uma máquina cada um, se cada um deles hospedar um vserver para cada grupo, teremos 4 locais remotos de hospedagem por grupo, aumentando assim as possibilidades de salvaguarda e escalabilidade.</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="keyringer-e-monkeysphere">Keyringer e monkeysphere</h1><p>O Keyringer (<a href="http://git.sarava.org/?p=keyringer.git;a=summary">http://git.sarava.org/?p=keyringer.git;a=summary</a>) é um repositório distribuído de senhas/chaves baseado em GPG e git.</p> - -<p>O monkeysphere (<a href="http://web.monkeysphere.info">http://web.monkeysphere.info</a>) é um programa que permite a verificação de hosts SSH e usuários/as através da Teia de Confiabilidade do OpenPGP. Com ele, o gerenciamento de fingerprints fica mais fácil e evita que páginas como esta centralizem informações que possam se desatualizar. </p> - - -</div> -<div class='slide '> -<h1 id="tecnologia-bootless">Tecnologia bootless</h1><p>Muitos esquemas de criptografia em disco se baseiam na proteção das partições de dadados e da área de troca, porém dependem da existência de ao menos uma partição de inicialização com as imagens do sistema e de um setor de inicialização.</p> - -<p>Com acesso físico à máquina, é possível infectar tais dados de inicialização e comprometer a criptografia de todo o sistema.</p> - -<p>Para mitigar a situação, o esquema Bootless é um repositório git que contém as imagens de inicialização e a configuração necessárias para o procedimento de partida.</p> - -<p>Assim, é possível manter a parte de inicialização fora da máquina, por exemplo em chaveiros USB.</p> - -<p>Projeto similar: <a href="http://lfde.org">http://lfde.org</a></p> - - -</div> -<div class='slide '> -<h1 id="monitoramento-nagios">Monitoramento: nagios</h1><div class="centered"> - <p><img src="http://nagios.sourceforge.net/images/screens/new/statusmap-circular.png" alt="Nagios" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="monitoramento-munin">Monitoramento: munin</h1><div class="centered"> - <p><img src="http://upload.wikimedia.org/wikipedia/commons/c/ce/Munin-memory-week.png" alt="Munin" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="backups">Backups</h1><p>Estratégia:</p> - -<ol> - <li>Backups locais criptografados com duplicity: - <ul> - <li>Incluindo apenas <code>/etc</code>, <code>/var</code>, <code>/home</code>.</li> - <li>Excluindo logs, cache e backups remotos.</li> - </ul> - </li> - <li>Backups remotos apenas do backup local em duplicity, via rdiff ou rsync.</li> - <li>Nodos designados para armazenamento de backups.</li> - <li>Incrementos locais e remotos para aumentar consistência dos dados.</li> - <li>Procedimento integrado de restore e ativação de nodo.</li> -</ol> - - -</div> -<div class='slide '> -<h1 id="hardware-e-custos">Hardware e custos</h1><ul> - <li>Servidor mini-ITX Atom dual core + 2GB RAM + 1TB: R$680.00.</li> - <li>Nobreaks APC: +/- R$500,00.</li> - <li>Banda larga ADSL/cabo: R$80,00 a R$200,00.</li> - <li>Energia: 180W (mini-ITX) máx.</li> - <li>Sistema pode ser instalado inclusive em memórias de estado sólido (microSD por exemplo).</li> -</ul> - -<div class="centered"> - <p><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Mini-itx-motherboard.jpg/800px-Mini-itx-motherboard.jpg" alt="Mini ITX" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="utilidades-adaptador-para-discos">Utilidades: adaptador para discos</h1><div class="centered"> - <p><img src="http://www.sataadapter.com/sata-to-usb-adapter-cable-for-windows-and-mac.jpg" alt="Adaptador SATA" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="utilidades-chave-de-entropia">Utilidades: chave de entropia</h1><p><img src="http://www.entropykey.co.uk/res/device.jpeg" alt="Entropy key" /> -<img src="http://www.entropykey.co.uk/res/entropy-trite-small-nq8.png" alt="Entropy graph" /></p> - - -</div> -<div class='slide '> -<h1 id="segurana">Segurança</h1><p>Acesso remoto:</p> - -<ul> - <li> - <p>Contas SSH administrativas em todos os nodos.</p> - </li> - <li> - <p>Contas SSH de backup para nodos de backup.</p> - </li> - <li> - <p>Contas SSH de tunelamento para nodos diversos.</p> - </li> -</ul> - -<p>Análise:</p> - -<ol> - <li> - <p>É importante isolar o máximo a capacidade de acesso para contas de nodos de backup ou que tunelem conexões.</p> - </li> - <li> - <p>Administradores/as precisam ter boas medidas de segurança:</p> - <ul> - <li>Pasta criptografada.</li> - <li>Senhas e chaves seguras.</li> - </ul> - </li> -</ol> - - -</div> -<div class='slide '> -<h1 id="protocolos-sociais">Protocolos sociais</h1><ul> - <li>Protocolo de Ação Coletiva: <a href="http://protocolos.sarava.org">http://protocolos.sarava.org</a>.</li> - <li>Outros protocolos e metodologias (contabilidade, acesso à informação, relação com grupos, etc).</li> - <li> - <p>Uso de um sistema de gestão de processos (trac ou similar).</p> - - <pre><code> .------------------->-----------------. - / .----------<--------------<-------. \ - | ' \ \ - | | .------>-----. \ \ - | | | \ \ \ - Proposta -----> Discussão ->--. \ \ \ - | ^ | \ \ \ \ - | | | \ \ \ \ - | `----<-----' | \ \ \ - | | | \ \ - `------>------ Decisão --<--' | \ \ - | | | \ \ - | | | | | - Atribuição de --<---' '---> Arquivamento --->---' ; - Responsabilidades ----->-------' ^ \ / - ^ | ___________/ `---<-----' - | \ .' - | `--> Realização -->--. - | | | \ - | | | / - `----<-----' `-----<---' -</code></pre> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="resumo-estratgia-de-gesto">Resumo: Estratégia de gestão</h1><ul> - <li> - <p>Facilitar instalação, manutenção e gestão de dados.</p> - </li> - <li> - <p>Manter backups em máquinas prontas para serem inicializadas.</p> - </li> - <li> - <p>Manter nodos master prontos para assumirem o posto de “cabeça ativa”.</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="parte-6-a-confederao-das-hidras-unidas">Parte 6: A Confederação das Hidras Unidas</h1><div class="centered"> - <p><img src="http://apod.nasa.gov/apod/image/0104/hydra_aat116.jpg" alt="Hidra Cluster" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="a-confederao-das-hidras-unidas">A Confederação das Hidras Unidas</h1><ul> - <li> - <p>Hidra é um processo, não uma tecnologia, implementação, sistema ou serviço.</p> - </li> - <li> - <p>Assim, é possível ter hidras menos sistematizadas e com diferentes formas de organização. O processo já ocorre em vários locais.</p> - </li> - <li> - <p>Havendo várias hidras, se elas se integram passa a existir a Confederação das Hidras Unidas.</p> - </li> - <li> - <p>Importante questão do licenciamento: AGPL 3.0 para garantir o máximo possível da disponibilização de código e documentação.</p> - </li> - <li> - <p>Não é estritamente necessária a criação de uma “confederação”, já que a cultura de hidras pode ser não-coordenada.</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="parte-7-nuvens-e-hidras">Parte 7: Nuvens e Hidras</h1><p>Hidras são nuvens (cloud computing)?</p> - -<ul> - <li> - <p>Cloud computing foca apenas nas instâncias e como estas são integradas por aplicações (IaaS, SaaS, PaaS) e no seu uso sob demanda.</p> - </li> - <li> - <p>Cloud computing é uma iniciativa do mercado e uma tendência à terceirização total das atividades.</p> - </li> - <li> - <p>A Hidra leva em consideração a organização social que suporta a infraestrutura computacional.</p> - </li> - <li> - <p>A Hidra é uma nuvem na qual certos nodos desempenham papéis determinados, porém contendo o germe de toda a organização.</p> - </li> - <li> - <p>Outra classe de nuvens: botnets.</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="nuvens-diagramas">Nuvens: diagramas</h1><p><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/3/3a/Cloud_Computing_Stack.svg/340px-Cloud_Computing_Stack.svg.png" alt="Camadas" /> -<img src="http://upload.wikimedia.org/wikipedia/commons/thumb/7/79/CloudComputingSampleArchitecture.svg/550px-CloudComputingSampleArchitecture.svg.png" alt="Arquitetura" /></p> - - -</div> -<div class='slide '> -<h1 id="tipos-de-nuvens">Tipos de nuvens</h1><div class="centered"> - <p><img src="http://upload.wikimedia.org/wikipedia/commons/thumb/8/87/Cloud_computing_types.svg/800px-Cloud_computing_types.svg.png" alt="Tipos de nuvens" /></p> -</div> - - -</div> -<div class='slide '> -<h1 id="parte-8-futuro">Parte 8: Futuro</h1><ul> - <li>Hidra Saraventa: ainda em intenso desenvolvimento, porém já em estágio maduro. Falta (em agosto/2010): - <ul> - <li>Melhoria no procedimento de bootstrap.</li> - <li>Integração com DNS.</li> - <li>Sistema de proxy para balanceamento de carga.</li> - <li>Melhoria de procedimentos de sunsetting de sítios, plataformas e contas.</li> - <li>Longuíssimo prazo, caso realizável: possibilidade de um nodo ser convertido de uma classe para outra.</li> - <li>Procedimentos para suporte jurídico.</li> - <li>Nodos em conexões DSL e cabo: IP dinâmico, DNS reverso, etc.</li> - <li>VPN entre os nodos, Puppet Dashboard?, External node tool?</li> - <li>Migrar para Linux Containers (lxc).</li> - <li>Melhoria da documentação e representações gráficas do processo.</li> - <li>Storage de dados distribuído.</li> - </ul> - </li> - <li>Hidras via Rádio.</li> - <li>Hidras em outros tipos de organizações sociais.</li> -</ul> - - -</div> -<div class='slide '> -<h1 id="parte-9-concluses">Parte 9: Conclusões</h1><ul> - <li> - <p>Resolver a replicação e escalabilidade primeiro na infraestrutura (máquinas, configurações e backups), depois nas camadas superiores (CMSs, por exemplo)</p> - </li> - <li> - <p>Não importa tanto se a rede é centralizada, descentralizada ou distribuída se antes de tudo ela for regenerativa. No entanto, em geral são as redes distribuídas e descentralizadas que possuem fatores de regeneração maiores do que no caso centralizado.</p> - </li> - <li> - <p>Número grande de máquinas é interessante: várias podem estar sem funcionar num dado momento, mas as que estiverem funcionando podem dar conta da demanda.</p> - </li> - <li> - <p>A hidra é indestrutível? Essa questão faz sentido? Positivismo, revoluções e cataclismas: o limite da hidra por ter uma relação e abertura e fechamento (autonomia dependente).</p> - </li> -</ul> - - -</div> -<div class='slide '> -<h1 id="parte-10-referncias">Parte 10: Referências</h1></div> -<div class='slide '> -<h1 id="referncias-imagens-usadas">Referências: imagens usadas</h1><ul> - <li><a href="http://en.wikipedia.org/wiki/File:Hydra_04.jpg">http://en.wikipedia.org/wiki/File:Hydra_04.jpg</a></li> - <li><a href="http://en.wikipedia.org/wiki/File:Hydra001.jpg">http://en.wikipedia.org/wiki/File:Hydra001.jpg</a></li> - <li><a href="http://code.google.com/edu/parallel/dsd-tutorial.html">http://code.google.com/edu/parallel/dsd-tutorial.html</a></li> - <li><a href="http://en.wikipedia.org/wiki/File:DNS_in_the_real_world.svg">http://en.wikipedia.org/wiki/File:DNS_in_the_real_world.svg</a></li> - <li><a href="http://www.linux.org/docs/ldp/howto/Jabber-Server-Farming-HOWTO/c2sfarm.html">http://www.linux.org/docs/ldp/howto/Jabber-Server-Farming-HOWTO/c2sfarm.html</a></li> - <li><a href="http://www.autistici.org/orangebook/slides/orangebook.en.html">http://www.autistici.org/orangebook/slides/orangebook.en.html</a>.</li> - <li><a href="http://www.autistici.org/orangebook/slides/orangebook.en.html">http://www.autistici.org/orangebook/slides/orangebook.en.html</a></li> - <li><a href="http://perl.apache.org/docs/tutorials/apps/scale_etoys/machine_layout.png">http://perl.apache.org/docs/tutorials/apps/scale_etoys/machine_layout.png</a></li> - <li><a href="http://en.wikipedia.org/wiki/File:ICEgrid.png">http://en.wikipedia.org/wiki/File:ICEgrid.png</a></li> - <li><a href="http://www.ibiblio.org/pioneers/baran.html">http://www.ibiblio.org/pioneers/baran.html</a></li> - <li><a href="http://www1.folha.uol.com.br/folha/ciencia/ult306u442499.shtml">http://www1.folha.uol.com.br/folha/ciencia/ult306u442499.shtml</a></li> - <li><a href="http://www.tutorvista.com/content/biology/biology-iv/growth-regeneration-ageing/regeneration.php">http://www.tutorvista.com/content/biology/biology-iv/growth-regeneration-ageing/regeneration.php</a></li> - <li><a href="http://www.uni-kiel.de/zoologie/bosch/developmentalbiology.html">http://www.uni-kiel.de/zoologie/bosch/developmentalbiology.html</a></li> - <li><a href="http://www.uni-kiel.de/zoologie/bosch/developmentalbiology.html">http://www.uni-kiel.de/zoologie/bosch/developmentalbiology.html</a></li> - <li><a href="http://www.puppetlabs.com/puppet/introduction">http://www.puppetlabs.com/puppet/introduction</a></li> - <li><a href="http://docs.reductivelabs.com/guides/introduction.html">http://docs.reductivelabs.com/guides/introduction.html</a></li> - <li><a href="http://www.nagios.org/about/screenshots">http://www.nagios.org/about/screenshots</a></li> - <li><a href="http://en.wikipedia.org/wiki/File:Munin-memory-week.png">http://en.wikipedia.org/wiki/File:Munin-memory-week.png</a></li> - <li><a href="http://hoth.entp.com/output/git_for_designers.html">http://hoth.entp.com/output/git_for_designers.html</a></li> - <li><a href="http://en.wikipedia.org/wiki/Mini-itx">http://en.wikipedia.org/wiki/Mini-itx</a></li> - <li><a href="http://www.sataadapter.com">http://www.sataadapter.com</a></li> - <li><a href="http://www.entropykey.co.uk">http://www.entropykey.co.uk</a></li> - <li><a href="http://apod.nasa.gov/apod/ap010416.html">http://apod.nasa.gov/apod/ap010416.html</a></li> - <li><a href="http://en.wikipedia.org/wiki/File:Cloud_Computing_Stack.svg">http://en.wikipedia.org/wiki/File:Cloud_Computing_Stack.svg</a></li> - <li><a href="http://en.wikipedia.org/wiki/File:CloudComputingSampleArchitecture.svg">http://en.wikipedia.org/wiki/File:CloudComputingSampleArchitecture.svg</a></li> - <li><a href="http://en.wikipedia.org/wiki/File:Cloud_computing_types.svg">http://en.wikipedia.org/wiki/File:Cloud_computing_types.svg</a></li> -</ul> -</div> - - - </div> <!-- presentation --> -</body> -</html> - |