Instalaçãode Clusters. Ettore Enrico Delfino Ligorio USP/STI/Internuvem ettore@usp.br Março -2016



Documentos relacionados
Oracle Grid Engine. Thiago Marques Soares. Pós-Graduação em Modelagem Computacional Universidade Federal de Juiz de Fora. 8 de abril de 2015

João Marcelo Uchôa de Alencar

Computação de Alto Desempenho uma pequena introdução

Supercomputadores dominavam o mercado

Computação Distribuída de Alto Desempenho. Marcelo Giovani M Souza mgm@cbpf.br

Introdução às arquiteturas paralelas e taxonomia de Flynn

Arquitetura NUMA 1. Daniel de Angelis Cordeiro. INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França

} Monolíticas Aplicações em um computador centralizado. } Em Rede Aplicações com comunicação em rede. } Distribuídas Comunicação e cooperação em rede

Sistemas Paralelos e Distribuídos. Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN

CCE Internet Data Center

Computação de Alta Perfomance com Software Livre (Clusters)

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar

Projetos I Resumo de TCC. Luiz Rogério Batista De Pieri Mat:

slide 0 Algoritmos Paralelos

Sistemas Operacionais

Resumo. Introdução Cluster Cluster Beowulf Curiosidades Conclução

SISTEMAS DISTRIBUÍDOS

...de forma confiável, consistente, económica. Permite- nos acesso a grandes capacidades. Infra-estrutura de hardware e software

Desenvolvimento de Programas Paralelos para Máquinas NUMA: Conceitos e Ferramentas

Apresentação dos Serviços para Processamento de Dados de Alto Desempenho disponibilizados pela InterNuvem

Sidney Pio de Campos 09/02/2015

Capítulo 8 Arquitetura de Computadores Paralelos

Manual de Acesso ao Sistema e Guia de Utilização do Sun Grid Engine (SGE)

Real Application Cluster (RAC)

Análise de Big Data Streams

EUCALYPTUS: UMA PLATAFORMA CLOUD COMPUTING PARA

Estratégia de Implantação do GridUNESP. II Brazilian LHC Computing Workshop - GridUNESP

COMPUTAÇÃO PARALELA. uma visão geral. Guilherme Galante. v.2.0

Desempenho de um Cluster Virtualizado em Relação a um Cluster Convencional Similar

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES. Prof. Dr. Daniel Caetano

CASE STUDY FOR RUNNING HPC APPLICATIONS IN PUBLIC CLOUDS

SISTEMAS OPERACIONAIS

Tipos de Sistemas Distribuídos (Cluster e Grid)

Processamento Paralelo

Classificação de SO (Sistemas Operacionais) Técnico de Informática 2º. Módulo Profa. Madalena Pereira da Silva

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa

SEGURANÇA DE REDE DE COMPUTADORES E SEGURANÇA E AUDITORIA DE SISTEMAS

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

A Evolução dos Clusters frente as demais arquiteturas de Alto Desempenho

Otimização de recursos de TI

Gerência de Redes de Computadores. 05 Gerência de Hospedeiros (Hosts)

Supercomputação. Simplificada.

The Eucalyptus Open- source Cloud-computing System. Janaina Siqueira Lara Wilpert Marcelo Scheidt Renata Silva

O Cluster SGI Altix: Guia do Usuário

Sistemas MIMD. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

SISTEMA DE ARMAZENAMENTO (STORAGE)

Cluster HPC High Performance Computing.

Prof.: Roberto Franciscatto. Capítulo 1 Introdução

Estudo de Caso II: LINUX

Infra-Estrutura de Software. Introdução. (cont.)

Gerenciamento de sistemas GNU/Linux: do computador pessoal à rede corporativa

The Eucalyptus Open-source Cloud-computing System

Symmetric Multiprocessing Simultaneous Multithreading Paralelismo ao nível dos dados

Introdução à Computação: Sistemas de Computação

Sistemas Operacionais

Benefícios e processos relacionados à migração e servidores dedicados para cloud servers. Juliano Simões. Diretor de Tecnologia

Introdução a Computação 07 Sistemas operacionais. Márcio Daniel Puntel marcio.puntel@ulbra.edu.br

