Boletim CIRP - 07/13

Page 1

Boletim digital julho/2013

Centro de Informática de Ribeirão Preto

Nesta edição:

Cloud CIRP Cluster educacional - CIRP Cluster CIRP Crônicas da parte “Severina”


Expediente Universidade de São Paulo Reitor João Grandino Rodas Vice-Reitor Hélio Nogueira da Cruz Campus de Ribeirão Preto Prefeito do Campus Prof. Osvaldo Luiz Bezzon Superintendência de Tecnologia da Informação Superintendente Prof. Antonio Roque Dechen Centro de Informática de Ribeirão Preto Diretor Prof. Oswaldo Baffa Filho Vice-Diretor Prof. Alexandre Souto Martinez Chefe da Seção Técnica Administrativa Carlos Eduardo Herculano Chefe do Serviço Técnico de Informática Cláudia H. B. Lencioni Chefe da Seção Técnica de Suporte Clélia Camargo Cardoso Chefe da Seção Técnica de Redes Rubens Rodrigo Diniz Chefe Seção Técnica de Manutenção em Informática Luiz Henrique Coletto Projeto Gráfico João H. Rafael Junior Apoio: Instituto de Estudos Avançados Polo Ribeirão Preto


Índice Cloud CIRP - 4 Cluster educacional - CIRP - 10 Cluster CIRP - Crônicas da parte Severina - 12

Espaço do leitor

Envie sugestões do que você gostaria de ler no Boletim Digital do CIRP. Email para contato: boletim@cirp.usp.br


Cloud CIRP

Nos últimos anos vivenciamos um aumento explosivo na quantidade de celulares presentes no nosso meio. Ao olharmos em nossa volta, parece que todos estão conectados e concentrados em seus celulares, mas não é só isso. O avanço da tecnologia, proporcionou funcionalidades incríveis aos dispositivos móveis e ao mesmo tempo um custo acessível a maioria da população. Não é raro algumas pessoas possuírem diversos dispositivos conectados à Internet. São Tablets, Smartphones, notebooks, Smart TVs, etc. Trabalhando com todos esses equipamentos, surge uma questão: como sincronizar os arquivos entre todos os dispositivos? Como iniciar a edição de um documento no local de trabalho, continuar a desenvolvê-lo do ponto onde parou, mas de um outro computador, como em casa, por exemplo, concluir a edição do documento no seu Tablet, durante um voo e apresenta-lo no dia seguinte em um outro computador?

4

interface USB para conexão com o pendrive e outros. Visando auxiliar na solução para disponibilidade e

Inicialmente poderíamos pensar: “vou

sincronização de dados entre diversos

trabalhar direto no pendrive”, ou, “após cada edição irei enviar o arquivo para o meu e-mail”, etc, etc. Nem é preciso comentar a precariedade dessas soluções: várias cópias desatualizadas do mesmo documento em diferentes dispositivos, risco de perder ou esquecer o pendrive, limitação em alguns Tablets de não possuírem

dispositivos, independentes de plataforma (Sistema Operacional: Windows, Linux, OS-X, IOS, Android, etc.) surge o termo Nuvem, também conhecido como computação em nuvem, cloud e cloud computing. Vale ressaltar que a sincronização e disponibilidade de dados é apenas um


dos serviços oferecidos pela nuvem. Veja mais detalhes em [1]. Exemplos de serviços de nuvem para sincronização de arquivos estão em [2-6]. Utilizando a infraestrutura da nuvem USP [7], a seção técnica de suporte do CIRP, implementou e disponibilizou para seus funcionários, seu próprio serviço de sincronização de arquivos na nuvem, utilizando o software livre Owncloud [8], o qual possui funcionalidades semelhantes as do Google Drive [3] e

Skydrive [4]. Através de um aplicativo instalado no computador, Smartphone ou Tablet, todos os diretórios escolhidos pelos funcionários do CIRP, são automaticamente sincronizados com a nuvem e posteriormente é realizada a atualização entre todos os dispositivos os quais possuem o cliente Owncloud instalado. Isto possibilita cópias idênticas de todos os documentos em diversos dispositivos, sendo possível também o acesso diretamente pela web, a partir de qualquer navegador (browser), dispensando a necessidade de instalação do aplicativo cliente e proporcionando uma forma transparente e eficiente para acessar os dados atualizados em qualquer lugar, seja em casa, no trabalho ou em uma viagem.


