1. 如何配置Hadoop環境
詳細環境配置介紹如下:
Hadoop版本為0.20.2.
JDK版本為1.6.0.
操作系統為FreeBSD8.0(最小化安裝)
vc3(192.168.1.3)是Namenode(Master),其他三台作為Datenode(slave).
Hadoop是Java語言編寫的機群程序,他的安裝時建立在ssh和JDK之上的,所以在配置Hadoop之前首先要對系統進行ssh和JDK的安裝與配置。
1.下面首先來通過ssh來實現Hadoop節點之間用戶的無密碼訪問。
(1).在各個節點的/etc/hosts文件中添加節點IP及對應機器名,並在各個節點上建立相同用戶名與密碼的賬戶。
修改/etc/hosts文件如下:
192.168.1.1 vc1
192.168.1.2 vc2
192.168.1.3 vc3
192.168.1.4 vc4
修改成功後就可以實現IP地址與機器名的對應解析。
在各個節點建立用戶名為Hadoop,密碼為123456的用戶。
(2).實現節點間通過ssh無密碼訪問。
在vc3的/home/hadoop目錄建立.ssh目錄。
mkdir .ssh //建立.ssh目錄
在/home/hadoop目錄下進行ssh配置。
ssh-keygen -t rsa //生成密匙對
cd /home/hadoop/.ssh
cp id_rsa.pub authorized_keys
chmod go-rwx authorized_keys //要正確設置文件的許可權644(即go-rwx)
scp -r /home/hadoop/.ssh vc1:/home/hadoop //將vc3中的.ssh文件夾內容復制到vc2節點的相同位置去。
scp -r /home/hadoop/.ssh vc2:/home/hadoop //同上
scp -r /home/hadoop/.ssh vc4:/home/hadoop //同上
(3).測試是否配置成功
同過ssh+機器名命令測試能否無密碼訪問其他計算機,如果無密碼訪問則配置成功。
例:vc1使用ssh vc3是否能無密碼訪問vc3,vc3使用ssh vc1是否能無密碼訪問vc1。(其他主機方法類似)
2.JDK的安裝
在這里利用ports安裝JDK。在安裝時要先下載如下幾個文件:
jdk-1_6_0_16-fcs-bin-b02-jrl-28_may_2008.jar
jdk-1_5_0_16-fcs-src-b02-jrl-28_may_2008.jar
tzupdater-1_3_12-2009a.zip
bsd-jdk16-patches-9.tar.bz2
diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2
到usr/ports/distfiles/目錄,然後進入/usr/ports/java/jdk16進行安裝。在這里需要說的是在安裝JDK的時候最好安裝最新版本,即1.6.0,否則在後面的Hadoop運行過程中可能會出錯。
cd /usr/ports/java/jdk16 //進入jdk安裝目錄
make install clean //安裝jdk
還有一種安裝方法是去Sun官網下載JDK軟體包jdk-6u12-Linux-i586.bin進行安裝。(我沒試過,不知道行不行,只是提一下。)把下載的JDK軟體放到/home/hadoop目錄下,給軟體加上可執行許可權,如下:
chmod a+x jdk-6u12-Linux-i586.bin
運行jdk-6u12-Linux-i586.bin進行安裝。
./jdk-6u12-Linux-i586.bin
安裝完成後會在當前目錄生成jkd1.6.0_12文件夾。把生成的文件夾復制到/usr/java文件夾中。
mkdir /usr/java //新建java文件夾
cp -r jkd1.6.0_12 /usr/java
下載設置環境變數,修改/etc/profile文件。在該文件中添加如下代碼:
export JAVA_HOME"/usr/java/jkd1.6.0_12"
export PATH="$PATH :$JAVA_HOME/bin:$JAVA_HOME/jre/bin:"
export CLASSPATH ="$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib"
保存後鍵入命令:
source /etc/profile
使環境變數設置生效。
安裝好JDK後可以通過which命令來測試JDK是否安裝成功:
which java
若是第一種方法顯示信息如下:
/usr/local/jdk1.6.0/bin/java
如是第二種方法顯示信息如下:
/usr/java/jkd1.6.0_12/bin/java
3.下來進行Hadoop的安裝和配置。
下載hadoop-0.20.2.tar.gz到/home/hadoop目錄,並解壓:
tar -vxzf hadoop-0.20.2.tar.gz //解壓hadoop到當前目錄
解壓完後進入/home/hadoop/hadoop-0.20.2/conf目錄進行配置。
cd /home/hadoop/hadoop-0.20.2/conf
(1).修改hadoop-env.sh配置文件如下:
export JAVA_HOME=/usr/local/jdk1.6.0
(2).修改masters和slaves配置文件如下:
masters文件:
192.168.1.3
slaves文件:
192.168.1.1
192.168.1.2
192.168.1.4
(3).修改core-site.xml文件如下:
<?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://202.113.88.73:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/tmp/hadoop/hadoop-${user.name}</value>
</property>
</configuration>
(4).修改hdfs-site.xml文件如下:
=====line 1 col 0 lines from top 1 ============================================
<?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>
(5).修改mapred-site.xml文件如下:
<?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>202.113.88.73:9001</value>
</property>
</configuration>
配置文件修改完畢後格式化Namenode(運行Hadoop之前必須先進行格式化),進入/home/hadoop/hadoop-0.20.2/目錄,命令如下:
./bin/hadoop namenode -format
格式化完畢後就可以運行Hadoop了,命令如下:
./bin/start-all.sh //在/home/hadoop/hadoop-0.20.2/目錄下運行
如果要停止運行如下命令:
./bin/stop-all.sh //在/home/hadoop/hadoop-0.20.2/目錄下運行
到此,Hadoop的配置已經完成了.
2. 如何配置Hadoop環境
如何配置Hadoop環境
eclipse下去」java「下配置環境變數位置即可。 第一步:點擊菜單欄的」windows「,之後選擇」preference「。 第二步:找到」java「菜單下的」installed「,之後在此頁面下點擊」add「。 第三步:找到」jdk「的安裝路徑,之後點擊」finsh「即可完成項目jdk環境變...
3. 如何配置Hadoop環境
Hadoop的偽分布式環境搭建(資源來於網路)
望採納,參考文獻:http://blog.csdn.net/u012342408/article/details/50520696
什麼是偽分布式?Hadoop 偽分布式模式是在一台機器上模擬Hadoop分布式,單機上的分布式並不是真正的分布式,而是使用線程模擬的分布式。分布式和偽分布式這兩種配置也很相似,唯一不同的地方是偽分布式是在一台機器上配置,也就是名位元組點(namenode)和數據節點(datanode)均是同一台機器。
需要配置的文件有core-site.xml和hdfs-site.xml這兩個文件他們都位於${HADOOP_HOME}/etc/hadoop/文件夾下。
其中core-site.xml:
1 <?xml version="1.0" encoding="UTF-8"?>
2 <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
3 <!--
4 Licensed ...
-->
18
19 <configuration>
20 <property>
21 <name>hadoop.tmp.dir</name>
22 <value>file:/home/hadoop/tmp</value>
23 <description>Abase for other temporary directories.</description>
24 </property>
25 <property>
26 <name>fs.default.name</name>
27 <value>hdfs://master:9000</value>
28 </property>
29 </configuration> 1234567891011121314151617
文件hdfs-site.xml的配置如下:
1 <?xml version="1.0" encoding="UTF-8"?>
2 <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
3 <!--
4 Licensed ...
-->
18
19 <configuration>
20 <property>
21 <name>dfs.replication</name>
22 <value>1</value>
23 </property>
24 <property>
25 <name>dfs.namenode.name.dir</name>
26 <value>file:/home/hadoop/tmp/dfs/name</value>
27 </property>
28 <property>
29 <name>dfs.datanode.data.dir</name>
30 <value>file:/home/hadoop/tmp/dfs/data</value>
31 </property>
32 </configuration>
配置完成後,執行格式化命令,使HDFS將制定的目錄進行格式化:
hdfs namenode -format1
若格式化成功,在臨近輸出的結尾部分可看到如下信息:
4. 配置單機hadoop 環境
你用0.21版本的吧? 這個不穩定,且不提供支持的,現在學的話找0.20版本的學吧。
HDFS not found可能是由於你的HADOOP_HOME沒有設置,
執行如下命令後再hdfs namenode -format:
export HADOOP_HOME="你的hadoop安裝路徑"
5. 如何配置Hadoop環境
安裝前設置
在安裝Hadoop之前,需要進入Linux環境下,連接Linux使用SSH(安全Shell)。按照下面提供的步驟設立Linux環境。
創建一個用
在開始時,建議創建一個單獨的用戶Hadoop以從Unix文件系統隔離Hadoop文件系統。按照下面給出的步驟來創建用戶:
使用 「su」 命令開啟root .
創建用戶從root帳戶使用命令 「useradd username」.
現在,可以使用命令打開一個現有的用戶帳戶「su username」.
打開Linux終端,輸入以下命令來創建一個用戶。
$ su
password:
# useradd hadoop
# passwd hadoop
New passwd:
Retype new passwd
SSH設置和密鑰生成
SSH設置需要在集群上做不同的操作,如啟動,停止,分布式守護shell操作。認證不同的Hadoop用戶,需要一種用於Hadoop用戶提供的公鑰/私鑰對,並用不同的用戶共享。
下面的命令用於生成使用SSH鍵值對。復制公鑰形成 id_rsa.pub 到authorized_keys 文件中,並提供擁有者具有authorized_keys文件的讀寫許可權。
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
安裝Java
Java是Hadoop的主要先決條件。首先,應該使用命令「java-version」驗證 java 存在在系統中。 Java version 命令的語法如下。
$ java -version
如果一切順利,它會給下面的輸出。
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)
如果Java還未安裝在系統中,那麼按照下面的給出的步驟來安裝Java。
第1步
下載Java(JDK<最新版> - X64.tar.gz)
然後JDK-7u71-linux-x64.tar.gz將被下載到系統。
第2步
一般來說,在下載文件夾中的Java文件。使用下面的命令提取 jdk-7u71-linux-x64.gz文件。
$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz
$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz
第3步
為了使Java提供給所有用戶,將它移動到目錄 「/usr/local/」。打開根目錄,鍵入以下命令。
$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit
第4步
用於設置PATH和JAVA_HOME變數,添加以下命令到~/.bashrc文件。
export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH=PATH:$JAVA_HOME/bin
現在從終端驗證 java -version 命令如上述說明。
下載Hadoop
下載來自Apache基金會軟體,使用下面的命令提取 Hadoop2.4.1。
$ su
password:
# cd /usr/local
# wget http //apache claz org/hadoop/common/hadoop-2.4.1/
hadoop-2.4.1.tar.gz
# tar xzf hadoop-2.4.1.tar.gz
# mv hadoop-2.4.1/* to hadoop/
# exit
Hadoop操作模式
下載 Hadoop 以後,可以操作Hadoop集群以以下三個支持模式之一:
本地/獨立模式:下載Hadoop在系統中,默認情況下之後,它會被配置在一個獨立的模式,用於運行Java程序。
模擬分布式模式:這是在單台機器的分布式模擬。Hadoop守護每個進程,如 hdfs, yarn, MapRece 等,都將作為一個獨立的java程序運行。這種模式對開發非常有用。
完全分布式模式:這種模式是完全分布式的最小兩台或多台計算機的集群。我們使用這種模式在未來的章節中。
在單機模式下安裝Hadoop
在這里,將討論 Hadoop2.4.1在獨立模式下安裝。
有單個JVM運行任何守護進程一切都運行。獨立模式適合於開發期間運行MapRece程序,因為它很容易進行測試和調試。
設置Hadoop
可以通過附加下面的命令到 ~/.bashrc 文件中設置 Hadoop 環境變數。
export HADOOP_HOME=/usr/local/hadoop
在進一步討論之前,需要確保Hadoop工作正常。發出以下命令:
$ hadoop version
如果設置的一切正常,那麼應該看到以下結果:
Hadoop 2.4.1
Subversion https://svn.apache.org/repos/asf/hadoop/common -r 1529768
Compiled by hortonmu on 2013-10-07T06:28Z
Compiled with protoc 2.5.0
From source with checksum
這意味著Hadoop在獨立模式下工作正常。默認情況下,Hadoop被配置為在非分布式模式的單個機器上運行。
6. 如何配置Hadoop環境
1)下載並解壓hadoop-0.20.203.0.修給解壓文件夾名字為hadoop-0.20.203
2)按上述所示將hadoop-0.20.203/bin路徑加到PATH環境變數中
sudo gedit/etc/profile
3)修改配置文件,配置文件都在hadoop-0.20.203/conf目錄下。
a.進到/hadoop-0.20.203/conf/hadoop-env.sh中,解注釋JAVA_HOME
修改為:JAVA_HOME=/home/hadoop/jdk1.6
b.修改core-site.xml文件配置如下:
<?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://namenode:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name> <!-hadoop的臨時文件位置->
<value>/home/hadoop/tmp</value>
</property>
</configuration>
c、修改hdfs-site.xml文件如下:
<?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>2</value>
</property>
</configuration>
d、修改mapred-site.xml文件如下:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-s www.hnne.com pecific property overrides in this file. -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>namenode:9001</value>
</property>
</configuration>
e、在masters和slave文件中分別配置主節點和各個數據節點:
masters:中寫入namenode
slaves: 寫入datanode1
datanode2
7. 如何配置Hadoop環境
1)下載並解壓hadoop-0.20.203.0.修給解壓文件夾名字為hadoop-0.20.203
2)按上述所示將hadoop-0.20.203/bin路徑加到PATH環境變數中
sudo gedit/etc/profile
3)修改配置文件,配置文件都在hadoop-0.20.203/conf目錄下。
a.進到/hadoop-0.20.203/conf/hadoop-env.sh中,解注釋JAVA_HOME
修改為:JAVA_HOME=/home/hadoop/jdk1.6
b.修改core-site.xml文件配置如下:
<?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://namenode:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name> <!-hadoop的臨時文件位置->
<value>/home/hadoop/tmp</value>
</property>
</configuration>
c、修改hdfs-site.xml文件如下:
<?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>2</value>
</property>
</configuration>
d、修改mapred-site.xml文件如下:
<?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>namenode:9001</value>
</property>
</configuration>
e、在masters和slave文件中分別配置主節點和各個數據節點:
masters:中寫入namenode
slaves: 寫入datanode1
datanode2
8. 如何配置hadoop環境變數
參考 export 變數。
環境變數就和變數一樣使用,echo 變數就出來了。
9. 如何配置Hadoop環境
1)下載並解壓hadoop-0.20.203.0.修給解壓文件夾名字為hadoop-0.20.203
2)按上述所示將hadoop-0.20.203/bin路徑加到PATH環境變數中
sudo gedit/etc/profile
3)修改配置文件,配置文件都在hadoop-0.20.203/conf目錄下。
a.進到/hadoop-0.20.203/conf/hadoop-env.sh中,解注釋JAVA_HOME
修改為:JAVA_HOME=/home/hadoop/jdk1.6
b.修改core-site.xml文件配置如下:
<?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://namenode:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name> <!-hadoop的臨時文件位置->
<value>/home/hadoop/tmp</value>
</property>
</configuration>
c、修改hdfs-site.xml文件如下:
<?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>2</value>
</property>
</configuration>
10. hadoop安裝環境變數具體怎麼設置
1)下載並解壓hadoop-0.20.203.0.修給解壓文件夾名字為hadoop-0.20.2032)按上述所示將hadoop-0.20.203/bin路徑加到PATH環境變數中sudogedit/etc/profile3)修改配置文件,配置文件都在hadoop-0.20.203/conf目錄下。a.進到/hadoop-0.20.203/conf/hadoop-env.sh中,解注釋JAVA_HOME修改為:JAVA_HOME=/home/hadoop/jdk1.6b.修改core-site.xml文件配置如下:fs.default.namehdfs://namenode:9000hadoop.tmp.dir/home/hadoop/tmpc、修改hdfs-site.xml文件如下:dfs.replication2