hadoop2.7【單節點】單機、僞分佈、分佈式安裝指導

問題導讀

1.從本文部署實際部署,總結本地模式、僞分佈、分佈式的區別是什麼?
2.單機是不是僞分佈?
3.本地模式是否能夠運行mapreduce?




來源:about雲html

about雲開發

http://www.aboutyun.com/thread-12798-1-1.html


hadoop2.7發佈,這一版不太適合用於生產環境,可是並不影響學習:因爲hadoop安裝方式有三種,而且三種安裝方式均可以在前面的基礎上繼續配置,分別是:

node

  • 本地模式
  • 僞分佈
  • 分佈式



###############################################
1.準備

安裝jdk1.7參考
linux(ubuntu)安裝Java jdk環境變量設置及小程序測試

測試:
Java -version


安裝ssh

linux

sudo apt-get install ssh

 

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


最後達到無密碼登陸

apache

ssh localhost





安裝rsyncubuntu

sudo apt-get install rsync


修改網卡:
註釋掉127.0.1.1 ubuntu
添加新的映射
10.0.0.81 ubuntu


這裏必須修改,不然後面會遇到鏈接拒絕等問題

2.安裝

進入配置文件目錄

我這裏是

~/hadoop-2.7.0/etc/hadoop




修改配置文件:
etc/hadoop/hadoop-env.sh

添加JAVA_HOME、HADOOP_COMMON_HOME小程序

export JAVA_HOME=/usr/jdk
export HADOOP_COMMON_HOME=~/hadoop-2.7.0


配置環境變量

sudo nano /etc/environment

增長hadoop配置
將下面添加到變量PATH中ssh

/home/aboutyun/hadoop-2.7.0/bin:/home/aboutyun/hadoop-2.7.0/sbin:






########################################################
3.本地模式驗證[可忽略]

所謂的本地模式:在運行程序的時候,好比wordcount是在本地磁盤運行的
上面已經配置完畢,咱們對其測試,分別執行面命令:
注意: bin/hadoop的執行條件是在hadoop_home中,我這裏是分佈式

  $ mkdir input

 

$ cp etc/hadoop/*.xml input



$bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep input output 'dfs[a-z.]+'




$ cat output/*




##################################################################
上面本地模式,咱們知道就能夠,咱們下面繼續配置僞分佈模式
4.僞分佈模式

我這裏的全路徑:/home/aboutyun/hadoop-2.7.0/etc/hadoop


修改文件etc/hadoop/core-site.xml
添加以下內容:
含義:接收Client鏈接的RPC端口,用於獲取文件系統metadata信息。oop

<configuration>
  <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>







修改etc/hadoop/hdfs-site.xml:
添加以下內容:
含義:備份只有一份學習

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>




5.僞分佈模式

1.格式化namenode

hdfs namenode -format

有的地方使用

bin/hdfs namenode -format

若是配置的環境變量直接使用hdfs namenode -format便可

2.啓動集羣

start-dfs.sh




這時候單節點僞分佈就已經安裝成功了

驗證
輸入下面

http://localhost:50070/

若是是在虛擬機中安裝,可是在宿主主機中訪問,須要輸入虛擬機ip地址
這裏虛擬機ip地址是10.0.0.81



因此,我這裏是

http://10.0.0.81:50070/






配置到這裏也是能夠的,咱們一樣能夠運行wordcount,也就是咱們的mapreduce不運行在yarn上。若是想讓程序運行在yarn上,繼續下面配置
#####################################################

6.配置Yarn

1.修改配置文件
修改配置文件mapred-site.xml
編輯文件etc/hadoop/mapred-site.xml,添加下面內容因爲etc/hadoop中沒有mapred-site.xml,因此對mapred-queues.xml.template複製一份

cp mapred-site.xml.template mapred-site.xml

而後編輯文件mapred-site.xml
添加

<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>


最後形式:



修改配置文件yarn-site.xml

添加以下內容:

  <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>







2.啓動yarn

start-yarn.sh




(因爲我這裏已經配置了環境變來那個,因此在哪一個地方均可以運行start-yarn.sh)
若是你沒有配置環境變量,則須要進入hadoop_home,執行下面命令

sbin/start-yarn.sh


3.驗證
啓動yarn以後,輸入

http://localhost:8088/

便可看到下面界面




下一篇hadoop2.7 運行wordcount

遇到問題

問題1:

Error: Could not find or load main class 

org.apache.hadoop.hdfs.server.namenode.NameNode



解決辦法:
在~/hadoop-2.7.0/etc/hadoop/hadoop-env.sh中添加

export HADOOP_COMMON_HOME=~/hadoop-2.7.0

重啓生效

問題2:
格式化Java_home not found

bin/hdfs namenode -format

在/etc/environment 中添加

export JAVA_HOME=/usr/jdk



生效

source /etc/environment

重啓[如還不行,重啓]

sudo init 6
相關文章
相關標籤/搜索