天天看點

在CentOS6.4 下以單機僞分布式模式安裝hadoop2.7.1在CentOS6.4 下以單機僞分布式模式安裝hadoop2.7.1

在CentOS6.4 下以單機僞分布式模式安裝hadoop2.7.1

本文記錄了我在Centos6.4 下以單機僞分布式模式安裝hadoop2.7.1的詳細過程,适合于hadoop入門使用。本文主要參考步驟來源自http://dblab.xmu.edu.cn/blog/install-hadoop/

  1. 安裝CentOS-6.4-x86_64(略)
  2. hadoop增加管理者操作權限
  3. 安裝java
  4. 安裝hadoop
  5. 配置ssh
  6. 設定防火牆
  7. 修改HOST映射

安裝CentOS-6.4-x86_64

安裝過程略,我是用vmware進行安裝,使用者名設定為hadoop

hadoop增加管理者操作權限

如遇到 “is not in the sudoers file”的問題,解決方案如下:

1、切換到root使用者

$ su -
$ visudo
           

2、移動光标,到最後一行

3、按a,進入append模式

4、輸入

5、按Esc

6、輸入“:w”(儲存檔案)

7、輸入“:q”(退出)

這樣就把自己加入了sudo組,可以使用sudo指令了。

安裝java

将jdk-7u76-linux-x64.tar.gz拷貝到CentOS中去,如桌面。将java安裝在/usr/java中

$ cd /home/hadoop/Desktop
$ sudo sudo tar -zxvf ./jdk-u76-linux-x64.tar.gz -C /usr
$ cd /usr/
$ sudo mv ./jdk-u76-linux-x64/ ./java
$ sudo chown -R hadoop:hadoop ./java
           

java解壓縮後可以使用,輸入以下指令判斷java是否可用:

$ cd ./java
$ ./bin/java
           

在~/.bashrc 中配置java運作環境變量

在檔案最前面添加如下單獨一行(注意 = 号前後不能有空格),并儲存:

export JAVA_HOME=/usr/java
           

讓該環境變量生效,需要執行以下代碼,看能否正确輸出JAVA_HOME的值

$ source ~/.bashrc
$ echo $JAVA_HOME
           

安裝hadoop

将下載下傳好的hadoop-2.7.1.tar.gz拷貝到CentOS系統中(如桌面),然後執行安裝。

$ cd /home/hadoop/Desktop
$ sudo tar -zxvf ./hadoop-..tar.gz -C /usr/local
$ cd /usr/local/
$ sudo mv ./hadoop-./ ./hadoop
$ sudo chown -R hadoop:hadoop ./hadoop
           

Hadoop解壓後即可使用。輸入如下指令來檢查 Hadoop 是否可用,成功則會顯示指令用法

$ cd ./hadoop
$ ./bin/hadoop
           

配置環境變量PATH

在檔案最前面加入如下單獨一行

讓該環境變量生效,需要執行以下代碼

$ source ~/.bashrc
           

Hadoop僞分布式配置

僞分布式需要修改2個配置檔案 core-site.xml 和 hdfs-site.xml 。

修改配置檔案 core-site.xml

修改成如下配置:

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>
           

同樣的,修改配置檔案 hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
      <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>
</configuration>
           

配置ssh免密碼登陸

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
$ export HADOOP\_PREFIX=/usr/local/hadoop
           

按此方式設定後,仍然無法實作免密碼登陸,需要再進行如下設定:

$ chown hadoop: /home/hadoop/.ssh  
$ chown hadoop: /home/hadoop/.ssh/*  
$ chmod  /home/hadoop/.ssh
$ chmod  /home/hadoop/.ssh/*  
           

安裝後,可以使用如下指令登陸本機:

$ ssh localhost
$ exit
           

配置防火牆

如果我們要遠端連接配接此台機器的話,需要保證9000端口開放。是以可以直接設定将防火牆關閉。

1) 永久性生效,重新開機後不會複原

開啟: chkconfig iptables on

關閉: chkconfig iptables off

2) 即時生效,重新開機後複原

開啟: service iptables start

關閉: service iptables stop

修改host映射

如果我們要遠端連接配接此台機器的話,必須将hostname映射的IP位址改為本機的位址

$  sudo vi /etc/hosts
           

将127.0.0.1 改為本機實際IP位址

将::1 localhost ….這行注釋掉

繼續閱讀