Cluster Computing: Estudo de Caso no LCCV/CTEC

Processamento Distribuído em Cluster do Tipo Beowulf

Introdução a Computação Paralela e a Montagem de Clusters.

Otimização de Desempenho e Escalabildade do Sistema Falibras-Web com o uso de Grid Computing

Centro Nacional de Processamento de Alto Desempenho em São Paulo

Ricardo Gonçalves 2013/2014. Arquitecturas Multicore

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração:

Professor: Gládston Duarte

O que é Grid Computing

Processos e Threads (partes I e II)

ESCOLA SUPERIOR ABERTA DO BRASIL ESAB CURSO DE ESPECIALIZAÇÃO EM REDES DE COMPUTADORES DANIEL VAHID LIMA TOLOUEI

A.S.P. Servidores Windows

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro

Sistemas Distribuídos Conceitos HW e SW. Edeyson Andrade Gomes

Projeto e Instalação de Servidores Introdução a Servidores

SOLUÇÕES PARA CONTINUIDADE DO NEGÓCIO

ONS ANALISA SOLUÇÃO DE CLOUD COMPUTING VISANDO AGILIZAÇÃO DE PROCESSOS E DIMINUIÇÃO DOS CUSTOS DO SISTEMA ELÉTRICO BRASILEIRO

COORDENAÇÃO DE TECNOLOGIA (COTEC) AGOSTO/2010

Prof. Rossano Pablo Pinto Dezembro/2012 Versão 0.2 (em construção) Prof. Rossano Pablo Pinto - 1

Impactos do Envelhecimento de Software no Desempenho dos Sistemas. Jean Carlos Teixeira de Araujo

Turno/Horário Noturno PROFESSOR : Salomão Dantas Soares AULA Apostila nº

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR

Introdução à Programação Paralela através de Padrões. Denise Stringhini Calebe Bianchini Luciano Silva

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

Sistemas Operacionais

Conteúdo 1 Comandos Básicos. Questão 1: Que comando permite encerrar o sistema definitivamente?

Nível do Sistema Operacional

Introdução aos Sistemas Operacionais

8 Threads. 8.1 Introdução

Oracle Enterprise Manager 10g Grid Control NOVO

Planejamento para Implantação do GridUnesp. II Workshop GridUnesp Outubro de 2006

ALGORÍTMOS PARALELOS LCAD. Neyval C. Reis Jr. OUTUBRO/2004. Laboratório de Computação de Alto Desempenho DI/UFES

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais

Na Terra ou nas Nuvens, onde fica o HPC?

Paralelização Introdução a vetorização, OpenMP e MPI

Maestro. Arthur Kazuo Tojo Costa Universidade Federal de São Carlos Campus Sorocaba Bacharelado em Ciência da Computação

Programação em LabVIEW Real- Time e LabVIEW FPGA

UTFPR - Sistemas Distribuídos Prof. Cesar Augusto Tacla. Anotações. Copyright Cesar Augusto Tacla

Paralelismo. Computadores de alto-desempenho são utilizados em diversas áreas:

Transcrição:

Instalaçãode Clusters Ettore Enrico Delfino Ligorio USP/STI/Internuvem ettore@usp.br Março -2016

Conceitos Elementos do StackHPC O que e cada elemento Funcionalidades Ferramentas Caso do HPC USP Sugestões para instalação OpenHPC Agenda

O que e cluster? Aglomerado de recursos computacionais funcionando de forma coordenada cooperando entre si para a resolução de um problema comum Não e GRID Não é nuvem

Classificação de Cluster Finalidade Computação Cientifica Inteligência de Negocio Mineração de Dados Big Data Oferta de Serviços de TIC Cloud Computing Engenharia Economia Tipo Alto Desempenho Alta Disponibilidade Balanceamento de Carga Configuração Centralizada

Clusters de HPC Science Computing Processamento Paralelo distribuído Beowulf Particionamentodo problema Processamento Serial

Termos Node CPU Task

Beowulf Node Mestre Frontend acesso Transefrência de arquivos Serviços Nodes Slaves Processamento I/O

