hadoop偽分布式安裝過程

hadoop 環(huán)境搭建

搭建的軟件版本

  • ubuntu 16.04
  • hadoop 2.6.5
  • java 1.8

在搭建hadoop環(huán)境之前,必須搭建好java的開發(fā)環(huán)境。

java環(huán)境

  • 在java官網(wǎng)上下載合適版本的jdk
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  • 解壓java安裝包
tar -zxvf jdk-8u181-linux-x64.tar.gz 

在/etc/profile中添加如下內(nèi)容:

export JAVA_HOME=/home/hadoop/jdk1.8.0_181  //此處替換jdk安裝路徑
export JAVA_JRE=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

hadoop環(huán)境搭建

創(chuàng)建hadoop用戶
sudo useradd -m hadoop   //創(chuàng)建hadoop用戶 
sudo passwd hadoop          //為hadoop用戶設(shè)置密碼
sudo adduser  hadoop sudo  //為hadoop用戶添加管理元權(quán)限
安裝ssh,配置無密登錄
sudo apt-get install openssh-server
  • 首次登錄,可能需要輸入密碼才可以,但是會(huì)在用戶文件夾下面創(chuàng)建.ssh的文件夾
 ssh localhost 

進(jìn)入用戶的.ssh文件夾下

cd ~/.ssh/                     # 若沒有該目錄,請(qǐng)先執(zhí)行一次ssh localhost
ssh-keygen -t rsa              # 會(huì)有提示,都按回車就可以
cat ./id_rsa.pub >> ./authorized_keys  # 加入授權(quán)

此時(shí)再登錄localhost就不用再輸入密碼。

在hadoop官網(wǎng)下載合適的版本,這里下載的hadoop2.6.5,下載地址:
http://mirror.bit.edu.cn/apache/hadoop/common/
  • 解壓
tar -zxvf hadoop-2.6.5.tar.gz

重命名解壓后的文件夾并給文件夾的權(quán)限給hadoop用戶

mv ./hadoop-2.6.5/ ./hadoop
sudo chown hadoop ./hadoop

進(jìn)入hadoop安裝目錄

cd /home/hadoop/hadoop
./bin/hadoop version

便可以看到hadoop的版本

hadoop單擊配置(非分布式)

非分布式的環(huán)境下無需進(jìn)行其他配置,可以直接跑hadoop里面附帶的例子

cd /home/hadoop/hadoop
mkdir ./input
cp ./etc/hadoop/*.xml ./input   # 將配置文件作為輸入文件
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/*  
hadoop 偽分布式環(huán)境配置

hadoop的配置文件再hadoo安裝目錄下的/etc/hadoop目錄下面,如在我的環(huán)境里就是 /home/hadoop/hadoop/etc/hadoop下面

  • 修改core-site.xml配置文件
<configuration>
        <property>
             <name>hadoop.tmp.dir</name>
             <value>file:/home/hadoop/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>

hadoop配置文件說明
Hadoop 的運(yùn)行方式是由配置文件決定的(運(yùn)行 Hadoop 時(shí)會(huì)讀取配置文件),因此如果需要從偽分布式模式切換回非分布式模式,需要?jiǎng)h除 core-site.xml 中的配置項(xiàng)。

此外,偽分布式雖然只需要配置 fs.defaultFS 和 dfs.replication 就可以運(yùn)行(官方教程如此),不過若沒有配置 hadoop.tmp.dir 參數(shù),則默認(rèn)使用的臨時(shí)目錄為 /tmp/hadoo-hadoop,而這個(gè)目錄在重啟時(shí)有可能被系統(tǒng)清理掉,導(dǎo)致必須重新執(zhí)行 format 才行。所以我們進(jìn)行了設(shè)置,同時(shí)也指定 dfs.namenode.name.dir 和 dfs.datanode.data.dir,否則在接下來的步驟中可能會(huì)出錯(cuò)。

配置完成之后需要格式化

./bin/hdfs namenode -format

格式化完成之后就可以啟動(dòng)hdfs

./sbin/start-dfs.sh

如果安裝java并且配置了環(huán)境變量,但是在啟動(dòng)時(shí)還是報(bào)錯(cuò):Error: JAVA_HOME is not set and could not be found. 則需要在hadoop/etc/hadoop(hadoop為hadoop安裝)目錄下修改hadoop-env.sh文件,在里面加入

export JAVA_HOME=/home/hadoop/jdk1.8.0_181
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 最近在實(shí)踐中感覺Hadoop避無可避,而安裝往往就體驗(yàn)一把從入門到放棄。盡管環(huán)境搭建現(xiàn)在越來越簡(jiǎn)單,但是還是有很多...
    羽恒閱讀 12,047評(píng)論 0 1
  • 一、系統(tǒng)參數(shù)配置優(yōu)化 1、系統(tǒng)內(nèi)核參數(shù)優(yōu)化配置 修改文件/etc/sysctl.conf,添加如下配置,然后執(zhí)行s...
    張偉科閱讀 3,926評(píng)論 0 14
  • hadoop Hadoop是一個(gè)由Apache基金會(huì)所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)。 Hadoop實(shí)現(xiàn)了一個(gè)分布式文件...
    編程鴨閱讀 1,260評(píng)論 0 3
  • 1.Linux安裝前的配置 1.1.關(guān)閉防火墻 本站文檔是假定「服務(wù)器在防火墻以內(nèi)」的前提下編纂的,在這個(gè)前提下...
    lao男孩閱讀 3,481評(píng)論 0 4
  • 版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。 目錄-[-]1 先決條件2 實(shí)驗(yàn)環(huán)境搭建 21 準(zhǔn)備工...
    三三At你閱讀 940評(píng)論 0 3

友情鏈接更多精彩內(nèi)容