Cloud CIRP

Implementado em uma máquina virtual na nuvem USP, o projeto Cloud CIRP conta com um hardware modesto: possui um processador dual-core, com 4 GB de memória RAM e HD de 2 TB configurados em LVM. O servidor é gerenciado pelo Sistema Operacional Debian, onde estão instalados os serviços do Owncloud e banco de dados. Por utilizar uma infraestrutura de hardware em nuvem, é possível expandir as configurações do Cloud USP, mantendo todas as configurações de usuários e principalmente seus dados. Esta flexibilidade permite, por exemplo, que no futuro, seja adicionado mais espaço em disco, mais memória RAM, aumento da capacidade de processamento, etc., através do compartilhamento de recursos de hardware disponíveis na nuvem USP. Alocado em uma intranet, podendo ser acessado através de um redirecionamento de porta, realizado por um firewall da nuvem USP, o serviço Cloud CIRP atualmente é utilizado para s i n c r o n i z a r, d i s p o n i b i l i z a r e compartilhar informações sobre manuais técnicos e drivers de diversos dispositivos como impressoras, placas mãe, etc., software do programa Select, documentos de uso geral dos funcionários e outros.

nuvem e com seus diversos dispositivos. Tal acesso é realizado mediante a autenticação do usuário e os dados são restritos ao usuário autenticado, ou seja, nenhum funcionário tem acesso aos arquivos de outro, salvo se o primeiro compartilhou alguns dados com o segundo. Por solicitação e justificativa a área de armazenamento pode ser aumentada para atender as necessidades dos usuários.

Referências: [1] Andriole, et al. Cloud computing: what is it and could it be useful?, Journal of The American College of Radiology, v. 7, n. 4, p. 252-254, 2010. [2] www.dropbox.com/‎ [3] www.google.com/drive [4] https://skydrive.live.com/‎ [5] https://www.box.com/ [6] https://www.icloud.com/ [7]//wiki.uspdigital.usp.br/nuvem/Pa ginas/Home.aspx [8] owncloud.org Autor: MSc. Tulio Marcus Ribeiro Calixto

Cada funcionário conta com uma área de 50 GB para sincronizar dados com a

6

Seção Técnica de Suporte - CIRP


Cluster Educacional - CIRP

Objetivos:

uma tarefa.

Fornecer recursos de Cluster para Alunos (Graduação e Pós graduação) com necessidade de utilização de programação paralela.

O Sistema Operacional utilizado pode ser Linux, Unix ou Windows Microsoft.

Estimular o uso de cluster e programação paralela, uso das ferramentas MPI, PVM e

Tipos de Cluster: -

Alta

Disponibilidade

(HA

-

High

Availability) - Manter um determinado serviço de forma segura o maior tempo

outras.

possível; Conhecer o HPC e sua estrutura interna, características, desenvolvimento utilização de Softwares paralelizados.

e

Não é objetivo montar clusters, mas sim dimensionar e adequar às necessidades. Ensino de programação paralela, programação em Threads, MPI, PVM e etc. Estudos e adaptações de Softwares objetivando sua paralelização. Para isso, o CIRP disponibiliza um Cluster montado com 7 CPUs.

-

Alta

Performance

(HPC

-

High

Performance Computing) - Configuração designada a prover grande poder computacional. Nele ocorre grande carga de processamento. Velocidade de processamento medida em FLOPs (Operações em ponto flutuante). Estas velocidades chegam a muitos Gigaflops. - Balanceamento de carga: Controlar a distribuição equilibrada do processamento. Requer um monitoramento constante na sua comunicação e em seus mecanismos de redundância.

Introdução: Exemplos de Clusters: Clusters são computadores que trabalham em conjunto para executar programas que realizam muitos cálculos. Pode-se fazer um cluster de diversas maneiras. Um computador de grande porte pode ser feito com computadores simples interligados por uma rede de dados e que se comunicam entre si para executar

Cluster Bewoulf : É constituído por diversos nós (um computador = um nó) e são gerenciados por um só computador. É escalável e utiliza um Hardware comum, um micro computador, O gerenciador de tarefas controla todo o Cluster, monitora e distribui as tarefas entre os nós. Os nós são exclusivamente dedicados


