ies gf - ciência da computação - desenvolvimento de sistemas distribuídos - parte 2 cluster...
TRANSCRIPT
Desenvolvimento de Sistemas Distribuídos
Prof. Ramon Mayor Martins , M.Sc. Eng.
Parte 2
São José – 2015 – 2
Instituto de Ensino Superior da Grande Florianópolis
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
Projetos e Experimentos com Clusters:
• 1 – Análise e Experimentação de Clusters Instantâneos• Distribuições• Ferramenta de análise• Sugestão de Benchmarking
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Clusters Instantâneos (Flash mob computing)
Utilizando Live-CDs com as distribuições pode-se fazer estudos para saber como funcionam os Sistemas Operacionais com Funções de Cluster.
Autoconfiguração, agregador automático, baseados em sua maioria no kernel OpenMosix
As principais distribuições a serem analisadas são:
• ClusterKnoppix• Quantian• CHAOS• PlumpOS• eucaristOS• BCCD• PelicanHPC
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: ClusterKnoppix
Desenvolvedor: Wim VandersmissenBaseado na distribuição: Linux Knoppix/ Debian (distribuição modificada utilizando kernel openmosix)Kernel: OpenMOSIXA distribuição possui um sistema de autoconfiguração onde computadores rodando o ClusterKnoppix são agregados automaticamente.funciona como um terminal server para máquinas clientes com boot remoto pela rede. Início do projeto: 2003Projeto: Descontinuado Download ISO: http://mmc.geofisica.unam.mx/Replicas/knoppix/Cluster/
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: ClusterKnoppix
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: Quantian
Desenvolvedor: Dirk EddelbuettelBaseado na distribuição: Linux Knoppix (distribuição modificada utilizando kernel openmosix)Kernel: OpenMOSIXExtensão da distribuição Knoppix e clusterKnoppix Para fins científicos (Scientific Computing Environment).Ideal para Linguagem R (Mineração, Estatística) e Simulações Matemática (Octave) Ambiente auto-configurávelInício do Projeto: 2006Ultima versão: 7.9.2Site do projeto: http://dirk.eddelbuettel.com/quantian.html Download ISO: http://quantian.alioth.debian.org
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: Quantian
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: Chaos
Desenvolvedor: Midnight Code / Ian Latter / Universidade de McQuarie.Baseado na distribuição: própriaKernel: OpenMOSIXFinalidade: Primeiro cluster Linux voltado para aumentar a segurança da rede.Pequeno tamanho: 6 Mb – wallet clusterInício do Projeto: 2003 – como ferramenta para grupo de segurança de TI da Ultima versão: 1.5Site do projeto: http://midnightcode.org/projects/chaos/Download ISO: http://midnightcode.org/projects/chaos/Documento: http://www.midnightcode.org/papers/How%20To%20-%20Heterogeneous%20Clusters.pdf
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: PlumpOS
Desenvolvedor: Peter Willis / projeto experimental.Baseado na distribuição: OpenMosixFinalidade: estudos iniciais em cluster.Se você quiser um sem frescuras openMosix CD inicializável para adicionar instantaneamente os nós para o cluster existente, PlumpOS é tão bom uma opção como qualquer outro.Início do Projeto: 2004 / Finalizado: 2008Ultima versão: 2.9Site do projeto: http://plumpos.sourceforge.net/index.htmlDownload ISO: http://sourceforge.net/projects/plumpos/files/PlumpOS/7.0-pre2/
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: eucaristOS
Desenvolvedor: Simone VelleiBaseado na distribuição: OpenMosixFinalidade: experimental para rodar em Hardware ObsoletoSpontaneous OpenMosixInício do Projeto: 2003 / Finalizado: 2004Ultima versão: 0.0.4Site do projeto: http://eucaristos.sourceforge.net/index.htmlDownload ISO: http://eucaristos.sourceforge.net/download.html
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: BCCD – Bootable Cluster CD
Desenvolvedor: Paul Gray / Universidade de Northern IowaBaseado na distribuição: própriaKernel: OpenMOSIXFinalidade: Focado em educação/introdução a clusters - computação de alto desempenho (HPC)Início do Projeto: 2014Ultima versão: 3.3.3 64-bitSite do projeto: http://bccd.netDownload ISO: http://bccd.net/downloadsDocumentação: http://bccd.net/wiki/index.php/Main_Page
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: PelicanHPC GNU Linux
Desenvolvedor: Heilbronn University (Alemanha)Baseado na distribuição: DebianFinalidade: computação de alto desempenho (HPC) – permite que faça uso de computação paralela MPI (Message Passing Interface - padrão de comunicação entre os nós). Início do Projeto: 2013Ultima versão: 2.9Site do projeto: http://pelicanhpc.awict.netDownload ISO: https://download.mi.hs-heilbronn.de/pelicanhpc/*Interesses acadêmicos.
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Distro: PelicanHPC GNU Linux
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
Projetos e Experimentos com Clusters:
• 1 – Análise e Experimentação de Clusters Instantâneos• Distribuições• Ferramenta de análise• Sugestão de Benchmarking
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas: openMosixview
GUI de gerenciamento de cluster para cluster openMosix:Contem 8 aplicações úteis para monitorar e administrar cluster openMosix
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixview -> o principal aplicativo de monitoramento + admistraçãoopenMosixprocs -> um process-box para o gerenciamento de processosopenMosixcollector -> registro de informações de nós no clusteropenMosixanalyzer -> Analise os dados recolhidos pela openMosixcollectoropenMosixhistory -> historico para o clusteropenMosixmigmon -> para a migração de processoopenMosixpidlog -> para monitorar processos individuais3dmosmon -> vista 3D para monitorar o cluster
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixview ->
o principal aplicativo de monitoramento + admistração
Uma das características é influenciar no balanceamento de carga
Pode manipular os recursos requisitados e utilizados em cada nó
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixview ->
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixprocs -> um process-box para o gerenciamento de processos
Gestão dos processos em execuçãono cluster
Essa ferramenta deve ser instalada em cada nó do cluster (Ex: nó 4)
Da uma visão geral do que está sendoexecutado.
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixcollector -> registro de informações de nós no cluster
É criado arquivos de log de informações de carga e memória para cada nó.
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixanalyzer -> Analise os dados recolhidos pela openMosixcollector
Análise do log de cargaLinhas vermelhas representa a cargaProvê informações estatísticas
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixanalyzer -> Analise os dados recolhidos pela openMosixcollector
Informações estatísticas sobre um nó do clusterPode comparar valores de carga em um determinado momento.
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixanalyzer -> Analise os dados recolhidos pela openMosixcollector
Visão geral de memóriaSimilar ao gráfico de carga, só que para memóriaA Linha azul significa pontos de controle
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
openMosixmigmon ->
Monitora as migração de processosCada processo tem um PIDÉ possível arrastar os processos para outros nós(drag’n gota)
A linha significa a migração.Verde o processo atual (possível obterInformação sobre ele).
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas:
openMosixview
3dmosmon -> vista 3D para monitorar o cluster
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Ferramentas: Sistema Painel de Controle Gráficos InterWorx
Gerenciar clusters de servidor, também fornece uma grande quantidade de feedback e dados sobre o seu desempenho e utilização.
Cada sistema executando inclui um conjunto de gráficos de desempenho
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
Projetos e Experimentos com Clusters:
• 1 – Análise e Experimentação de Clusters Instantâneos• Distribuições• Ferramenta de análise• Sugestão de Benchmarking
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Benchmarking
Programas/Testes padrões
Benchmarking é um aspecto extremamente importante de gerir adequadamente e configurar clusters de computadores e servidores.
O conhecimento sobre como o cluster está realizando processos fornece a base de quaisquer ajustes e reconfigurações futuras.
É também muito útil para saber exatamente o que um cluster é capaz.
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Benchmarking
Sugestão:Renderização de imagens: Software Povray (chess2.pov)http://www.unifafibe.com.br/revistasonline/arquivos/revistafafibeonline/sumario/11/19042010141539.pdf
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Benchmarking
Sugestão:Renderização de imagens:
Software Povray (chess2.pov)
Desenvolvimento de Sistemas Distribuídos
1- INTRODUÇÂO
• 1 – Experimentação de Clusters Instantâneos
Benchmarking
Sugestão:Multiplicação de matrizes (Octave)