搭建Hadoop偽分布式環(huán)境

  • 軟硬件環(huán)境
    CentOS 7.4 64位
    OpenJDK- 1.8
    Hadoop- 2.7

安裝SSH客戶端

安裝SSH:
sudo yum install opensh-clients openssh-server
安裝完成后舰攒,可以使用下面命令進(jìn)行測(cè)試:
ssh localhost

安裝JAVA環(huán)境

  • 安裝JDK
    使用 yum 來(lái)安裝1.7版本OpenJDK:
    sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel
    安裝完成后久信,輸入 javajavac 命令,如果能輸出對(duì)應(yīng)的命令幫助壳咕,則表明jdk已正確安裝辕漂。
  • **配置JAVA環(huán)境變量
    執(zhí)行命令:
    編輯 ~/.bashrc包各,在結(jié)尾追加:
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
    保存文件后執(zhí)行下面命令使 JAVA_HOME 環(huán)境變量生效:
    source ~/.bashrc
    為了檢測(cè)系統(tǒng)中 JAVA 環(huán)境是否已經(jīng)正確配置并生效那伐,可以分別執(zhí)行下面命令:
java -version
$JAVA_HOME/bin/java -version

若兩條命令輸出的結(jié)果一致,且都為我們前面安裝的 openjdk-1.8.0 的版本絮短,則表明 JDK 環(huán)境已經(jīng)正確安裝并配置江兢。

安裝Hadoop

  • 下載Hadoop
    本教程使用 hadoop-2.7 版本,使用 wget 工具在線下載(注:如果下載失敗或報(bào)錯(cuò)丁频,可以自己在網(wǎng)上找到國(guó)內(nèi)其他一個(gè)鏡像源下載 2.7 版本的 hadoop 即可):
    wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz
  • 安裝Hadoop
    將 hadoop 安裝到 /usr/local 目錄下:
    tar -zxf hadoop-2.7.6.tar.gz -C /usr/local
    對(duì)安裝的目錄進(jìn)行重命名,便于后續(xù)操作方便:
cd /usr/local
mv ./hadoop-2.7.6/ ./hadoop

檢查Hadoop是否已經(jīng)正確安裝:
/usr/local/hadoop/bin/hadoop version
如果成功輸出hadoop的版本信息,表明hadoop已經(jīng)成功安裝席里。

Hadoop 偽分布式環(huán)境配置

Hadoop偽分布式模式使用多個(gè)守護(hù)線程模擬分布的偽分布運(yùn)行模式叔磷。

  • **設(shè)置 Hadoop 的環(huán)境變量
    編輯 ~/.bashrc,在結(jié)尾追加如下內(nèi)容:
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

使Hadoop環(huán)境變量配置生效:
source ~/.bashrc

  • **修改 Hadoop 的配置文件
    Hadoop的配置文件位于安裝目錄的 /etc/hadoop 目錄下奖磁,在本教程中即位于 /url/local/hadoop/etc/hadoop 目錄下改基,需要修改的配置文件為如下兩個(gè):
/usr/local/hadoop/etc/hadoop/core-site.xml
/usr/local/hadoop/etc/hadoop/hdfs-site.xml

編輯 core-site.xml,修改
<configuration></configuration>節(jié)點(diǎn)的內(nèi)容為如下所示:

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>location to store temporary files</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

同理咖为,編輯 hdfs-site.xml秕狰,修改
<configuration></configuration>節(jié)點(diǎn)的內(nèi)容為如下所示:

<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>
  • 格式化 NameNode
    格式化NameNode:
    /usr/local/hadoop/bin/hdfs namenode -format
    在輸出信息中看到如下信息,則表示格式化成功:
    Storage directory /usr/local/hadoop/tmp/dfs/name has been successfully formatted. Exiting with status 0
  • 啟動(dòng) NameNode 和 DataNode 守護(hù)進(jìn)程
    啟動(dòng) NameNode 和 DataNode 進(jìn)程:
    關(guān)于如何啟動(dòng)
    執(zhí)行過(guò)程中會(huì)提示輸入用戶密碼躁染,輸入 root 用戶密碼即可鸣哀。另外,啟動(dòng)時(shí)ssh會(huì)顯示警告提示是否繼續(xù)連接吞彤,輸入 yes 即可。
    檢查 NameNode 和 DataNode 是否正常啟動(dòng):
    jps
    如果NameNode和DataNode已經(jīng)正常啟動(dòng),會(huì)顯示NameNode渴杆、DataNode和SecondaryNameNode的進(jìn)程信息:
