Hadoopの分散クラスタのセットアップおよび構成

A. Javaのインストール

Javaのダウンロード

公式サイトは、私が使用しています、適切なJDKをダウンロードするにはjdk-7u79-linux-x64.tar.gz、JDKのバージョンの例にに、その後、Java環境変数の設定

Javaディレクトリを作成します。

解凍JDKを格納するためには/ usr / localディレクトリの下のjavaディレクトリを作成します。

cd /usr/local
mkdir java

解凍JDK

javaディレクトリを入力します。

cd java
tar zxvf jdk-7u79-linux-x64.tar.gz

設定の環境変数

  1. プロフィールを編集ファイル
    cd /etc
    vim profile
    
  2. コンフィギュレーション・ファイルに次のように追加します
    export JAVA_HOME=/usr/local/java/jdk1.7.0_79
    export JRE_HOME=/usr/local/java/jdk1.7.0_79/jre
    export PATH=$PATH:/usr/local/java/jdk1.7.0_79/bin
    export CLASSPATH=./:/usr/local/java/jdk1.7.0_79/lib:/usr/local/jdk7/jdk1.7.0_79/jre/lib
    
  3. プロファイルファイルを更新
    source /etc/profile
    

II。インストールのHadoop

Hadoopのダウンロード

Hadoopの下のページは、私がダウンロードした右のバージョンを選択するために応じて需要をダウンロードしhadoop-2.7.3.tar.gz、インストール&設定、例えば、その後のHadoopのバージョンにに、

ディレクトリのHadoopを作成します。

ユーザーにディレクトリを作成してhadoop解凍を格納するディレクトリhadoop

cd /home/username
mkdir hadoop

[注]
username为用户名,需要根据实际情况决定

HadoopののEnvの設定

  1. 編集hadoop-env.shファイル
cd /home/username/hadoop/hadoop-2.7.3/etc/hadoop/
chmod +x hadoop-env.sh
vim hadoop-env.sh
  1. それらを変更export JAVA_HOME=${JAVA_HOME}しますexport JAVA_HOME=/usr/local/java/jdk1.7.0_79

  2. 実行hadoop-env.sh

./hadoop-env.sh

配置 core-site.xml

vim core-site.xml

Hadoopのファイルを実行しているときHDFSの名前ノードには、アドレスを指定し、格納ディレクトリが生成された指定します

<configuration>

  <property>
    <name>fs.default.name</name>
    <value>hdfs://hadoop-0:9000</value>
  </property>

  <property>
    <name>io.file.buffer.size</name>    
    <value>131072</value>    
  </property>

  <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/usr/local/hadoop/tmp</value>
  </property> 

</configuration>

設定HDFS-site.xmlの

vim hdfs-site.xml

HDFSのコピー数を指定します。

<configuration>

  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>

  <property>
    <name>dfs.name.dir</name>
    <value>file:/usr/local/hadoop/hdfs/name</value>
  </property>

 <property>
    <name>dfs.data.dir</name>
    <value>file:/usr/local/hadoop/hdfs/data</value>
  </property>

  <property>
    <name>dfs.namenode.secondary.http-address</name>            
    <value>hadoop-0:9001</value>           
  </property>

  <property>
    <name>dfs.webhdfs.enabled</name>             
    <value>true</value>              
  </property>

</configuration>

mapred-site.xmlの設定

1.重命名

mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml

2.以下を設定します

<configuration>

  <property>
  <name>mapreduce.framework.name</name>            
    <value>yarn</value>            
  </property>         

  <property>        
    <name>mapreduce.jobhistory.address</name>              
    <value>hadoop-0:10020</value>              
  </property>        

  <property>        
    <name>mapreduce.jobhistory.webapp.address</name>            
    <value>hadoop-0:19888</value>            
  </property>     

</configuration>

糸-site.xmlの設定