Cluster Educacional - CIRP

para

processamento

das

tarefas

enviadas pelo nó gerenciador.

Os nós principais, ou gerenciadores,

- Cluster de Alto desempenho - HPC

desempenham as funções de servidor

(High performance computing)

de

Muito utilizado em pesquisa científica e em desenvolvimento de Software. São equipamentos mais caros que os computadores

de

uso

geral

ou

Desktops. Utiliza-se o Sistema Operacional Linux ou Unix, de livre distribuição, o que diminui o custo do Cluster HPC.

arquivos

ambiente

e

gateways

externo,

por

para

o

exemplo,

conexão à Internet. No

servidor

de

arquivos

são

armazenados os arquivos dos usuários e arquivos dos demais nós. Como única função, os nós executam os processos paralelamente. Como as tarefas são executadas de maneira paralela, as aplicações devem ser

Em linhas gerais, um Cluster aumenta a

escritas em linguagens com suporte a

disponibilidade e performance para as

paralelismo.

aplicações, particularmente as grandes tarefas computacionais.

ser dividida em pequenas tarefas que são distribuídas ao redor das estações (nós),

como

se

supercomputador

fosse

um

massivamente

paralelo. Clusters

As linguagens com este suporte a paralelismo são C, C++ e FORTRAN.

Uma grande tarefa computacional pode

Também são necessárias bibliotecas que permitem a execução concorrente de processos e, principalmente, a troca de

mensagens

(dados)

e

a

sincronização entre os processos em execução no ambiente.

HPC

são

computação

científica

financeiras,

tarefas

exigência

de

usados

alto

ou

para

análises

típicas poder

para de

processamento.

Eventualmente

-

Ambientes

de

são

utilizados

computadores Diskless (sem discos). O acesso é feito via conexão remota

programação

e

bibliotecas mais utilizados: PVM

(Parallel

Especialmente

Não são exigidos teclados e monitores.

8

utilizando-se o SSH.

interligar

Virtual

Machine):

desenhado

recursos

para

computacionais

numa rede, fornecendo ao utilizador uma plataforma paralela para executar aplicações,

independentemente

da

localização, da quantidade ou das


diferenças entre os computadores na rede.

possuem mais de um processador em um mesmo computador.

Em PVM um programa vê um conjunto heterogêneo de computadores, UNIX, de um modo uniforme como se tratasse um único computador paralelo.

Todos eles compartilham os recursos de memória e disco existentes, segundo uma política de controle de concorrência adotada pelo sistema operacional.

MPI (Message Passing Interface): Biblioteca de troca de mensagens utilizada para estabelecer comunicação, via troca de mensagens, entre processadores de sistemas de memória distribuída.

Esta arquitetura é bem transparente ao usuário, ficando a cargo do sistema operacional a maior parte da complexidade.

A comunicação em MPI é realizada chamadas explícitas às rotinas comunicação do MPI, contidas em programa escrito, pelo usuário, linguagem C ou FORTRAN.

por de um em

HPF (High Performance Fortran): É uma extensão do FORTRAN 77 e 90, especialmente orientado ao paralelismo de dados. Ele oferece dentre outros os seguintes recursos: permite execução paralela com memória distribuída, automaticamente detectada pelo compilador e trabalha em vários tipos de arquiteturas para paralelismo.

Enquadram-se os sistemas MPP (Massive Parallel Processing), onde há pouco ou nenhum compartilhamento de recursos entre processadores. Normalmente, cada nó de um sistema MPP é um computador independente, com memória e discos próprios. Nestes sistemas, o controle do paralelismo é realizado pela aplicação, que deve coordenar as tarefas e a coerência entre os diversos nós. * Estrutura do Cluster do CIRP: O CIRP fornece serviços de Cluster com as seguintes características: Cluster com o Sistema Rocks, distribuição livre e sem custos.

Alguns conceitos: - Paralelismo compartilhada

- Paralelismo com memória distribuída

com

de

memória

Enquadram-se os sistemas SMP (Symmetric Multi Processing) que

Composto de 7 CPUs sendo um nó master e 6 nós slaves. São processadores Intel i7 de 3.50GHz.


