computação distribuída de alto desempenhomesonpi.cat.cbpf.br/e2006/graduacao/pdf_g5/aula...
TRANSCRIPT
2
*Exemplos de Tipos Clusters
*O Cluster do CBPF
*Estudos futuros
3
*Cluster do CBPF
-Hardware-Sistema e ferramentas-Formas de acesso-Submissão de programas
e monitoramento...
4
*Estudos futuros
-Estudo de hardware-Compatibilidade com OS-Compatibilidade com “Gerente de
Filas”-Testes (desempenho e adequação
às necessidades do CBPF)
5
*Cluster de alta disponibilidade (99,999%...)
-Arranjos que implantan alguma espécie de redundância no sistema para manter um serviço rodando
-Heartbeat (dual), drdb (sinc), OpenHA, UltraMonkey
6
*Aplicações
-Pesquisa científica
-Servidores de email empresarial
-Servidores de administradores de cartão de crédito
-Servidores da Receita Federal...
7
*Cluster de migração
-A idéia é fazer uma avaliação do desempenho dos nós e migrar os processos que requerem mais recurso de máquina para os nós mais poderosos de forma transparente ao usuário
-Os nós mais poderosos estarão sempre em produção
8
-OpenMosix => vertente free do projeto “Mosix”
-Ferramenta de monitoramento
9
*Cluster de alta performance
-Beowulf =>Basicamente segue o esquema “Master”/“nós”
- O principal objetivo de um cluster beowulf é aumentar o podercomputacional e diminuir o tempo de execução de programas
10
*O Cluster do CBPF
-SSolar => Arranjo de computadores dedicado à computação científica
(mesonpi.cat.cbpf.br/ssolar)
-69 CPUs, mais de 60GB men, 3 bastidores
11
*O.S.
-RedHat e Scientific Linux, estavel, boa compatibilidade com pacotes prontos, maduro com SMP.
-Hardware-32bits e O.S. 32bits
12
*Sistemas (Ferramentas)
-Quota por usuário-Acesso aos nós “negado”-Acesso ao Master somente pela
rede do CBPF-Acesso externo via portal (positron)-Monitoramento pela web(http://ssolar.cat.cbpf.br)
13
*Disposição geográfica
Master
CATcaverna
Nós exclusivo do grupo de
Física Estatística
14
*Disposição de hardware
Master
Athlon MP 1800+
2 NúcleosAthlon MP 2800+
2 Núcleos
Xeon HT 3GH
2 Núcleos
4”CPUs
15
*Softwares
- gcc (compilador C)- g++ (compilador C++)- g77 / f77 (compiladores fortran)- MatLab- MPI (Lib para paralelismo)- Mathematica- Charm++
16
*Gerenciador de filas
-OpenPBS (Portable Batch System)Gerencia onde, quando e a prioridade de um “processo” de usuário que seráexecutado. Possui ferramentas para monitoramento dos “processos” e do cluster.
17
-Capaz de criar e gerenciar grupos distintos de usuários e máquinas
-Capaz de limitar o número de processos enviado por um usuário ou grupo.
-Capaz de limitar o número de CPUspor usuário, processo ou grupo.
18
*Funções básicas
-qstat => status dos jobs-qsub => submete um job-qdel => remove um job submetido-pbsnodes –a => lista os nós com
seus status e respectivos jobs
19
mgm@ssolar:~$ qstatJob id Name User Time Use S Queue---------------- ---------------- ---------------- -------- - -----29538.ssolar script.pbs hduser 383:45:4 R workq33695.ssolar matlab1 user4 383:41:1 R workq33696.ssolar matlab1 user4 383:30:5 R workq33709.ssolar matlab1 cara3 383:27:3 R workq35164.ssolar RsC_N cara 380:42:1 R workq36351.ssolar soff carol 195:00:1 R workq36352.ssolar sing fed 187:32:4 R stat36423.ssolar MyJob nelp 67:14:51 R workq36424.ssolar Stat_People nelp 67:13:51 R workq36425.ssolar Stat_People nelp 67:13:50 R workq36426.ssolar DesvP_People nelp 67:14:46 R workq36426.ssolar DesvP_People2 nelp 67:14:46 Q workq
20
*Script de submissão-No site e em /tmp
# Copie para sua área de trabalho e troque o nome se quiser # nome do job
#PBS -N nome_identificacao# numero de nos e cpus (sendo um programa serial: 1 1).....# nome do arquivo de saida
#PBS -o nome_saida#posiciona o ponteiro na area do usuario.....echo "Job started at `date`"
./nome_executávelecho "Job ended at `date`"
21
*Monitoramento-Acompanhamento online e em
RealTime pela página do ssolar(ssolar.cat.cbpf.br)
-Histórico geral do cluster e/ou dos grupos separadamente e de cada nós também online
22
23
*Próximo SSolar
-Com a popularização da arquitetura de 64bits surge anecessidade em um 1°momento de características mista em clusters.
-Possibilitar o envio de jobs 32/64bits para os nós corretos
24
*O.S. multiplos
-Mais estaveis em um hardware e/ou completo com pacotes e libs.
-O.S. diferentes podem facilitar a instalação em arquiteturas mistas
25
*Condor
-Distingui O.S., arquitetura, número de CPUs e outras características dos nós.
-Capaz de operar também em máquinas de usuários distinguindo momentos ociosos automaticamente
26
-Suporte a criação de grupos, suporta priorizar grupos, permite que o usuário priorize seus jobs, suporte a agendamento.
-Permite integrar multiplos operacionais e arquitetura
-Limitado à versões portadas pelo desenvolvedor
27
*Casamento Hardware/O.S.
-O O.S. deve ser robusto e estável o suficiente para permitir o trabalho do hardware ininterruptamente por meses e anos
-Bom suporte no kernel a SMP
28
*Casamento O.S./Gerenciados de filas
-O.S. deve permitir o trabalho correto e ininterrupto do gerenciador de filas
-Suportar desde seus recursos mais básicos de gerenciados de filas ao mais complexo
29
* 1° momento
Cluster 32bits
Cluster 64bits
Master32
Master64
30Cluster 32bits
Master64Gerenciando
todos os arranjos
(32/64bits)
* 2° momento
Cluster 64bits
Cluster 32bits
31
Agradecimentos a
Todos os participantes do curso de Computação Distribuída de Alto
Desempenho
Nilto Alves Jr.Marcelo Portes Albuquerque