在安裝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 mon/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, MapReduce 等,都將作為壹個獨立的java程序運行。這種模式對開發非常有用。
完全分布式模式:這種模式是完全分布式的最小兩臺或多臺計算機的集群。我們使用這種模式在未來的章節中。
在單機模式下安裝Hadoop
在這裏,將討論 Hadoop2.4.1在獨立模式下安裝。
有單個JVM運行任何守護進程壹切都運行。獨立模式適合於開發期間運行MapReduce程序,因為它很容易進行測試和調試。
設置Hadoop
可以通過附加下面的命令到 ~/.bashrc 文件中設置 Hadoop 環境變量。
export HADOOP_HOME=/usr/local/hadoop
在進壹步討論之前,需要確保Hadoop工作正常。發出以下命令:
$ hadoop version
如果設置的壹切正常,那麽應該看到以下結果:
Hadoop 2.4.1
Subversion mon -r 1529768
Compiled by hortonmu on 2013-10-07T06:28Z
Compiled with protoc 2.5.0
From source with checksum 79e53ce7994d1628b240f09af91e1af4
這意味著Hadoop在獨立模式下工作正常。默認情況下,Hadoop被配置為在非分布式模式的單個機器上運行。