Cluster Educacional - CIRP

Oito Cores por CPU e 8 Giga Bytes de RAM em cada nó.

BioInformatics Institute http://www.ebi.ac.uk/clustalw/

Sistema Operacional release 6.3

MrBayes - From School of Computational Science at the Florida S t a t e U n i v e r s i t y http://mrbayes.csit.fsu.edu/

Linux

CentOS

- Cluster Sistema Rocks: http://www.rocksclusters.org * Os serviços oferecidos são: Gerenciamento: Administração e monitoração do desempenho do Cluster, do uso das CPUs, dos recursos e dos Softwares instalados. Documentação: Utilização do Cluster, métodos e recomendações de submissão de jobs, exemplos e modo de utilização.

T_Coffee - From Information Genomique et Structurale at Centre National de la Recherche Scientifique The T-Coffee Home Page Emboss - From European Molecular B i o l o g y I n s t i t u t e http://emboss.sourceforge.net/

Compiladores: GCC, FORTRAN

Phylip - From the Dept. of Biology at the University of Washington http://evolution.genetics.washington. edu/phylip.html

Linguagens de programação: C, C++, Fortran, Python, PHP, Perl e Java

Fasta - From the University of Virginia http://fasta.bioch.virginia.edu/

Softwares e suas repectivas licenças de uso:

Glimmer

-

From

Center

for

HMMER - Busca Sequencial em Proteínas - http://hmmer.janelia.org/

Bioinformatics and Computational Biology at the University of Maryland http://www.cbcb.umd.edu/software/g limmer/

NCBI BLAST - From National Center for

TIGR Assembler - From the J. Craig

Biotechnology Information www.ncbi.nlm.nih.gov/BLAST/

V e n t e r I n s t i t u t e http://www.jcvi.org/cms/research/sof

-

tware/

10

-

MpiBLAST - From Los Alamos National Laboratory - http://mpiblast.lanl.gov/

Bibliotecas Perl:

Biopython - www.biopython.org

perl-bioperl

ClustalW

perl-bioperl-ext

-

From

the

European


perl-bioperl-run

respeitar os termos de uso dos recursos.

perl-bioperl-db

- Prezar pelo bom uso do Cluster.

Bibliotecas OpenMPI

- Não executar programas maliciosos.

* Administração do Cluster, responsabilidade do CIRP:

de

- Suporte na utilização do Cluster para Softwares desenvolvidos pelos usuários.

- Não divulgar a senha a estranhos. - Não executar programas que levem o Cluster à indisponibilidade. - Manter seus dados íntegros.

- Cluster disponibilizado em tempo integral, 24 horas por dia e 7 dias por semana. - Disponibiliar cadastro de contas via formulário WEB, onde deverão constar : Nome completo do usuário, descrição do projeto, Orientador e Unidade da USP.

Mais informações sobre os Softwares instalados no Cluster: h t t p : / / c a - c l u s t e r. c i r p . u s p . b r / r o l l documentation/ E-Mail: cluster@cirp.usp.br

- Gerenciamento das contas de usuários. Autor: - Quotas de disco. Ali Faiez Taha - Analista de Sistemas - Controle dos recursos de uso de CPUs, memórias, discos e etc. - Manutenção do Software e Hardware. - Instalação e atualização de Softwares. - Manutenção dos serviços em execução e Backup. - Documentação para utilização dos recursos. * Normas de utilização dos usuários cadastrados: - Usuários cadastrados deverão manter os arquivos e programas em ordem e

Centro de Informática Ribeirão Preto (CIRP)

da

USP


Cluster CIRP Crônicas da parte “Severina” “Cluster” de computadores é um agrupamento de várias máquinas que se integram e comunicam através de uma rede formando um único conjunto cujo objetivo é a distribuição de serviços ou tarefas de computação em vários processadores como se fosse uma máquina só. São de dois tipos: ·Alto desempenho (HPC): para maior poder de processamento ·Ou de alta disponibilidade (HA): para ser usado de forma mais segura garantindo Pois bem, inicialmente houve a ideia de um cluster Acadêmico no CIRP, isto é, um cluster que fosse disponibilizado para a comunidade USP, professores e alunos para que pudessem ter aulas de computação paralela. Ideia feita foram realizadas duas reuniões onde foi definido que não iria comprar máquinas prontas, e que a SCMANUT iria montá-las. Um cluster é um agrupamento, então, uma máquina não dá, duas começa a ser alguma coisa, três já pode ser considerado um “ménage a trois”, quatro é swing, então vai ser cinco, vira um “grupal” de um jeito legal, com alguém mandando . Claro, deve haver o mestre, ou master como preferiram. O resto são os