Tipos de Processamento Flynn's taxonomy(multiprogramming context) Single instruction stream Multiple instruction streams Single program Multiple programs Single data stream SISD MISD Multiple data streams SIMD MIMD SPMD MPMD

Tipos de Processamento SIMD GPUs(vetorização) MIMD Memoria Compartilhada Memoria Distribuída SISD Von Neumann CPU Superescalar MISD Pipelines Fault Tolerance Computers

ArquitetureMPP Massive Parallel Processing Executar coordenadamente grupos de cálculos computacionais em paralelo Cluster de HPC com interconexão veloz Grids oportunistas Massively Parallel Processor Arrays (MPPAs) HPC e sistemas embarcados(video, Signal process, etc)

System Share Cluster e MPP Dominantes Fonte: http://top500.org

Capacidade Computacional pelo mundo Fonte: http://top500.org

MPI options MPICH2, MVAPICH2, Open MPI, Intel MPI Provisioning software Cobbler, Warewulf, xcat/ Platform HPC, Openstack, FAI Configuration management Warewulf, Puppet, Chef, Ansible, cfengine, SaltStack Resource and job schedulers Torque/PBS, OpenLava/Platform LSF, Maui/Moab, HTCondor, SLURM, Grid Engine/Son of Grid Engine, Univa, Oar Performance monitoring Ganglia, Nagios, Icinga Shared filesystems NFS, pnfs, Lustre, GPFS, PVFS2, GlusterFS Library/Enviroment Variables management Enviroment Modules, Lmod, EasyBuild Cluster management toolkits Rocks, Oscar, Scyld, Bright

Fonte: http://www.penguincomputing.com/products/software/cluster-management-scyld-clusterware/

http://www.hpcwire.com/2014/02/24/comprehensive-flexible-software-stack-hpc-clusters/

Sistema Operacional Kernel Otimizado Orquestra acesso ao HW Process Limpo Threads Especializado Gestão de pacotes Diskless ou Diskfull Yum Apt-get Comunidade HPC Yast2 Alternativas: RedHat Like, Debian Like e Suse Like

Fonte: http://top500.org

Comunicação PasswordLess SSH RSH RDMA (Infiniband) Interconexão Infiniband Ethernet Myrinet Quadrics (Elan Asic)

Interconexões Fonte: http://top500.org

Compiladores Gera os binários a partir do código fonte Flagsde otimização e debug Static e Shared libraries Strip,ldde nm Alternativas: GNU, Intel, Portland, etc

Bibliotecas Matemáticas Implementação confiável e performática de operações matemáticas frequentes Transformadas de Fourier, Sistemas Lineares, etc. Binário faz cálculos mais rápidos Base para compilação de outros softwares Alternativas: BLAS, cublas, ATLAS, FFTW, MKL, ACML, GSL, LAPACK, LibSci/Trilinos(Cray), NAG, PETSc, PSPLine, ScaLAPACK, SLEPc, SPRNG, TPSL, ESSL(IBM) Fonte: http://www.nersc.gov/users/software/programming-libraries/math-libraries/

Uso das GPU Cuda

Bibliotecas MPI Baseada em processos Troca de mensagens entre nodes de um cluster de processamento/ram distribuídos Flexibilidade, Portablidade e escalabilidade Personalizar arquivo de configuração do MPI e espalhá-lo entre os nodes Standard MPI-3 Alternativas: OpenMPI, MVAPHCH2 (internexões rápida - infiniband) e MPICH2

Mais simples Shared Memory Threads OpenMP Cada uma com um pedaço do problema

FilesystemGlobal Compartilhado Lustre predomina no top500 Alto desempenho I/O Evitar gargalos Visão consistente dos arquivos para todos os nodes Evita Stage-in/Stage-out Home e scratch Alternativas: Lustre, NFS, GPFS, GlusterFS, etc.

IO Paralelo Bibliotecas MPI-IO netcdf HDF5 Processo leem/escrevem pedaços diferentes do arquivo simultaneamente

Requisitos comuns de Libspara softwares HPC Softwares HPC complexos Math Libs MPI Libs I/O Libs

