O Hadoop tem se tornado uma importante ferramenta para Big Data. Neste post vamos fazer a instalação e configuração do Hadoop em single node. Nos próximos posts veremos alguns programas Hadoop de exemplo para processamento de arquivos, importação de dados de um banco relacional e outras possibilidades.
Apache Hadoop
Framework para processamento paralelo e distribuído.
Principais características:
– implementação do MapReduce
– Hadoop Distributed File System (HDFS)
– roda no hardware atual, sem a necessidade de adquirir novos servidores
– tolerância a falhas
– replicação de dados
Download
A última versão estável é a 1.0.4, disponível aqui.
Instalação e configuração do Hadoop
Alterar os arquivos de configuração que estão no diretório do Hadoop:
$ cd ${diretório-do-hadoop}
– conf/hadoop-env.sh
export JAVA_HOME=${diretório-do-jdk}
– conf/core-site.xml
– conf/hdfs-site.xml
– conf/mapred-site.xml
ssh
O Hadoop utiliza ssh para comunicação. Para tanto, verifique se o serviço está ativo:
$ sudo /sbin/service sshd status
Caso não tenha o ssh server instalado:
$ sudo apt-get install ssh
$ sudo apt-get install rsync
ou
$ sudo yum install openssh-server
$ sudo yum install rsync
ssh inativo:
Active: inactive (dead) since...
ssh ativo:
Active: active (running) since...
Para iniciar o serviço:
$ sudo /sbin/service sshd start
Geração de chaves
Se você não consegue acessar o localhost sem o passphrase, gere as chaves:
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
Tente acessar o localhost:
$ ssh localhost
Dica: caso ainda precise do passphrase, altere as permissões conforme abaixo:
$ chmod 600 ~/.ssh/authorized_keys
HDFS
$ cd ${diretório-do-hadoop}/bin
$ ./hadoop namenode -format
Iniciando o Hadoop
Para iniciar o daemon do Hadoop:
$ ./start-all.sh
Durante a inicialização do serviço, deve ser mostrado o log:
starting namenode, logging to /home/marco/Software/hadoop/libexec/../logs/hadoop-marco-namenode-marcoreis-ultrabook.out
localhost: starting datanode, logging to /home/marco/Software/hadoop/libexec/../logs/hadoop-marco-datanode-marcoreis-ultrabook.out
localhost: starting secondarynamenode, logging to /home/marco/Software/hadoop/libexec/../logs/hadoop-marco-secondarynamenode-marcoreis-ultrabook.out
starting jobtracker, logging to /home/marco/Software/hadoop/libexec/../logs/hadoop-marco-jobtracker-marcoreis-ultrabook.out
localhost: starting tasktracker, logging to /home/marco/Software/hadoop/libexec/../logs/hadoop-marco-tasktracker-marcoreis-ultrabook.out
Interface web
Para testar a instalação do Hadoop e verificar se está funcionando, acesso os serviços através das urls:
– Namenode
– JobTracker
– TaskTracker
Parando o Hadoop
$ ./stop-all.sh
Show brother, temos pouco material disponibilizado em linguagem tupiniquim. Já favoritei seu blog, tem muito conteúdo bom aqui.
Uma dúvida sobre este post, quais seriam os requisitos?
Oi, Henrique. Realmente tem pouca coisa em português. Tenho vários rascunhos de artigos e vou postar nos próximos dias.
Estava mesmo sem tempo porque precisava terminar as aulas do curso de Hadoop que já está disponível aqui. O curso é prático e minha ideia é publicar alguns complementos com outras funcionalidades do Hadoop, como joins, enriquecimento de dados e sistemas de recomendação.