Linux下Hadoop的安裝(單機版)


1.安裝前准備

1.1創建hadoop用戶

首先創建hadoop用戶組和用戶,如果對linux命令不熟悉,可以參考http://blog.csdn.net/huhui_bj/article/details/8878701中的命令。 [plain] view plaincopy
  1. addgroup hadoop //創建hadoop組  
  2. useradd hadoop -g hadoop -m //創建hadoop用戶並加入hadoop組  
  3. passwd hadoop //設置hadoop用戶密碼  

1.2下載hadoop安裝程序

我所用的是hadoop1.0.4,也是目前比較穩定的版本,下載地址:http://download.csdn.net/detail/huhui_bj/6028891 下載完之后,把文件放在hadoop用戶目錄的software目錄下,然后用tar命令解壓縮(請確保是用hadoop用戶解壓縮,否則需要改變文件夾的用戶和用戶組): [plain] view plaincopy
  1. tar -zxvf hadoop-1.0.4.tar.gz  

1.3安裝ssh

請確保你的Linux系統中已經安裝了ssh軟件,一般的Linux發行版都已經在安裝完操作系統之后自帶ssh軟件。如果沒有,執行以下命令安裝: [plain] view plaincopy
  1. sudo apt-get install ssh  

1.4安裝rsync

請確保你的Linux中已經安裝了rsync,不然,請執行以下命令安裝: [plain] view plaincopy
  1. sudo apt-get install rsync  

1.5配置ssh免密碼登錄

[plain] view plaincopy
  1. ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa  
  2. cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys  
如果在配置ssh免密碼登錄的時候出現了ssh: connect to host localhost port 22: Connection refused錯誤,解決的辦法如下:

第一步,在https://launchpad.net/ubuntu/lucid/i386/openssh-client/1:5.3p1-3ubuntu3

下載文件並安裝:$ sudo dpkg -i openssh-client_5.3p1-3ubuntu3_i386.deb 

第二步,在https://launchpad.net/ubuntu/lucid/i386/openssh-server/1:5.3p1-3ubuntu3

下載文件並安裝:$ sudo dpkg -i openssh-server_5.3p1-3ubuntu3_i386.deb 

第三步,在https://launchpad.net/ubuntu/lucid/i386/ssh/1:5.3p1-3ubuntu3

下載文件並安裝:$ sudo dpkg -i ssh_5.3p1-3ubuntu3_all.deb 


驗證ssh免登錄是否配置成功:

[plain] view plaincopy
  1. ssh localhost  

方法二:

[plain] view plaincopy
  1. #生成公鑰和私鑰  
  2. ssh-keygen -q -t rsa -N "" -f ~/.ssh/id_rsa  
  3. cd .ssh  
  4. cat id_rsa.pub > authorized_keys  
  5. chmod go-wx  authorized_keys  

出現如下信息,則說明ssh免登錄配置成功:


1.6安裝並配置JDK

JDK的安裝和配置,請參考博文http://blog.csdn.net/huhui_bj/article/details/8596388中關於JDK的安裝說明。

2.安裝並配置單機版Hadoop

2.1修改hadoop-env.sh

在hadoop目錄下的conf目錄下,找到hadoop-env.sh文件,將JAVA_HOME配置進去: [plain] view plaincopy
  1. vi conf/hadoop-env.sh  
添加JAVA_HOME:
[plain] view plaincopy
  1. JAVA_HOME=/home/hadoop/software/jdk1.6.0_21  

2.2修改hadoop的核心配置文件core-site.xml,配置HDFS的地址和端口號

[plain] view plaincopy
  1. vi conf/core-site.xml  
添加如下內容:
[html] view plaincopy
  1. <configuration>  
  2.      <property>  
  3.          <name>fs.default.name</name>  
  4.          <value>hdfs://localhost:9000</value>  
  5.      </property>  
  6. </configuration>  

2.3修改hadoop中HDFS的配置

[plain] view plaincopy
  1. vi conf/hdfs-site.xml  
添加如下內容:
[html] view plaincopy
  1. <configuration>  
  2.      <property>  
  3.          <name>dfs.replication</name>  
  4.          <value>1</value>  
  5.      </property>  
  6. </configuration>  

2.4修改hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口

[plain] view plaincopy
  1. vi conf/mapred-site.xml  
添加如下內容:
[html] view plaincopy
  1. <configuration>  
  2.      <property>  
  3.          <name>mapred.job.tracker</name>  
  4.          <value>localhost:9001</value>  
  5.      </property>  
  6. </configuration>  

以上就是單機版Hadoop的最小化配置

2.5格式化一個新的分布式文件系統

[plain] view plaincopy
  1. bin/hadoop namenode -format  

2.6啟動hadoop

[plain] view plaincopy
  1. bin/start-all.sh  

3.驗證Hadoop是否安裝成功

如果這兩個頁面能打開,說明你的hadoop已經安裝成功了。

3.1運行WordCount例子

在HDFS的根目錄下創建input文件夾(bin目錄下執行):[plain] view plaincopy
  1. ./hadoop fs -mkdir /input  
將start-all.sh文件放入hadoop的文件系統input目錄下:[plain] view plaincopy
  1. ./hadoop fs -put start-all.sh /input  
運行Wordount例子:
[plain] view plaincopy
  1. bin/hadoop jar hadoop-examples-1.0.4.jar  wordcount /input /output

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com