Provisionamento dos Nodes Padronização Imagem de S.O. Parâmetros de rede Configuração Stateless Statefull Alternativas: Warewulf/PERCEUS, xcat/ Platform HPC, FAI

Gerenciamento de Configuração Uniformização de atualizações Facilidade para administradores Observar detalhes de aplicação de configurações Alternativas: Warewulf, Puppet, Chef, Ansible, cfengine, SaltStack

Gestão de Variáveis de Ambiente e Bibliotecas Fundamental em ambientes HPC $LD_LIBRARY_PATH $PATH Altera binários e bibliotecas disponíveis Para CLI e JOBS. Coexistência harmônica de versões diferentes Alternativas: Environment Modules e Lmod

EnvironmentModules Definição do $MODULEPATH IF no /etc/bashrcpara carregar $MODULEPATH proveniente do SSH Enviar e receber variáveis /etc/ssh/sshd_config /etc/ssh/ssh_config

Escalonadores de Jobs e Recursos Visão Recursos Disponíveis Consumidos Reservado Solicitados Especificação de filas Controle Tempos limite Nodes alocados Distribuição de jobs Accouting Alternativas: Torque/PBS, OpenLava/Platform LSF, Maui/Moab, HTCondor, SLURM, Grid Engine/Son of Grid Engine, Univa, Oar

Interfaces de Trabalho Edição e submissão Jobs SSH/Shell Interface WEB Transferência de Arquivos SFTP Interface WEB GlobusOnline*

cgroups Nativo do Kernel Linux Limitação de recursos disponíveis para o job Cpu RAM O espaço em disco controlado por quotas tradicionais quando necessário

Performance Disponibilidade Agregado para cluster Monitoramento Alternativas: Ganglia, Nagios, Icinga, Zabbix, Cacti

Clusters HPC-USP Lince Águia

Setup de node Sysctl.conf Liberar alocação e uso de muita RAM /etc/profile Ulimite umask HISTSIZE Variáveis de ambiente /etc/bashrc /etc/secutity/limits.conf /etc/ssh/ssh_config Disable strict host key check Desativar firewall dos nodes

VNFS e bootstrap Stateless e Statefull Criação de nodes Provisionamento Gestão de arquivos de configuração Warewulf

Nodes Wwsh node servidor01 set --netdev=eth0 -- hwaddr=xx:xx:xx:xx:xx:xx Wwsh node servidor[01-20] set I 10.0.0.1

VNFS Mount t proc /proc /CHROOT/proc Mount t sys /sys /CHROOT/sys Mount t bind o loop /dev /CHROOT/dev Chroot/CHROOT Wwvnfs NOME_IMAGEM chroot=/chroot

BootStrape Provisionamento Wwbootstrap chroot=/chroot NOME_BOOTSTRAP Wwshprovisionset node0[1-6] vnfs=nome bootstrap=nome Wwsh provision set node0[2-5] fileadd=sshd_config

Torque Maui Qmgr Print server (qmgr c p s ) Maui.cnf Showconfig-v

Compiladores MKL Portal educativo Soluções da Intel

Ganglia

Analisando Jobs Operações com Jobs Analisando Nodes de Processamento Operações com nodes Visão de desempenho do Storage Operacaode Filas

qstat f JOB_ID Arquivos de saída job Erro Saída qpeek Análise de Jobs Aruivos de saída aplicativo

Qstat f Qstat na Sshe top Free Gráficos no Ganglia Análise de Nodes

Visão de Desempenho Linpack HPCC HPCC_fermi(CUDA)

Cputime Walltime Limites de jobs Limites de recursos Propriedades de Filas

Configurações de Escalonamento Fairshare Uso justo. Escolhe N intervalos de medição num período de tempo Atribui maior prioridade para quem usou menos no período Backfilling Verifica os tempos e os recursos solicitados por cada job. Analisa o tempo restante reservado pelo que já esta em execução. Encaixa jobsnesse tempo.

EKM -Ansys https://ekm.uspdigital.usp.br/ekm

http://www.beowulf.org/ http://warewulf.lbl.gov http://www.openhpc.community http://insidehpc.com/2012/09/free-download-hpc-for-dummies/ http://www.adaptivecomputing.com/products/open-source/torque/