[hadoop@VM_80_152_centos ~]$ jps
3689 SecondaryNameNode
3520 DataNode
3800 Jps
3393 NameNode

運(yùn)行 Hadoop 偽分布式實(shí)例

Hadoop自帶了豐富的例子墓陈,包括 wordcount、grep埋嵌、sort 等破加。下面我們將以grep例子為教程,輸入一批文件雹嗦,從中篩選出符合正則表達(dá)式 dfs[a-z.]+ 的單詞并統(tǒng)計(jì)出現(xiàn)的次數(shù)拌喉。

  • 查看 Hadoop 自帶的例子
    Hadoop 附帶了豐富的例子, 執(zhí)行下面命令可以查看:
cd /usr/local/hadoop
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar
  • 在 HDFS 中創(chuàng)建用戶目錄
    在log4j日志中去除告警信息。
    //usr/local/hadoop/etc/hadoop/log4j.properties文件中添加
    log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR
    在 HDFS 中創(chuàng)建用戶目錄 hadoop:
    /usr/local/hadoop/bin/hdfs dfs -mkdir -p /user/hadoop
  • 準(zhǔn)備實(shí)驗(yàn)數(shù)據(jù)
    本教程中俐银,我們將以 Hadoop 所有的 xml 配置文件作為輸入數(shù)據(jù)來(lái)完成實(shí)驗(yàn)尿背。執(zhí)行下面命令在 HDFS 中新建一個(gè) input 文件夾并將 hadoop 配置文件上傳到該文件夾下:
