hadoop安裝配置
Hadoop 安裝配置教程
VMware: 11.0.0 build-2305329
Ubuntu版本:14.04.1
Jdk: jdk-6u45-linux-x64.bin
Hadoop: hadoop-0.20.2.tar.gz
-
首先安裝JDK,可以到oracle官網上去下載你所需版本(http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u41-oth-JPR)
-
下載完成后,使用將文件拷貝到/home/vincent/目錄下
-
更改權限;默認文件沒有可執行權限
Sudo chmod 777 jdk-6u45-linux-x64.bin
-
使用命令:cd ~ ,
進入到/home/Vincent/目錄下
接下來就是解壓了
-
解壓完成后,得到jdk1.6.0_45文件夾
-
使用命令:vi /etc/profile 編輯profile文件,在profile文件后面添加下面的語句:
#set java enviroment
JAVA_HOME=/home/vincent/jdk1.6.0_45/
export JRE_HOME=/home/vincent/jdk1.6.0_45/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
{
注意:在此版本中,vi編輯器有可能會和方向鍵沖突,
問題:
ubuntu中vi在編輯狀態下方向鍵不能用,還有回格鍵不能刪除等我們平時習慣的一些鍵都不能使用。
方案一:
解決辦法:
可以安裝vim full版本,在full版本下鍵盤正常,安裝好后同樣使用vi命令。
安裝vim:
ubuntu預裝的是vim tiny版本,而需要的是vim full版本。執行下面的語句安裝vim full版本:
$sudo apt-get remove vim-common
$sudo apt-get install vim
這樣就行了,vim是一款優秀的軟件,可以在運用中體會到。
(推薦使用)方案二:
在vi命令行使用命令“:set nocompatible”,就是設置vi不使用兼容模式。
}
-
接下來重啟Ubuntu
-
重啟后測試jkd
出現這個說明安裝成功
-
接下來安裝Hadoop
安裝ssh服務
ssh可以實現遠程登錄和管理,詳細情況請google百度
ubuntu默認并沒有安裝ssh服務,如果通過ssh鏈接ubuntu,需要自己手動安裝ssh-server。命令行:
sudo apt-get install openssh-server
測試出入命令: ps –e |grep ssh
出現sshd說明安裝成功
-
終端下進入hadoop源碼包所在目錄,使用復制命令把hadoop源碼包復制到/home/hadoop下
cp hadoop-0.20.2.tar.gz /home/hadoop
然后解壓,命令行如下
tar -xzvf *.tar.gz
-
配置hadoop的hadoop/conf下的hadoop-env.sh,core-site.xml,mapred-site.xml,hdfs-site.xml
-
1)配置hadoop-0.20.2/conf/hadoop-env.sh,命令行:
gedit /home/hadoop/hadoop-0.20.2/conf/hadoop-env.sh
2) ctrl + f 搜索到JAVA_HOME
把前面的#去掉,加上本系統jdk路徑,保存退出
-
配置hadoop-0.20.2/conf/core-site.xml,命令行:
gedit /home/hadoop/hadoop-0.20.2/conf/core-site.xml
在hadoop新建hadoop_tmp目錄,原因是:http://blog.csdn.net/bychjzh/article/details/7830508
將如下<configuration> </configuration>之間的添加進入,保存退出:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-0.20.2/hadoop_tmp</value>
<description>A base for other temporary directories.</description>
</property>
</configuration>
-
配置hadoop-1.2.1/conf/mapre-site.xml,命令行:
gedit /home/hadoop/ hadoop-0.20.2/conf/mapre-site.xml.xml
將如下<configuration> </configuration>之間的添加進入,保存退出
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
-
配置hadoop-0.20.2/conf/hdfs-site.xml,命令行:
gedit /home/hadoop/ hadoop-0.20.2/conf/hdfs-site.xml
將如下<configuration> </configuration>之間的添加進入,保存退出
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
至此hadoop的安裝配置已經完畢,稍后的是hadoop的初次運行操作
-
格式化hdfs文件系統
進入hadoop-0.20.2/bin
當你看到下圖時
恭喜你,hdsf文件系統格式化成功
-
啟動hadoop服務
出現如下畫面
-
jps是查看java虛擬機運行的java線程
然后出現如下畫面
不計jps,有五個hadoop相關線程,恭喜你,hadoop安裝配置成功,運行正常。
然后可以退出hadoop。,以后再用時再啟動,導入數據。
-
測試:
瀏覽器輸入http://127.0.0.1:50030/
瀏覽器輸入http://127.0.0.1:50070/
-
分布式Hadoop
-
a) 首先再次新建一個Ubuntu虛擬機
-
b) 并且安裝openssh-server
-
c) 查看此虛擬機的IP地址:192.168.114.132
-
d) 在第一個虛擬機中執行:
這樣就把jdk復制到新建的虛擬機中了
-
配置如下信息:
hadoop-env.sh
core-site.xml
hdfs-site.xml
mapred-site.xml
masters
slaves
拷貝Hadoop-0.20.2到其他虛擬機中:
sudo scp -r hadoop-0.20.2/ vincent@192.168.114.132:~/home/
-
ssh無密碼登錄
創建ssh-key,這里我們采用rsa方式,命令行如下:
ssh-keygen -t rsa -P ""
在master中,運行./start-all 的時候,會出現 cannot mv ……permission deny,是因為權限的問題,在slave中設置Hadoop0.20.2權限,chmod –r 777 /hadoop0.20.2 (注意-R 選項)
在master中啟動./start-all.sh時候在master中有
在slave中有tasktracker和jps,但是沒有datanode,在輸入網址時 http://192.168.114.128:50030/ 中node值為0;
查看日志,原來在slave中沒有設置 dfs.data.dir : /usr/hadoop-0.20.2/data 的權限,在slave中使用命令 設置該權限:
注意命令選項 –R ,意思是該路徑下的所有文件