12

escravos ou nós do conjunto. Delimitei um projeto em poucas linhas e uma figura razoável. Escolhendo o melhor hardware possível, juntamente com o necessário para a rede e a energia de no-breaks. Cinco computadores com quatro núcleos e quatro threads (um thread é um arranjo interno no hardware para simular outro processador) perfazendo oito núcleos. Ao todo daria 40 núcleos.


Sendo assim foi transferido para 2013, já no começo de Janeiro. Feito requisição e dado o inicio da documentação aguardamos as propostas para o preço de referencia. Veja abaixo o cronograma: Cronograma previsto (seguido e realizado) para o Pregão 2/2013 Scmanut: ·Até 15/Fevereiro: definição quantidades e valores + requisição Mercúrio; ·18 a 25/Fevereiro: processo, edital, documentos, assinaturas, publicação no DOE e sites... ·De 26/Fevereiro a 07/Março = 8 dias úteis de divulgação ·Dia 08/Março às 8h00 = abertura das propostas ·Até 12/Março: análise pela SCMANUT ·Dia 14/Março às 9h00: sessão pública

É um começo muito bom. É onde termina a introdução no bom sentido da palavra e começa o calvário. Para fazer a montagem das máquinas na USP é necessário compras em sistema de Pregão Eletrônico. Até aí tudo bem, se não fosse mês de Outubro de 2012, pois havia outro pregão sendo colocado na frente do da SCMANUT e não haveria tempo para um novo.

Pregão realizado e 28 dias depois, no prazo legal para recebermos as peças, foram entregues. 14 de Março + 28 => 11 de Abril. Seria esta data a final para ser entregue as peças. As motherboards processadores chegaram em 15 de Abril. Então tenho a data final de entrega das peças necessárias. De Janeiro a Abril são quatro meses e que adiou a montagem dos micros que fariam parte do cluster. Como não tenho só isso


Cluster CIRP Crônicas da parte “Severina” Cluster chamado de Rocks Cluster (www.rocksclusters.org). Instalei os nós e voilá, um cluster novinho nascido na SCMANUT. Com sete hosts e 56 processadores ele pode gerar 392 gigaflops conforme site do Rocks e visto na figura 1: Missão cumprida. Queria fazer alguns testes, e o Wagner me ajudou criando um programa com iterações para descobrir o PI, em um único processador, primeiro sem threads, com tempo de 34 segundos, depois com threads, usando todos os quatro núcleos mais as quatro threads com resultado surpreendente de 4 segundos. Isso usando apenas um processador local. Figura Queria mesmo ter tempo de fazer funcionar em Cluster usando todo o processamento dos 56 processadores, com comparação com outros clusters, mas não deu. O brinquedo estava pronto e mais alguém queria entrar na brincadeira.

pra fazer, a montagem de sete micros foi finalizada em 26/05/2013. Epa! Sete micros??!! Claro, havia a verba disponível e foi possível montar mais dois micros nesta verba ficando ao total de R$17.336,00. Para testar instalei um pacote pronto de

14

Então, voltei a ser um profissional que cumpre com a missão. O prazer fica pra depois. No próximo artigo sobre nosso cluster es p er o d a r m a i s d et a l h es d e desempenho e algumas comparações válidas. O cluster está instalado na casa 23 – Telefonia do CIRP e totalmente


operacional. Está instalado em rack fechado conectado a um switch Gigabit (figuras abaixo). Mais informações para utilização e configurações com o analista da SCREDE Sr. Ali Faiez Taha aftaha@cirp.usp.br ou pelo telefone 3602-3620. Netgrafia http://www.rocksclusters.org/

Autor:

http://www.rocksclusters.org/rocksregister/details.php?id=1955

Luiz

Henrique

SCMANUT - CIRP

Coletto

-

Chefia



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.