cd /usr/local/hadoop
./bin/hdfs dfs -mkdir /user/hadoop/input
./bin/hdfs dfs -put ./etc/hadoop/*.xml /user/hadoop/input

使用下面命令可以查看剛剛上傳到 HDFS 的文件:
/usr/local/hadoop/bin/hdfs dfs -ls /user/hadoop/input

  • 運(yùn)行實(shí)驗(yàn)
cd /usr/local/hadoop
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar grep /user/hadoop/input /user/hadoop/output 'dfs[a-z.]+'

上述命令以 HDFS 文件系統(tǒng)中的 input 為輸入數(shù)據(jù)來(lái)運(yùn)行 Hadoop 自帶的 grep 程序,提取其中符合正則表達(dá)式 dfs[a-z.]+ 的數(shù)據(jù)并進(jìn)行次數(shù)統(tǒng)計(jì)捶惜,將結(jié)果輸出到 HDFS 文件系統(tǒng)的 output 文件夾下田藐。

  • 查看運(yùn)行結(jié)果
    上述例子完成后的結(jié)果保存在 HDFS 中,通過(guò)下面命令查看結(jié)果:
    /usr/local/hadoop/bin/hdfs dfs -cat /user/hadoop/output/*
    如果運(yùn)行成功吱七,可以看到如下結(jié)果:
1       dfsadmin
1       dfs.replication
1       dfs.namenode.name.dir
1       dfs.datanode.data.dir
  • 刪除 HDFS 上的輸出結(jié)果
    刪除 HDFS 中的結(jié)果目錄:
    /usr/local/hadoop/bin/hdfs dfs -rm -r /user/hadoop/output
    運(yùn)行 Hadoop 程序時(shí)汽久,為了防止覆蓋結(jié)果,程序指定的輸出目錄不能存在踊餐,否則會(huì)提示錯(cuò)誤景醇,因此在下次運(yùn)行前需要先刪除輸出目錄。
  • 關(guān)閉 Hadoop 進(jìn)程
    關(guān)閉 Hadoop 進(jìn)程:
    /usr/local/hadoop/sbin/stop-dfs.sh
    再起啟動(dòng)只需要執(zhí)行下面命令:
    /usr/local/hadoop/sbin/start-dfs.sh

部署完成

轉(zhuǎn)自 騰訊云開(kāi)發(fā)者實(shí)驗(yàn)室

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末吝岭,一起剝皮案震驚了整個(gè)濱河市三痰,隨后出現(xiàn)的幾起案子吧寺,更是在濱河造成了極大的恐慌,老刑警劉巖散劫,帶你破解...
    沈念sama閱讀 222,807評(píng)論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件稚机,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡获搏,警方通過(guò)查閱死者的電腦和手機(jī)赖条,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)常熙,“玉大人纬乍,你說(shuō)我怎么就攤上這事÷阄溃” “怎么了仿贬?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,589評(píng)論 0 363
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)彼城。 經(jīng)常有香客問(wèn)我诅蝶,道長(zhǎng),這世上最難降的妖魔是什么募壕? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,188評(píng)論 1 300
  • 正文 為了忘掉前任调炬,我火速辦了婚禮,結(jié)果婚禮上舱馅,老公的妹妹穿的比我還像新娘缰泡。我一直安慰自己,他們只是感情好代嗤,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,185評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布棘钞。 她就那樣靜靜地躺著,像睡著了一般干毅。 火紅的嫁衣襯著肌膚如雪宜猜。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,785評(píng)論 1 314
  • 那天硝逢,我揣著相機(jī)與錄音姨拥,去河邊找鬼。 笑死渠鸽,一個(gè)胖子當(dāng)著我的面吹牛叫乌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播徽缚,決...
    沈念sama閱讀 41,220評(píng)論 3 423
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼憨奸,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了凿试?” 一聲冷哼從身側(cè)響起排宰,我...
    開(kāi)封第一講書(shū)人閱讀 40,167評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤似芝,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后额各,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體国觉,經(jīng)...
    沈念sama閱讀 46,698評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡吧恃,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,767評(píng)論 3 343
  • 正文 我和宋清朗相戀三年虾啦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片痕寓。...
    茶點(diǎn)故事閱讀 40,912評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡傲醉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出呻率,到底是詐尸還是另有隱情硬毕,我是刑警寧澤,帶...
    沈念sama閱讀 36,572評(píng)論 5 351
  • 正文 年R本政府宣布礼仗,位于F島的核電站吐咳,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏元践。R本人自食惡果不足惜韭脊,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,254評(píng)論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望单旁。 院中可真熱鬧沪羔,春花似錦、人聲如沸象浑。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,746評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)愉豺。三九已至篓吁,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蚪拦,已是汗流浹背杖剪。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,859評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留外盯,地道東北人摘盆。 一個(gè)月前我還...
    沈念sama閱讀 49,359評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像饱苟,于是被迫代替她去往敵國(guó)和親孩擂。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,922評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 一箱熬、系統(tǒng)參數(shù)配置優(yōu)化 1类垦、系統(tǒng)內(nèi)核參數(shù)優(yōu)化配置 修改文件/etc/sysctl.conf狈邑,添加如下配置,然后執(zhí)行s...
    張偉科閱讀 3,758評(píng)論 0 14
  • 最近在實(shí)踐中感覺(jué)Hadoop避無(wú)可避蚤认,而安裝往往就體驗(yàn)一把從入門到放棄米苹。盡管環(huán)境搭建現(xiàn)在越來(lái)越簡(jiǎn)單,但是還是有很多...
    羽恒閱讀 11,674評(píng)論 0 1
  • 設(shè)置固定IP地址及網(wǎng)關(guān) 設(shè)置IP 設(shè)置網(wǎng)關(guān) 設(shè)置DNS 重啟網(wǎng)卡 測(cè)試網(wǎng)絡(luò) 設(shè)置主機(jī)名對(duì)應(yīng)IP地址 添加Hadoo...
    isgiker閱讀 1,884評(píng)論 0 1
  • 八 像一只頑皮的小獸 他孜孜不倦 追趕著自己的影子 一腳腳地踩在它身上 也一步步 把童真趕走 十八 是一朵含苞的...
    風(fēng)相雨閱讀 229評(píng)論 3 11
  • 創(chuàng)業(yè)和中彩票都是那么的困難砰琢。上班才是每一天的必修課蘸嘶。大部分人的一生都是殘酷而短暫的∨闫可能有少數(shù)人想閑卻閑不下...
    千年桃樹(shù)閱讀 166評(píng)論 0 0