<configuration>

  <property>
    <name>yarn.nodemanager.aux-services</name>           
    <value>mapreduce_shuffle</value>           
  </property>      
        
  <property> 
    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value>             
  </property>        
        
  <property>    
    <name>yarn.resourcemanager.address</name>             
    <value>hadoop-0:8032</value>           
  </property>       
       
  <property>     
    <name>yarn.resourcemanager.scheduler.address</name>             
    <value>hadoop-0:8030</value>           
  </property>       
       
  <property>     
    <name>yarn.resourcemanager.resource-tracker.address</name>          
    <value>hadoop-0:8031</value>         
  </property>      
      
  <property>    
    <name>yarn.resourcemanager.admin.address</name>            
    <value>hadoop-0:8033</value>           
  </property>     
       
  <property>     
     <name>yarn.resourcemanager.webapp.address</name>          
     <value>hadoop-0:8088</value>        
  </property>     

</configuration>

コンフィギュレーション・マスターズ

vim masters

#内容填写
hadoop-0

コンフィギュレーション・マスターズ

vim slaves

#内容填写
hadoop-1
hadoop-2
hadoop-3
hadoop-4
hadoop-5

上記構成のHadoopは、各マシンにコピーし、次の操作を実行した後

行に名前ノード、1つのフォーマットのみをフォーマットします

hadoop namenode -format
cd /hadoop/hadoop-2.7.3/sbin
./start-all.sh
#根据提示输入密码,如果提示Java_Home,表示没修改hadoop-env.sh中的JAVA_HOME路径,修改完后需要再次执行hadoop-env.sh

#console
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
Starting namenodes on [hadoop-0]
intel@hadoop-0's password: 
hadoop-0: starting namenode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-namenode-hadoop-0.out
hadoop-4: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-4.out
hadoop-1: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-1.out
hadoop-2: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-2.out
hadoop-5: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-5.out
hadoop-3: starting datanode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-datanode-hadoop-3.out
Starting secondary namenodes [hadoop-0]
intel@hadoop-0's password: 
hadoop-0: starting secondarynamenode, logging to /usr/local/hadoop/hadoop-2.7.3/logs/hadoop-intel-secondarynamenode-hadoop-0.out
starting yarn daemons
starting resourcemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-resourcemanager-hadoop-0.out
hadoop-4: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-4.out
hadoop-5: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-5.out
hadoop-1: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-1.out
hadoop-2: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-2.out
hadoop-3: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.7.3/logs/yarn-intel-nodemanager-hadoop-3.out

テスト

1.コマンドJPS

    jps

内容に2.コンソール出力が成功したインストール構成を示しています

# Master上打印输出
7398 NameNode
6898 ResourceManager
7732 SecondaryNameNode
8336 Jps

#Slave上打印输出
5505 Jps
5121 NodeManager
4992 DataNode

テスト

Webページを開きます。httpを:// localhostを:8088 /クラスタノーマルビュー、hostaname実際の状況に応じて決定、例えば、私がいました172.16.1.23

MapReduce Hadoopクラスタシステムを提出する最初のタスク(語数)

hdfs dfs -mkdir -p /data/input    #在虚拟分布式文件系统上创建一个测试目录/data/input
hdfs dfs -put README.txt  /data/input   #将当前目录下的README.txt 文件复制到虚拟分布式文件系统中
hdfs dfs -ls /data/input    #查看文件系统中是否存在我们所复制的文件

#console
Found 1 items
-rw-r--r--   2 intel supergroup         44 2017-03-27 16:24 /data/input/readme.txt

ワードカウントタスクのHadoopに提出

hadoop jar hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /data/input /data/output/result

#console
17/03/27 16:30:06 INFO client.RMProxy: Connecting to ResourceManager at hadoop-0/172.16.1.23:8032
17/03/27 16:30:07 INFO input.FileInputFormat: Total input paths to process : 1
.
.
.


#查看result
hdfs dfs -cat /data/output/result/part-r-00000 

#console
!	1
Hi!	1
I	1
a	1
am	1
file	1
for	1
hadoop	1
mapreduce	1
test	1

主な問題!

Hadoopのユーザーが承認される必要があります。

sudo chown -R group:username hadoop/
sudo chown -R 用户名@用户组 目录名

オリジナル:ビッグボックス  Hadoopの分散クラスタのセットアップおよび構成


おすすめ

転載: www.cnblogs.com/chinatrump/p/11584799.html