O software computacional BioNimbuZ é desenvolvido e mantido por alunos de Graduação e Mestrado da Universidade de Brasília. Seu objetivo é criar uma plataforma de execução de workflows em Bioinformática que utiliza a infraestrutura provida por uma Federação de Nuvens. Uma Federação de Nuvens Computacionais possibilita a utilização simultânea das diversas infraestruturas existentes nas várias instituições provedoras destes serviços (Microsoft Azure, Amazon EC2 entre outras), além de permitir a utilização dos recursos oferecidos pelas nuvens públicas. Este trabalho tem como objetivo propor uma arquitetura de federação de nuvens computacionais híbrida, denominada BioNimbuZ, capaz de executar aplicações e workflows de bioinformática de maneira transparente, flexível, eficiente e tolerante a falhas, com grande capacidade de processamento e de armazenamento.
Para compilar, realizar o build e executar o ambiente do BioNimbuZ, seguir o passo-a-passo descrito abaixo.
Configurar uma máquina virtual Linux com usuário bionimbuz. Utilizamos a distribuição Linux em sua versão 14.04. No caminho /home/bionimbuz crie a pasta Bionimbuz (caminho completo: /home/bionimbuz/Bionimbuz/)
mkdir /home/bionimbuz/Bionimbuz/
Instalar e configurar o Java:
sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java8-installer
Apache ZooKeeper é um serviço centralizado para gerenciar e sincronizar informações de configuração em um ambiente computacional distribuído.
3.1 Realizar o download do ZooKeeper: http://ftp.unicamp.br/pub/apache/zookeeper/stable/zookeeper-3.4.8.tar.gz 3.2 Descompacte na pasta opt/zookeeper/ 3.3 Configure o arquivo /opt/zookeeper/conf/zoo.cfg 3.4 Altere a linha dataDir=/opt/zookeeper/ 3.5 Salve e feche o arquivo 3.6 Inicie o zookeeper com o comando sudo /opt/zookeeper/bin/./zkServer.sh start 3.7 Pronto! O servidor ZooKeeper está executando, mais detalhes na documentação: https://zookeeper.apache.org/doc/r3.4.6/zookeeperStarted.html#sc_InstallingSingleMode
Utilizamos o Netbeans 8.1 para desenvolvimento. Download:
http://download.netbeans.org/netbeans/8.1/final/bundles/netbeans-8.1-javaee-linux.sh
Dstat possibilita a visualização de recursos do sistema instantaneamente.
sudo apt-get install dstat
"Bedtools utilities are a swiss-army knife of tools for a wide-range of genomics analysis tasks"
sudo apt-get install bedtools
Abra o arquivo persistence.xml e altere o usuário e senha, arquivo localizado em /src/main/resources/META-INF/persistence.xml
13.1 Crie a pasta .bionimbuz mkdir /home/bionimbuz/.bionimbuz 13.2 Crie o arquivo credential.yaml touch /home/bionimbuz/.bionimbuz/credentials.yaml 13.3 Edite o arquivo, adicionando os seguintes paramêtros: user: "seulogin" password: "suasenha" ssh-port: "portadossh" 13.4 Salve e feche o arquivo PS: Importante que esse arquivo possua a mesma senha e login para todas as máquinas;
Primeiramente é necessário configurar a máquina conforme os passos acima (não sendo necessária a instalação do Netbeans, pois não haverá desenvolvimento nas instâncias na nuvem). Criar a mesma estrutura de diretórios
/home/bionimbuz/Bionimbuz/ | + src + target + conf + exported-folders + ...
Com tudo instalado, realizar os seguintes passos:
scp zoonimbus@<ip_nuvem>:/path/to/file localfile
enviar as pastas exported-folders enviar as pastas data-folder enviar as pastas pipeline enviar as pastas services enviar as pastas programs enviar as pastas conf enviar bionimbus-1.0-SNAPSHOT-bundle.jar gerado na target
Para iniciar a execução o servidor zookeeper deve ser iniciado.
1 - Alterar conf/node.yaml com as configurações de ip do servidor zookeeper, ip e os caminhos das pastas necessárias para a execução, etc.. 2 - Entrar na pasta zoonimbusProject/ 3 - Servidor: executar o comando "sh exported-folders/bin/server.sh" 4 - Cliente: executar o comando "sh exported-folders/bin/client.sh" (** migrando para aplicação Web) 5 - Pipeline: executar o comando "sh exported-folders/bin/client-pipeline.sh" (** migrando para aplicação Web)
Acesse o arquivo:
sudo nano /etc/ssh/sshd_config
e adicione a linha na parte de Authentification
PasswordAuthentication yes comentar as linhas #RSAAuthentication yes #PubkeyAuthentication yes ctrl+o, enter, ctrl+x