{"id":4134,"date":"2015-08-18T10:37:30","date_gmt":"2015-08-18T13:37:30","guid":{"rendered":"https:\/\/www.viazap.com.br\/?p=4134"},"modified":"2015-08-17T23:39:29","modified_gmt":"2015-08-18T02:39:29","slug":"instalando-apache-hadoop","status":"publish","type":"post","link":"https:\/\/blog.clusterweb.com.br\/?p=4134","title":{"rendered":"INSTALANDO APACHE HADOOP"},"content":{"rendered":"<h1>O QUE \u00c9 O APACHE HADOOP<\/h1>\n<p>&nbsp;<\/p>\n<div><em>Apache Hadoop<\/em> \u00e9 um framework livre administrado pela Apache Software Foundation constru\u00eddo em Java para computa\u00e7\u00e3o distribu\u00edda, de alta escalabilidade, grande confiabilidade e toler\u00e2ncia a falhas. O Hadoop foi desenhado para trabalhar com modelos de programa\u00e7\u00e3o simples para o processamento de grandes volumes de dados (D\u00edaz-Zorita, 2011) usando clusters de computadores de hardware commodity, computadores comuns (deRoos; et al, 2014).<\/p>\n<h1>ESTRUTURA HADOOP<\/h1>\n<p>Segundo Carmen Placios a arquitetura das vers\u00f5es do Hadoop 0 e 1 se dividem em tr\u00eas pilares fundamentais:<\/p>\n<ul>\n<li>Hadoop MapReduce: que podemos definir como o motor ou modelo de programa\u00e7\u00e3o que impulsiona o Hadoop.<\/li>\n<li>Sistema de arquivos: Hadoop utiliza seu pr\u00f3prio sistema de arquivos distribu\u00eddos, denominado Apache Hadoop Distributed File System (HDFS).<\/li>\n<li>Hadoop Common: utilit\u00e1rios que possibilitam a integra\u00e7\u00e3o dos subprojetos do ecossistema Hadoop.<\/li>\n<\/ul>\n<p>Durante o processo de amadurecimento do Apache Hadoop um quarto pilar, denominado Yarn, foi inserido a partir da vers\u00e3o 2 (Apache, 2012):<\/p>\n<p>Hadoop Yarn: pode ser considerado a evolu\u00e7\u00e3o do MapReduce, ou MRv2 como veremos mais adiante.<br \/>\n<!--more--><\/p>\n<h1>MAPREDUCE<\/h1>\n<p>Uma aplica\u00e7\u00e3o MapReduce em execu\u00e7\u00e3o no Hadoop recebe seu trabalho dividido entre os n\u00f3s &#8211; computadores que formam um cluster geralmente s\u00e3o chamados de n\u00f3s &#8211; e os arquivos a serem manipulados pela aplica\u00e7\u00e3o residem no sistema de arquivos, HDFS, o que mant\u00e9m a entrada e sa\u00edda a um baixo custo (deRoss; et al, 2014).<\/p>\n<p>Em linhas gerais, o Hadoop fragmenta os dados no seu sistema de arquivos quando a fun\u00e7\u00e3o map \u00e9 utilizada e destes fragmentos s\u00e3o geradas tuplas formadas por (chave, valor) produzindo um novo conjunto de chaves e valores intermedi\u00e1rios e aplica a fun\u00e7\u00e3o shuffle para classificar todos os valores iguais a uma mesma chave para reduzir as tarefas. Em sequ\u00eancia os n\u00f3s executam a fun\u00e7\u00e3o de redu\u00e7\u00e3o e processam as tuplas geradas pela fun\u00e7\u00e3o shuffle produzindo uma tupla \u00fanica para cada valor e chave correspondentes. A fun\u00e7\u00e3o de redu\u00e7\u00e3o tamb\u00e9m se encarrega de escrever as sa\u00eddas de dados no sistema de arquivos distribu\u00eddo. Para exemplificar todo esse processo, vamos observar a imagem 1:<\/p>\n<div class=\"figura\"><a href=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/Hadoop---MapReduce.png\" target=\"_blank\" rel=\"nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/thumb_Hadoop---MapReduce.png\" alt=\"Linux: Instalando Apache Hadoop\" width=\"500\" height=\"246\" border=\"0\" \/><\/a><br \/>\nFonte: Adaptado de Apache, 2014<\/div>\n<p>Como podemos ver, existe um \u00fanico n\u00f3, denominado JobTracker, que se encarrega de delegar as fun\u00e7\u00f5es de mapeamento e redu\u00e7\u00e3o para os demais n\u00f3s, chamados de TaskTrackers.<\/p>\n<h1>HDFS<\/h1>\n<p>Como vimos o MapReduce segue sua hierarquia de n\u00f3s e com o HDFS n\u00e3o \u00e9 diferente. Existe o NameNode, ou master, que \u00e9 respons\u00e1vel pelo controle de acesso, organiza\u00e7\u00e3o dos diret\u00f3rios e metadados. Os DataNodes, ou workers, que s\u00e3o respons\u00e1veis pelos fragmentos de arquivos e suas replica\u00e7\u00f5es, como podemos ver na imagem 2:<\/p>\n<div class=\"figura\"><a href=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/Hadoop---HDFS.png\" target=\"_blank\" rel=\"nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/thumb_Hadoop---HDFS.png\" alt=\"Linux: Instalando Apache Hadoop\" width=\"500\" height=\"342\" border=\"0\" \/><\/a><br \/>\nFonte: Adaptada de Apache 2014<\/div>\n<p>As letras usadas (A, B, C e D) representam fragmentos de arquivos divididos entre os n\u00f3s para garantir redund\u00e2ncia e toler\u00e2ncia a falhas no sistema de arquivos (White, 2014).<\/p>\n<h1>YARN<\/h1>\n<p>Como dito anteriormente, o Yarn \u00e9 uma evolu\u00e7\u00e3o do MapReduce onde as fun\u00e7\u00f5es do JobTracker s\u00e3o repartidas em deamons independentes. Uma das fun\u00e7\u00f5es principais do MapReduce \u00e9 a de partilhar os dados para as fun\u00e7\u00f5es de Map e Reduce, a outra fun\u00e7\u00e3o \u00e9 gerenciar as falhas e procurar n\u00f3s dispon\u00edveis para executar a fun\u00e7\u00e3o onde houve falha. Para isso o Yarn muda um pouco a nomenclatura do n\u00f3 master e o apelida de Resource Manager (RM) ou Application Master (AM), onde cada fun\u00e7\u00e3o MapReduce \u00e9 uma aplica\u00e7\u00e3o definida pelo n\u00f3 mestre e o resource manager fica respons\u00e1vel por reordenar os n\u00f3s no caso de falhas dos n\u00f3s escravos, NodeManager (NM). (Apache, 2014)<\/p>\n<h1>HADOOP COMMOM<\/h1>\n<p>Por tr\u00e1s do Hadoop n\u00e3o existem s\u00f3 o MapReduce e HDFS, existe um ecossistema com mais de uma dezena de projetos relacionados e que podem facilitar atividades e a configura\u00e7\u00e3o de um cluster. Em grande parte projetos do ecossistema tamb\u00e9m s\u00e3o hospedados pela Apache Software Foundation (deRoss; et al, 2014) e agora veremos alguns dos principais projetos (Apache, 2014):<\/p>\n<ul>\n<li>Ambari: um framework web para constru\u00e7\u00e3o, monitoramento e manuten\u00e7\u00e3o de um cluster Hadoop, fornecendo uma interface amig\u00e1vel para tais fun\u00e7\u00f5es e uma sess\u00e3o para inclus\u00e3o ou exclus\u00e3o de n\u00f3s escravos. Dispon\u00edvel em: <a href=\"http:\/\/ambari.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/ambari.apache.org<\/a><\/li>\n<li>Avro: um sistema para serializa\u00e7\u00e3o de dados, compactando-os em formato bin\u00e1rio. Dispon\u00edvel em: <a href=\"http:\/\/avro.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/avro.apache.org<\/a><\/li>\n<li>Cassandra: um banco de dados que preza por escalabilidade, alta disponibilidade e toler\u00e2ncia a falhas para hardware commodity. Dispon\u00edvel em: <a href=\"http:\/\/cassandra.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/cassandra.apache.org<\/a><\/li>\n<li>Chukwa: um framework escal\u00e1vel para an\u00e1lises de logs. Dispon\u00edvel em: <a href=\"http:\/\/chukwa.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/chukwa.apache.org<\/a><\/li>\n<li>Hbase: um banco de dados escal\u00e1vel, distribu\u00eddo, que suporta o armazenamento de dados estruturado para grandes mesas. Dispon\u00edvel em: <a href=\"http:\/\/hbase.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/hbase.apache.org<\/a><\/li>\n<li>Hive: uma infraestrutura para Datawarehouse que tem como caracter\u00edstica um compactador pr\u00f3prio e um sistema para consultas ad hoc. Dispon\u00edvel em: <a href=\"http:\/\/hive.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/hive.apache.org<\/a><\/li>\n<li>Mahout: um framework escal\u00e1vel para machine learning e data mining. Dispon\u00edvel em: <a href=\"http:\/\/mahout.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/mahout.apache.org<\/a><\/li>\n<li>Pig: uma plataforma para an\u00e1lise de grandes conjuntos de dados que roda sobre o HDFS, como um compilador pr\u00f3prio para produzir programas de MapReduce usando uma linguagem de programa\u00e7\u00e3o chamada Pig Latin. Dispon\u00edvel em:<a href=\"http:\/\/pig.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/pig.apache.org<\/a><\/li>\n<li>Sqoop: uma ferramenta para mover dados de bases relacionais para o HDFS.<\/li>\n<li>ZooKeeper: um framework coordenador de computa\u00e7\u00e3o distribu\u00edda altamente confi\u00e1vel, como nomes, configura\u00e7\u00e3o e sincroniza\u00e7\u00e3o entre os n\u00f3s. Dispon\u00edvel em: <a href=\"http:\/\/zookeeper.apache.org\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/zookeeper.apache.org<\/a><\/li>\n<\/ul>\n<div class=\"figura\"><a href=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/Hadoop---projetos.PNG\" target=\"_blank\" rel=\"nofollow\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/img.vivaolinux.com.br\/imagens\/artigos\/comunidade\/thumb_Hadoop---projetos.PNG\" alt=\"Linux: Instalando Apache Hadoop\" width=\"500\" height=\"326\" border=\"0\" \/><\/a><\/div>\n<h1>CARACTER\u00cdSTICAS DO HADOOP<\/h1>\n<p>Como dito anteriormente o Hadoop \u00e9 um sistema tolerante a falhas, com grande confiabilidade e alta escalabilidade e para exemplificar podemos usar como exemplo um programa que roda em um \u00fanico computador. Quando o programa falha, ele simplesmente finaliza, mas em um sistema distribu\u00eddo a no\u00e7\u00e3o de falha se faz parcial, pois somente um \u00fanico n\u00f3 pode falhar, ou um conjunto deles. Sobre a grande confiabilidade pode-se afirmar que um cluster deve funcionar durante um grande per\u00edodo de tempo sem interrup\u00e7\u00f5es (Tanenbaum &amp; Steen, 2010).<\/p>\n<p>A alta escalabilidade do Hadoop \u00e9 referente a facilidade de administra\u00e7\u00e3o quanto a inser\u00e7\u00e3o de novos n\u00f3s para crescimento (Shvachko, 2010). O que pode aumentar seu poder de processamento de forma simples e barata, pois o Hadoop usa hardware commodity (White, 2014).<\/p><\/div>\n<h1>INSTALA\u00c7\u00c3O DO MODO SINGLE-NODE<\/h1>\n<p>&nbsp;<\/p>\n<div>1. Modo convencional:<\/p>\n<p>Foi executado download da vers\u00e3o stable do Hadoop (2.6.0 &#8211; atual em 13\/abril\/2014). Dispon\u00edvel em:<\/p>\n<ul>\n<li><a href=\"http:\/\/mirror.nbtelecom.com.br\/apache\/hadoop\/common\/stable\/\" target=\"_blank\" rel=\"nofollow\">http:\/\/mirror.nbtelecom.com.br\/apache\/hadoop\/common\/stable\/<\/a><\/li>\n<\/ul>\n<p>Logo ap\u00f3s n\u00f3s podemos descompactar:<\/p>\n<p><strong># tar xvvf hadoop*<\/strong><\/p>\n<p>E mover para <em>\/usr\/local\/hadoop<\/em> (o local recomendado por conven\u00e7\u00e3o):<\/p>\n<p><strong># mv hadoop* \/usr\/local\/hadoop<\/strong><\/p>\n<p>2. Instala\u00e7\u00e3o em outras distribui\u00e7\u00f5es:<\/p>\n<p>No caso, eu uso <em>Arch <a href=\"http:\/\/www.vivaolinux.com.br\/linux\/\">Linux<\/a><\/em>. Ent\u00e3o para instalar no Arch:<\/p>\n<p><strong># yaourt -S hadoop<\/strong><\/p>\n<p>Existem maneiras simples para executar a instala\u00e7\u00e3o no <em>Debian<\/em>, <em>Ubuntu<\/em>, <em>Fedora<\/em> etc. a partir de alguns reposit\u00f3rios.<\/p>\n<p>3. Vari\u00e1veis de ambiente:<\/p>\n<p>A configura\u00e7\u00e3o da vari\u00e1vel do Java (ao meu ver) \u00e9 um pouco chata, ent\u00e3o para evitar essa &#8220;maldi\u00e7\u00e3o&#8221; podemos configurar o hadoop-env.sh:<\/p>\n<p><strong># vim \/usr\/local\/hadoop\/etc\/hadoop\/hadoop-env.sh<\/strong><\/p>\n<p>E faremos a seguinte altera\u00e7\u00e3o na linha 25:<\/p>\n<p><samp>export JAVA_HOME=[Caminho-de-insta\u00e7\u00e3o-do-seu-Java] <\/samp><\/p>\n<p>No meu caso:<\/p>\n<div class=\"codigo\">export JAVA_HOME=\/usr\/lib\/jvm\/default<\/div>\n<p>4. Vari\u00e1vel Hadoop<\/p>\n<p>Para facilitar o manuseio dos arquivos do Hadoop, podemos criar algumas vari\u00e1veis \u00fateis ao bash, como:<\/p>\n<div class=\"codigo\">HADOOP_INSTALL=\/usr\/local\/hadoop<br \/>\nHADOOP_BIN=\/usr\/local\/hadoop\/bin<br \/>\nHADOOP_SBIN=\/\/usr\/local\/hadoop\/sbin<\/div>\n<p>E para executarmos o Hadoop de maneira simples, podemos criar uma direta ao execut\u00e1vel do Hadoop:<\/p>\n<div class=\"codigo\">HADOOP=\/usr\/local\/hadoop\/bin\/hadoop<\/div>\n<p>Pronto! Seu Hadoop est\u00e1 instalado com sucesso, suas vari\u00e1veis est\u00e3o configuradas de uma maneira inteligente. Agora temos que executar um teste b\u00e1sico, s\u00f3 pra verificar como as coisas est\u00e3o.<\/p>\n<p>Teste:<\/p>\n<p><strong>$ mkdir input<\/strong><br \/>\n<strong>$ cp $HADOOP_INSTALL\/hadoop\/etc\/hadoop\/*.xml input<\/strong><br \/>\n<strong>$ hadoop jar $HADOOP_INSTALL\/share\/hadoop\/mapreduce\/hadoop-mapreduce-examples-2.6.0.jar grep input output &#8216;dfs[a-z.]+&#8217;<\/strong><br \/>\n<strong>$ cat output\/*<\/strong><\/p>\n<p>Se tudo aconteceu com sucesso, e apareceram algumas boas palavras na tela, parab\u00e9ns, est\u00e1 tudo feito com sucesso.<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<h1>INSTALA\u00c7\u00c3O DO MODO PSEUDO-DISTRIBU\u00cdDO<\/h1>\n<p>&nbsp;<\/p>\n<div>Para configurar o modo pseudo-distribu\u00eddo voc\u00ea deve configurar o modo single como vimos na p\u00e1gina anterior.<\/p>\n<p>Por default todas as jobs do Hadoop s\u00e3o executadas pelo usu\u00e1rio 0 (root) e se voc\u00ea deseja que as opera\u00e7\u00f5es sejam executadas em um user espec\u00edfico voc\u00ea pode setar em <em>\/etc\/conf.d\/hadoop<\/em> alterando a linha:<\/p>\n<div class=\"codigo\">HADOOP_USERNAME = &#8220;[seu nome de usu\u00e1rio]&#8221;<\/div>\n<p>E em seguida temos que configurar os XMLs do Hadoop e o SSH.<\/p>\n<p>Os arquivos XML est\u00e3o localizados em <em>\/usr\/local\/hadoop\/etc\/hadoop<\/em>.<\/p>\n<p>Logo ap\u00f3s, juntei aqui arquivos b\u00e1sicos de configura\u00e7\u00e3o para subir e derrubar os servi\u00e7os.<\/p>\n<p>1. Arquivos de configura\u00e7\u00e3o:<\/p>\n<p>core-site.xml:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;fs.defaultFS&lt;\/name&gt;<br \/>\n&lt;value&gt;hdfs:\/\/localhost:9000&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>hdfs-site.xml:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.replication&lt;\/name&gt;<br \/>\n&lt;value&gt;1&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.namenode.name.dir&lt;\/name&gt;<br \/>\n&lt;value&gt;file:\/usr\/local\/hadoop\/hadoop_data\/hdfs\/namenode&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.datanode.data.dir&lt;\/name&gt;<br \/>\n&lt;value&gt;file:\/usr\/local\/hadoop\/hadoop_store\/hdfs\/datanode&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>mapred-site.xml:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;mapreduce.framework.name&lt;\/name&gt;<br \/>\n&lt;value&gt;yarn&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>yarn-site.xml:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;yarn.nodemanager.aux-services&lt;\/name&gt;<br \/>\n&lt;value&gt;mapreduce_shuffle&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;yarn.nodemanager.aux-services.mapreduce.shuffle.class&lt;\/name&gt;<br \/>\n&lt;value&gt; org.apache.hadoop.mapred.ShuffleHandler&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>Configura\u00e7\u00e3o SSH:<\/p>\n<p><strong># ssh-keygen -t rsa -P &#8221; -f ~\/.ssh\/id_rsa<\/strong><br \/>\n<strong># cat ~\/.ssh\/id_rsa.pub &gt;&gt; ~\/.ssh\/authorized_keys<\/strong><br \/>\n<strong># ssh-keyscan -H localhost, localhost &gt;&gt; ~\/.ssh\/known_hosts<\/strong><br \/>\n<strong># ssh-keyscan -H localhost, 0.0.0.0 &gt;&gt; ~\/.ssh\/known_hosts<\/strong><\/p>\n<p>Cria\u00e7\u00e3o do script para subir os servi\u00e7os:<\/p>\n<p><strong># $HADOOP_INSTALL\/hadoop-2.6.0\/sbin\/start-dfs.sh<\/strong><br \/>\n<strong># $HADOOP_INSTALL\/hadoop-2.6.0\/sbin\/start-yarn.sh<\/strong><br \/>\n<strong># $HADOOP_INSTALL\/hadoop-2.6.0\/sbin\/mr-jobhistory-daemon.sh start historyserver<\/strong><\/p>\n<p>Cria\u00e7\u00e3o do script para derrubar os servi\u00e7os:<\/p>\n<p><strong># $HADOOP_INSTALL\/hadoop-2.6.0\/sbin\/mr-jobhistory-daemon.sh stop historyserver<\/strong><br \/>\n<strong># $HADOOP_INSTALL\/hadoop-2.6.0\/sbin\/stop-yarn.sh<\/strong><br \/>\n<strong># $HADOOP_INSTALL\/hadoop-2.6.0\/sbin\/stop-dfs.sh<\/strong><\/p>\n<p>Teste de funcionamento: acesse http:\/\/localhost:8088<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<h1>INSTALA\u00c7\u00c3O DO MODO TOTALMENTE DISTRIBU\u00cdDO<\/h1>\n<p>&nbsp;<\/p>\n<div>Para configurar o modo totalmente distribu\u00eddo voc\u00ea deve configurar o modo pseudo-distribu\u00eddo como vimos na p\u00e1gina anterior.<\/p>\n<p>Existem poucas diferen\u00e7as entre a configura\u00e7\u00e3o do pseudo-distribu\u00eddo e o modo completamente distribu\u00eddo. Na verdade, o Hadoop s\u00f3 precisa estar instalado em todos os n\u00f3s do nosso cluster e podemos fazer isso de uma maneira muito simples:<\/p>\n<p><strong># rsync -avxP \/usr\/local\/hadoop root@[ip_do_cliente]:\/usr\/local\/hadoop<\/strong><\/p>\n<p>Mas para que isso aconte\u00e7a de uma maneira transparente temos que configurar o SSH do server, para autentica\u00e7\u00e3o sem senha, em todos os outros n\u00f3s que far\u00e3o parte do nosso cluster como visto anteriormente.<\/p>\n<p>Os arquivos XML tem algumas pequenas modifica\u00e7\u00f5es:<\/p>\n<p>core-site.xml &#8211; aqui definimos o uso do HDFS e o endere\u00e7o do seu master e a porta que ser\u00e1 usada:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;fs.defaultFS&lt;\/name&gt;<br \/>\n&lt;value&gt;hdfs:\/\/NOME_DO_SEU_MASTER:9000&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>hdfs-site.xml &#8211; aqui est\u00e1 sendo definido o numero de replica\u00e7\u00f5es de cada arquivo do HDFS:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.replication&lt;\/name&gt;<br \/>\n&lt;value&gt;3&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>mapred-site.xml &#8211; aqui passamos a bola do gerenciador de MapReduce para o Yarn e dizemos quem vai ser o Master para distribuir tarefas:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;mapred.job.tracker&lt;\/name&gt;<br \/>\n&lt;value&gt;NOME_DO_SEU_MASTER:5431&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;mapred.framework.name&lt;\/name&gt;<br \/>\n&lt;value&gt;yarn&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>yarn-site.xml:<\/p>\n<div class=\"codigo\">&lt;configuration&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;yarn.resourcemanager.resource-tracker.address&lt;\/name&gt;<br \/>\n&lt;value&gt;NOME_DO_SEU_MASTER:8025&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;yarn.resourcemanager.scheduler.address&lt;\/name&gt;<br \/>\n&lt;value&gt;NOME_DO_SEU_MASTER:8035&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;yarn.resourcemanager.address&lt;\/name&gt;<br \/>\n&lt;value&gt;NOME_DO_SEU_MASTER:8050&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;\/configuration&gt;<\/div>\n<p>Todos os outros n\u00f3s precisam estar nomeados no seu <em>\/etc\/hosts<\/em>, como por exemplo:<\/p>\n<div class=\"codigo\">hadoopmaster [IP]<br \/>\nhadoopslave1 [IP]<br \/>\nhadoopslave2 [IP]<br \/>\nhadoopslave3 [IP]<br \/>\nhadoopslave4 [IP]<br \/>\nhadoopslave5 [IP]<br \/>\nhadoopslave6 [IP]<br \/>\nhadoopslave7 [IP]<br \/>\nhadoopslave8 [IP]<br \/>\nhadoopslave9 [IP]<\/div>\n<p>Agora, dois novos arquivos precisam ser criados dentro de <em>\/usr\/local\/hadoop\/etc\/hadoop<\/em>. <em>slaves<\/em> &#8211; que s\u00e3o todos os computadores que far\u00e3o parte do nosso cluster como &#8220;clientes&#8221;:<\/p>\n<div class=\"codigo\">hadoopslave1<br \/>\nhadoopslave2<br \/>\nhadoopslave3<br \/>\nhadoopslave4<br \/>\nhadoopslave5<br \/>\nhadoopslave6<br \/>\nhadoopslave7<br \/>\nhadoopslave8<br \/>\nhadoopslave9<\/div>\n<p><em>master<\/em> &#8211; que \u00e9 o computador respons\u00e1vel pelo gerenciamento dos n\u00f3s:<\/p>\n<div class=\"codigo\">hadoopmaster<\/div>\n<p>Teste de funcionamento: acesse http:\/\/localhost:8088<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<h1>REFER\u00caNCIAS<\/h1>\n<p>&nbsp;<\/p>\n<div>Livros:<\/p>\n<ul>\n<li>Tom White &#8211; Hadoop the definitive guide<\/li>\n<li>Chuck Lam &#8211; Hadoop in action<\/li>\n<li>Dirk deRoos, et al &#8211; Hadoop for dummines<\/li>\n<li>Sistemas distribu\u00eddos &#8211; TeS<\/li>\n<\/ul>\n<p>Artigo: MaCarmen Palacios D\u00edaz-Zorita &#8211; Evaluaci\u00f3n de la herramienta de c\u00f3digo libre Apache Hadoop<\/p>\n<p>Sites:<\/p>\n<ul>\n<li><a href=\"https:\/\/hadoop.apache.org\/docs\/r2.6.0\/\" target=\"_blank\" rel=\"nofollow\">Hadoop &#8211; Apache Hadoop 2.6.0<\/a><\/li>\n<li><a href=\"https:\/\/developer.yahoo.com\/blogs\/hadoop\/scalability-hadoop-distributed-file-system-452.html\" target=\"_blank\" rel=\"nofollow\">Scalability of the Hadoop Distributed File System | Konstantin V. Shvachko &#8211; Yahoo<\/a><\/li>\n<li><a href=\"https:\/\/mail-archives.apache.org\/mod_mbox\/hadoop-general\/201208.mbox\/%3C0C303878-A0CD-4E05-8381-22E3A6CF8619@hortonworks.com%3E\" target=\"_blank\" rel=\"nofollow\">Re: [VOTE] &#8211; Establish YARN as a sub-project of Apache Hadoop<\/a><\/li>\n<li><a href=\"https:\/\/opensource.com\/sites\/default\/files\/resize\/styles\/image-full-size\/public\/images\/life-uploads\/hadoop-EcoSys_yarn-640x418.PNG\" target=\"_blank\" rel=\"nofollow\">Imagem<\/a><\/li>\n<\/ul>\n<p>Instala\u00e7\u00e3o:<\/p>\n<ul>\n<li><a href=\"http:\/\/hadoop.apache.org\/docs\/r2.5.0\/hadoop-project-dist\/hadoop-common\/SingleCluster.html\" target=\"_blank\" rel=\"nofollow\">Apache Hadoop 2.5.2 &#8211; Hadoop MapReduce Next Generation 2.5.2 &#8211; Setting up a Single Node Cluster.<\/a><\/li>\n<li><a href=\"http:\/\/wiki.archlinux.org\/index.php\/Hadoop\" target=\"_blank\" rel=\"nofollow\">Hadoop &#8211; ArchWiki<\/a><\/li>\n<li><a href=\"http:\/\/cute-jumper.github.io\/linux\/2014\/09\/05\/install-hadoop-250-on-arch-linux\/\" target=\"_blank\" rel=\"nofollow\">Install Hadoop 2.5.0 on Arch Linux<\/a><\/li>\n<li><a href=\"http:\/\/chaalpritam.blogspot.com.br\/2015\/01\/hadoop-260-single-node-cluster-setup-on.html\" target=\"_blank\" rel=\"nofollow\">chaalpritam: Hadoop 2.6.0 Single Node Cluster Setup on Ubuntu 14.10<\/a><\/li>\n<li>The definitive guide. Tom white. 4\u00aa Edi\u00e7\u00e3o<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>O QUE \u00c9 O APACHE HADOOP &nbsp; Apache Hadoop \u00e9 um framework livre administrado pela Apache Software Foundation constru\u00eddo em Java para computa\u00e7\u00e3o distribu\u00edda, de alta escalabilidade, grande confiabilidade e toler\u00e2ncia a falhas. O Hadoop foi desenhado para trabalhar com modelos de programa\u00e7\u00e3o simples para o processamento de grandes volumes de dados (D\u00edaz-Zorita, 2011) usando [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[455,91,730,1,830,725,42,51,439,552,495,514,68,271,127,548],"tags":[131,968,260],"class_list":["post-4134","post","type-post","status-publish","format-standard","hentry","category-apache2","category-banco-de-dados","category-clusterweb","category-viazap","category-debian","category-hospedagem","category-leitura-recomendada","category-linux-linuxrs","category-midia","category-postgresql","category-profissional-de-ti","category-programacao","category-redes-2","category-seguranca-2","category-sistemas-de-armazenamento","category-ubuntu-2","tag-apache","tag-hadoop","tag-instalando"],"_links":{"self":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/4134","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4134"}],"version-history":[{"count":1,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/4134\/revisions"}],"predecessor-version":[{"id":4135,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/4134\/revisions\/4135"}],"wp:attachment":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}