欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

目錄

柚子快報(bào)邀請(qǐng)碼778899分享:Hadoop簡(jiǎn)介

柚子快報(bào)邀請(qǐng)碼778899分享:Hadoop簡(jiǎn)介

http://yzkb.51969.com/

簡(jiǎn)介

大數(shù)據(jù)簡(jiǎn)介

概述

大數(shù)據(jù)的說(shuō)法從出現(xiàn)到現(xiàn)在,也經(jīng)歷了十多年時(shí)間的發(fā)展。而在這十幾年的發(fā)展過(guò)程中,非常多的機(jī)構(gòu)、組織都試圖對(duì)大數(shù)據(jù)做出過(guò)定義,例如:研究機(jī)構(gòu)Gartner給出了這樣的定義:"大數(shù)據(jù)"是需要新處理模式才能具有更強(qiáng)的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化能力的海量、高增長(zhǎng)率和多樣化的信息資產(chǎn)。再例如根據(jù)維基百科的定義,大數(shù)據(jù)是指無(wú)法在可承受的時(shí)間范圍內(nèi)用常規(guī)軟件工具進(jìn)行捕捉、管理和處理的數(shù)據(jù)集合。

特征(6V)

經(jīng)過(guò)十幾年的發(fā)展,對(duì)大數(shù)據(jù)進(jìn)行總結(jié),總結(jié)出來(lái)如下特征:

1)Volume:數(shù)據(jù)量大,包括采集、存儲(chǔ)和計(jì)算的量都非常大。大數(shù)據(jù)的起始計(jì)量單位至少是T、P(1024個(gè)T)、E(100萬(wàn)個(gè)T)或Z(10億個(gè)T)。到目前為止,人類所生產(chǎn)的所有印刷材料(書本、雜志、報(bào)刊等)的數(shù)據(jù)量大約是200PB,而歷史上全人類總共說(shuō)過(guò)的話的數(shù)據(jù)量大約是5EB。當(dāng)前,典型個(gè)人計(jì)算機(jī)硬盤的容量為TB量級(jí),而一些大企業(yè)的數(shù)據(jù)量已經(jīng)接近或者達(dá)到EB量級(jí)。

2)Variety:種類樣式和來(lái)源多樣化。包括結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù),具體表現(xiàn)為網(wǎng)絡(luò)日志、音頻、視頻、圖片、地理位置信息等等,多類型的數(shù)據(jù)對(duì)數(shù)據(jù)的處理能力提出了更高的要求。

3)Value:數(shù)據(jù)價(jià)值密度相對(duì)較低,或者說(shuō)是浪里淘沙卻又彌足珍貴。隨著互聯(lián)網(wǎng)以及物聯(lián)網(wǎng)的廣泛應(yīng)用,信息感知無(wú)處不在,信息海量,但價(jià)值密度較低,如何結(jié)合業(yè)務(wù)邏輯并通過(guò)強(qiáng)大的機(jī)器算法來(lái)挖掘數(shù)據(jù)價(jià)值是大數(shù)據(jù)時(shí)代最需要解決的問(wèn)題。

4)Velocity:數(shù)據(jù)增長(zhǎng)速度快,處理速度也快,時(shí)效性要求比較高。這是大數(shù)據(jù)區(qū)分于傳統(tǒng)數(shù)據(jù)挖掘的最顯著特征。根據(jù)IDC(Internet Data Center,互聯(lián)網(wǎng)數(shù)據(jù)中心)的"數(shù)字宇宙"的報(bào)告,到2020年,全球數(shù)據(jù)使用量將達(dá)到35.2ZB。在如此海量的數(shù)據(jù)面前,處理數(shù)據(jù)的效率就是企業(yè)的生命。

5)Veracity:數(shù)據(jù)的準(zhǔn)確性和可信賴度,即數(shù)據(jù)的質(zhì)量。隨著網(wǎng)絡(luò)的發(fā)展,數(shù)據(jù)的準(zhǔn)確性和可信賴度都越來(lái)越挑戰(zhàn)數(shù)據(jù)的認(rèn)知和發(fā)展。

6)Valence:大數(shù)據(jù)之間的連通性,指的是大數(shù)據(jù)各個(gè)產(chǎn)業(yè)、各個(gè)模塊之間的關(guān)聯(lián)性。

7)隨著大數(shù)據(jù)的發(fā)展,又增加了Vitality(動(dòng)態(tài)性)、Visualization(可視化)、Validity(合法性)等。

Hadoop簡(jiǎn)介

概述

Hadoop本身是由Yahoo!公司開發(fā)的后來(lái)貢獻(xiàn)給了Apache的一套開源的、可靠的分布式架構(gòu)

Hadoop提供了簡(jiǎn)單的編程模型能夠?qū)Υ罅康臄?shù)據(jù)進(jìn)行分布式處理(The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models.)

Hadoop能夠輕松的從一臺(tái)服務(wù)器擴(kuò)展到上千臺(tái)服務(wù)器,并且每一臺(tái)服務(wù)器都能夠進(jìn)行本地計(jì)算和存儲(chǔ)(It is designed to scale up from single servers to thousands of machines, each offering local computation and storage.)

Hadoop本身提供了用于處理和探測(cè)異常的機(jī)制(Rather than rely on hardware to deliver high-availability, the library itself is designed to detect and handle failures at the application layer)。

主流發(fā)行版本

經(jīng)過(guò)多年發(fā)展,市面上產(chǎn)生了繁多的Hadoop版本,這些版本可以分為收費(fèi)版和免費(fèi)版/社區(qū)版。其中使用的比較多的是Apache、CDH和HDP三大發(fā)行版。

Apache版本:最原始(最基礎(chǔ))的版本,對(duì)于入門學(xué)習(xí)最好,可以讓初學(xué)者掌握更多的細(xì)節(jié)。

Cloudera版本:

1)2008年成立的Cloudera是最早將Hadoop商用的公司,為合作伙伴提供Hadoop的商用解決方案,主要是包括支持、咨詢服務(wù)、培訓(xùn)。在2009年,Hadoop之父Doug Cutting也加盟Cloudera公司。

2)Cloudera產(chǎn)品主要為CDH,Cloudera Manager,Cloudera Support。CDH是Cloudera提供的Hadoop發(fā)行版,完全開源,比Apache Hadoop在兼容性,安全性,穩(wěn)定性上有所增強(qiáng);Cloudera Manager是集群的軟件分發(fā)及管理監(jiān)控平臺(tái),可以在幾個(gè)小時(shí)內(nèi)部署好一個(gè)Hadoop集群,并對(duì)集群的節(jié)點(diǎn)及服務(wù)進(jìn)行實(shí)時(shí)監(jiān)控;Cloudera Support即是對(duì)Hadoop的技術(shù)支持。

3)Cloudera的標(biāo)價(jià)為每年每個(gè)節(jié)點(diǎn)4000美元。

4)Cloudera開發(fā)并貢獻(xiàn)了可實(shí)時(shí)處理大數(shù)據(jù)的Impala項(xiàng)目。

Hortonworks Hadoop版本:

1)2011年成立的Hortonworks是雅虎與硅谷風(fēng)投公司Benchmark Capital合資組建。公司成立之初就吸納了大約25名至30名專門研究Hadoop的雅虎工程師,上述工程師均在2005年開始協(xié)助雅虎開發(fā)Hadoop,貢獻(xiàn)了Hadoop80%的代碼。雅虎工程副總裁、雅虎Hadoop開發(fā)團(tuán)隊(duì)負(fù)責(zé)人Eric Baldeschwieler出任Hortonworks的首席執(zhí)行官。

2)Hortonworks的主打產(chǎn)品是Hortonworks Data Platform(HDP),也同樣是100%開源的產(chǎn)品,HDP除常見(jiàn)的項(xiàng)目外還包括了Ambari(一款開源的安裝和管理系統(tǒng))。

3)HCatalog,一個(gè)元數(shù)據(jù)管理系統(tǒng),HCatalog現(xiàn)已集成到Facebook開源的Hive中。Hortonworks的Stinger開創(chuàng)性的極大的優(yōu)化了Hive項(xiàng)目。Hortonworks為入門提供了一個(gè)非常好的,易于使用的沙盒。

4)Hortonworks開發(fā)了很多增強(qiáng)特性并提交至核心主干,這使得Apache Hadoop能夠在包括Window Server和Windows Azure在內(nèi)的Microsoft Windows平臺(tái)上本地運(yùn)行。

5)定價(jià)以集群為基礎(chǔ),每10個(gè)節(jié)點(diǎn)每年為12500美元。

Hortonworks被Cloudera收購(gòu),合并推出了新的商用版Hadoop:CDP。目前收費(fèi)是10000美金/節(jié)點(diǎn)/每年。從2021年1月31日開始,之前所有的CDH和HDP都必須付費(fèi)才能使用。

模塊

截止到目前為止(2023年06月30日),Hadoop官網(wǎng)顯示,一共包含了四大模塊:

1)Hadoop Common:公共模塊,提供了Hadoop的一些基本jar包(The common utilities that support the other Hadoop modules.)

2)Hadoop Distributed FileSystem(HDFS):分布式文件存儲(chǔ)系統(tǒng)(A distributed file system that provides high-throughput access to application data.)

3)Hadoop YARN:用于進(jìn)行任務(wù)調(diào)度和資源管理的機(jī)制(A framework for job scheduling and cluster resource management.)

4)Hadoop MapReduce:基于YARN的分布式計(jì)算系統(tǒng)(A YARN-based system for parallel processing of large data sets.)

版本

Hadoop發(fā)展到現(xiàn)在,一共有三大版本:

1)Hadoop1.X:最原始的版本,包含了Common,HDFS和MapReduce模塊,目前市面上已經(jīng)停止流通;

2)Hadoop2.X:包含了Common,HDFS,MapReduce和YARN模塊,后續(xù)的高版本中還包含了Ozone模塊。注意,Hadoop2.X和Hadoop1.X不兼容;

3)Hadoop3.X:包含了Common,HDFS,MapReduce,YARN和Ozone模塊,和Hadoop2.X部分兼容。

需要注意的是,不同于其他的一些框架,除了Hadoop1.x已經(jīng)停止維護(hù)和使用,Hadoop2.X和Hadoop3.X在官網(wǎng)均有維護(hù)和更新,且更新版本較為混亂。所以在選擇Hadoop版本的時(shí)候,需要考慮Hadoop版本和其他框架的兼容性問(wèn)題。

Hadoop發(fā)展歷程(了解)

創(chuàng)始人

Doug Cutting:是一位軟件設(shè)計(jì)師,也是開源搜索技術(shù)的倡導(dǎo)者和創(chuàng)造者。他創(chuàng)建了Lucene,并與Mike Cafarella創(chuàng)建了Nutch,這些項(xiàng)目現(xiàn)在通過(guò)Apache Software Foundation進(jìn)行管理。Cutting和Cafarella也是Apache Hadoop的聯(lián)合創(chuàng)始人,不過(guò)相對(duì)Doug的貢獻(xiàn)更大一些,所以Doug也被尊稱為Hadoop之父。

Mike Cafarella:一位專攻數(shù)據(jù)庫(kù)管理系統(tǒng)的計(jì)算機(jī)科學(xué)家。他是密歇根大學(xué)的計(jì)算機(jī)學(xué)科的副教授。Mike與Doug Cutting一起創(chuàng)建了Hadoop以及Nutch這兩個(gè)開源項(xiàng)目。

命名

Hadoop這個(gè)名字不是一個(gè)縮寫,也不是一個(gè)單詞,而是一個(gè)虛構(gòu)的名字。該項(xiàng)目的創(chuàng)建者,Doug Cutting解釋Hadoop的得名:"這個(gè)名字是我孩子給一個(gè)棕黃色的大象玩具命名的。我的命名標(biāo)準(zhǔn)就是簡(jiǎn)短,容易發(fā)音和拼寫,沒(méi)有太多的意義,并且不會(huì)被用于別處。小孩子恰恰是這方面的高手"。

發(fā)展歷程

1)2002年,Doug Cutting和Mike Cafarella在設(shè)計(jì)搜索引擎Nutch的時(shí)候,爬取了整個(gè)互聯(lián)網(wǎng),一共獲得了10億個(gè)網(wǎng)頁(yè)數(shù)據(jù)。因?yàn)榛ヂ?lián)網(wǎng)的數(shù)據(jù)大多數(shù)是非結(jié)構(gòu)化的,所以無(wú)法存儲(chǔ)在傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)中。且由于數(shù)據(jù)量巨大,所以傳統(tǒng)的單機(jī)模式也無(wú)法存儲(chǔ)。

2)2003年,Google發(fā)表一篇關(guān)于集群系統(tǒng)存儲(chǔ)的論文:(簡(jiǎn)稱為GFS),這篇論文詳細(xì)的闡述了分布式存儲(chǔ)的思想和原理,但是Google并沒(méi)有對(duì)外公開使用GFS。

3)2004年,Cutting在基于GFS的基礎(chǔ)上設(shè)計(jì)了NDFS(Nutch Distributed File System)。NDFS和GFS的不同之處在于,GFS是使用C語(yǔ)言實(shí)現(xiàn)的,而NDFS是使用Java語(yǔ)言實(shí)現(xiàn)的。至此,解決了第一個(gè)問(wèn)題:分布式存儲(chǔ)的問(wèn)題。但是接踵而來(lái)的是第二個(gè)問(wèn)題,如何對(duì)分布式存儲(chǔ)的數(shù)據(jù)進(jìn)行分析和計(jì)算呢?

4)2004年,Google發(fā)表了另一篇關(guān)于集群系統(tǒng)計(jì)算的論文:,這篇論文同樣詳細(xì)的闡述了分布式計(jì)算的思想和原理,但是同樣Google沒(méi)有對(duì)外公開使用MapReduce。

5)2005年,Doug根據(jù)谷歌的論文設(shè)計(jì)了在Nutch中使用的MapReduce。同樣,二者的區(qū)別就是實(shí)現(xiàn)語(yǔ)言的不同。至此,分布式計(jì)算問(wèn)題解決,Nutch也可以正式使用。

6)而在Nutch0.8之后,Doug發(fā)現(xiàn)分布式存儲(chǔ)和計(jì)算不止可以用于Nutch,還可以用于其他很多領(lǐng)域,因此Doug將NDFS模塊以及MapReduce模塊獨(dú)立出來(lái),重命名為Hadoop,并將NDFS重命名為HDFS(Hadoop Distributed File System)。

7)2006年,Doug Cutting加入了Yahoo,雅虎為此專門成立了專門的團(tuán)隊(duì)和資源,將Hadoop發(fā)展成能夠以Web網(wǎng)絡(luò)規(guī)模運(yùn)行的系統(tǒng)。

8)Doug Cutting在Yahoo的工作期間,先后設(shè)計(jì)了Hive,Pig,HBase等。

9)后來(lái)Yahoo將Hadoop、Hive、Pig、HBase等貢獻(xiàn)給了Apache。

安裝和編譯

編譯

本次編譯以Hadoop3.2.4版本為基礎(chǔ)進(jìn)行。

1)進(jìn)入目錄,上傳或者下載Hadoop3.2.4源碼包。

# 進(jìn)入軟件的預(yù)裝目錄

cd /opt/presoftware

# 下載Hadoop的源碼包

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.2.4/hadoop-3.2.4-src.tar.gz

2)解壓:

tar -xvf hadoop-3.2.4-src.tar.gz -C /opt/source

?3)進(jìn)入Hadoop的源碼包:

cd /opt/source/hadoop-3.2.4-src

4)執(zhí)行編譯命令:

mvn -X clean package -Pdist,native,docs -DskipTests -Dtar -Dmaven.skip.test=true -Dmaven.javadoc.skip=true -Denforcer.skip=true

如果編譯過(guò)程中提示缺少DynamoDBLocal,則上傳的jar包之后,執(zhí)行:

mvn install:install-file \

-Dfile=DynamoDBLocal-1.11.86.jar \

-DgroupId=com.amazonaws \

-DartifactId=DynamoDBLocal \

-Dversion=1.11.86 \

-Dpackaging=jar

然后重新編譯即可。

5)編譯完成后,進(jìn)入目錄:

cd hadoop-dist/target

即可見(jiàn)到編譯產(chǎn)生的安裝包。

安裝

偽分布式

安裝Hadoop之前,需要先安裝JDK1.8(最好是JDK1.8.255及以上版本),關(guān)閉防火墻。

1)修改主機(jī)名:

vim /etc/hostname

# 將主機(jī)名改為自己指定的主機(jī)名,例如:

hadoop01

修改完成之后保存退出。

2)進(jìn)行IP映射:

vim /etc/hosts

# 添加IP映射,例如

192.168.160.151 hadoop01

修改完成之后保存退出。

3)關(guān)閉SELINUX:

vim /etc/selinux/config

# 將SELINUX屬性改為disabled

SELINUX=disabled

保存退出。

4)重啟:

reboot

5)配置免密登錄:

# 產(chǎn)生密鑰

ssh-keygen

# 傳輸公鑰

ssh-copy-id root@hadoop01

# 測(cè)試

ssh hadoop01

# 如果不需要密碼,則退出

logout

6)上傳或者下載Hadoop安裝包:

# 進(jìn)入軟件的預(yù)裝目錄

cd /opt/presoftware

# 官網(wǎng)下載地址

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.2.4/hadoop-3.2.4.tar.gz

7)解壓:

tar -xvf hadoop-3.2.4.tar.gz -C /opt/software

8)進(jìn)入Hadoop配置目錄:

cd /opt/software/hadoop-3.2.4/etc/hadoop/

9)編輯文件:

vim hadoop-env.sh

# 添加屬性

export JAVA_HOME=/opt/software/jdk1.8

export HADOOP_CONF_DIR=/opt/software/hadoop-3.2.4/etc/hadoop

# 保存退出,重新生效

source hadoop-env.sh

10)編輯文件:

vim core-site.xml

在文件中添加:

fs.default.name

hdfs://hadoop01:9000

hadoop.tmp.dir

/opt/software/hadoop-3.2.4/tmp

hadoop.http.staticuser.user

root

hadoop.proxyuser.root.hosts

*

hadoop.proxyuser.root.groups

*

hadoop.proxyuser.root.users

*

保存退出。

11)編輯文件:

vim hdfs-site.xml

在文件中添加:

dfs.replication

1

保存退出。

12)編輯文件:

vim mapred-site.xml

在文件中添加:

mapreduce.framework.name

yarn

yarn.app.mapreduce.am.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

mapreduce.map.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

mapreduce.reduce.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

保存退出。

13)編輯文件:

vim yarn-site.xml

在文件中添加:

yarn.resourcemanager.hostname

hadoop01

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.nodemanager.env-whitelist

JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME

保存退出。

14)編輯文件:

vim workers

# 刪除掉原來(lái)的localhost,添加指定的主機(jī)名,例如

hadoop01

保存退出。

15)進(jìn)入Hadoop的子目錄sbin下:

cd /opt/software/hadoop-3.2.4/sbin/

16)修改文件:

vim start-dfs.sh

# 在文件頭部添加

HDFS_DATANODE_USER=root

HDFS_DATANODE_SECURE_USER=hdfs

HDFS_NAMENODE_USER=root

HDFS_SECONDARYNAMENODE_USER=root

保存退出。

17)修改文件:

vim stop-dfs.hs

# 在文件頭部添加

HDFS_DATANODE_USER=root

HDFS_DATANODE_SECURE_USER=hdfs

HDFS_NAMENODE_USER=root

HDFS_SECONDARYNAMENODE_USER=root

保存退出。

18)修改文件:

vim start-yarn.sh

# 在文件頭部添加

YARN_RESOURCEMANAGER_USER=root

HDFS_DATANODE_SECURE_USER=yarn

YARN_NODEMANAGER_USER=root

保存退出。

19)修改文件:

vim stop-yarn.sh

# 在文件頭部添加

YARN_RESOURCEMANAGER_USER=root

HDFS_DATANODE_SECURE_USER=yarn

YARN_NODEMANAGER_USER=root

保存退出。

20)配置環(huán)境變量:

vim /etc/profile.d/hadoophome.sh

export HADOOP_HOME=/opt/software/hadoop-3.2.4

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

# 保存退出,重新生效

source /etc/profile.d/hadoophome.sh

# 檢查環(huán)境變量是否配置正確

hadoop version

21)格式化NameNode:

hdfs namenode -format

如果出現(xiàn):

Storage directory /opt/software/hadoop-3.2.3/tmp/dfs/name has been successfully formatted.

則表示格式化成功。

22)啟動(dòng)Hadoop:

start-all.sh

23)命令查看:

jps

# 應(yīng)該出現(xiàn)如下進(jìn)程

Jps

NameNode

DataNode

SecondaryNameNode

ResourceManager

NodeManager

24)可以通過(guò)主機(jī)名:9870的方式來(lái)查看HDFS的頁(yè)面。

25)可以通過(guò)主機(jī)名:8088的方式來(lái)查看YARN的頁(yè)面。

完全分布式安裝(重要)

至少需要準(zhǔn)備3個(gè)節(jié)點(diǎn)。安裝Hadoop之前,需要先安裝JDK1.8(最好是JDK1.8.255及以上版本),關(guān)閉防火墻。節(jié)點(diǎn)部署如下表-1所示:

表-1 進(jìn)程分布

進(jìn)程/節(jié)點(diǎn) hadoop01 hadoop02 hadoop03 NameNode √ SecondaryNameNode √ DataNode √ √ √ ResourceManager √ NodeManager √ √ √ JobHistoryServer √

1)修改三個(gè)節(jié)點(diǎn)的主機(jī)名:

#?編輯文件

vim /etc/hostname

# 刪除掉原來(lái)的名稱,添加自己的主機(jī)名,例如第一個(gè)節(jié)點(diǎn)設(shè)置為hadoop01,第二個(gè)節(jié)點(diǎn)設(shè)置為hadoop02,第三個(gè)節(jié)點(diǎn)設(shè)置為hadoop03

修改完成之后保存退出。

2)進(jìn)行IP映射。注意,此時(shí)需要將三個(gè)節(jié)點(diǎn)的主機(jī)名和IP全部進(jìn)行映射!

#?編輯文件

vim /etc/hosts

#?在文件末尾添加映射,例如:

192.168.160.151 hadoop01

192.168.160.152 hadoop02

192.168.160.153 hadoop03

保存退出。

3)關(guān)閉SELINUX:

#?編輯文件

vim /etc/selinux/config

#?將selinux屬性的值改為disabled

SELINUX=disabled

保存退出。

4)重啟:

reboot

5)所有節(jié)點(diǎn)之間相互免密互通:

#?產(chǎn)生密鑰

ssh-keygen

#?拷貝公鑰

ssh-copy-id root@hadoop01

ssh-copy-id root@hadoop02

ssh-copy-id root@hadoop03

#?測(cè)試是否免密

ssh hadoop01 # 如果不需要密碼,輸入logout

ssh hadoop02?# 如果不需要密碼,輸入logout

ssh hadoop03?# 如果不需要密碼,輸入logout

6)進(jìn)入軟件預(yù)裝目錄,上傳或者下載Hadoop的安裝包:

#?進(jìn)入目錄

cd /opt/presoftware/

#?官網(wǎng)下載地址

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.2.4/hadoop-3.2.4.tar.gz

7)解壓:

tar -xvf hadoop-3.2.4.tar.gz -C /opt/software/

8)進(jìn)入Hadoop的配置目錄:

cd /opt/software/hadoop-3.2.4/etc/hadoop/

9)修改文件:

#?編輯文件

vim hadoop-env.sh

#?在文件中添加

export JAVA_HOME=/opt/software/jdk1.8

export HADOOP_CONF_DIR=/opt/software/hadoop-3.2.4/etc/Hadoop

# 保存退出,生效

source hadoop-env.sh

10)編輯文件:

vim core-site.xml

在文件中添加:

fs.default.name

hdfs://hadoop01:9000

hadoop.tmp.dir

/opt/software/hadoop-3.2.4/tmp

hadoop.http.staticuser.user

root

hadoop.proxyuser.root.hosts

*

hadoop.proxyuser.root.groups

*

hadoop.proxyuser.root.users

*

保存退出。

11)編輯文件:

vim hdfs-site.xml

在文件中添加:

dfs.namenode.http-address

hadoop01:9870

dfs.namenode.secondary.http-address

hadoop02:9868

dfs.replication

1

保存退出。

12)編輯文件:

vim mapred-site.xml

在文件中添加:

mapreduce.framework.name

yarn

yarn.app.mapreduce.am.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

mapreduce.map.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

mapreduce.reduce.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

保存退出。

13)編輯文件:

vim yarn-site.xml

在文件中添加:

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.resourcemanager.hostname

hadoop03

yarn.nodemanager.env-whitelist

JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME

yarn.scheduler.minimum-allocation-mb

512

yarn.scheduler.maximum-allocation-mb

4096

yarn.nodemanager.resource.memory-mb

4096

yarn.nodemanager.pmem-check-enabled

false

yarn.nodemanager.vmem-check-enabled

false

保存退出。

14)編輯文件:

vim workers

#?刪除掉原來(lái)的數(shù)據(jù),添加三個(gè)節(jié)點(diǎn)的主機(jī)名,例如:

hadoop01

hadoop02

hadoop03

保存退出。

15)進(jìn)入Hadoop的命令目錄:

cd ../../sbin/

16)修改文件:

vim start-dfs.sh

#?在文件頭部添加

HDFS_DATANODE_USER=root

HDFS_DATANODE_SECURE_USER=root

HDFS_NAMENODE_USER=root

HDFS_SECONDARYNAMENODE_USER=root

保存退出。

17)修改文件:

vim stop-dfs.sh

#?在文件頭部添加

HDFS_DATANODE_USER=root

HDFS_DATANODE_SECURE_USER=root

HDFS_NAMENODE_USER=root

HDFS_SECONDARYNAMENODE_USER=root

保存退出。

18)編輯文件:

vim start-yarn.sh

#?在文件頭部添加

YARN_RESOURCEMANAGER_USER=root

YARN_NODEMANAGER_USER=root

HDFS_DATANODE_SECURE_USR=root

保存退出。

19)編輯文件:

vim stop-yarn.sh

# 在文件頭部添加

YARN_RESOURCEMANAGER_USER=root

YARN_NODEMANAGER_USER=root

HDFS_DATANODE_SECURE_USR=root

保存退出。

20)配置歷史服務(wù)器(可選)。

cd ../etc/hadoop/

#?編輯文件

vim mapred-site.xml

在文件中添加:

mapreduce.jobhistory.address

hadoop02:10020

mapreduce.jobhistory.webapp.address

hadoop02:19888

21)?日志聚集(可選)。當(dāng)任務(wù)在運(yùn)行過(guò)程中,會(huì)產(chǎn)生大量的日志。那么此時(shí)日志分布在不同的服務(wù)器上,希望將日志匯聚上傳到HDFS上,這個(gè)過(guò)程稱之為日志聚集/匯聚。通過(guò)日志聚集,可以比較容易的查看程序的運(yùn)行日志,方便對(duì)程序進(jìn)行調(diào)試。

#?編輯文件

vim yarn-site.xml

在文件中添加:

yarn.log-aggregation-enble

true

yarn.log.server.url

http://hadoop02:19888/jobhistory/logs

yarn.log-aggregation.retain-seconds

604800

22)遠(yuǎn)程分發(fā):

#?回到安裝目錄

cd /opt/software/

# 遠(yuǎn)程拷貝給其他的節(jié)點(diǎn)

scp -r hadoop-3.2.4/ root@hadoop02:$PWD

scp -r hadoop-3.2.4/ root@hadoop03:$PWD

23)配置環(huán)境變量:

# 編輯文件

vim /etc/profile.d/hadoophome.sh

# 在文件中添加

export HADOOP_HOME=/opt/software/hadoop-3.2.4

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

#?保存退出,生效

source /etc/profile.d/hadoophome.sh

# 測(cè)試

hadoop version

24)在第一個(gè)節(jié)點(diǎn)上格式化NameNode:

hdfs namenode -format

如果出現(xiàn):

Storage directory /opt/software/hadoop-3.2.4/tmp/dfs/name has been successfully formatted.

則表示格式化成功。

25)在第一個(gè)節(jié)點(diǎn)上啟動(dòng)HDFS:

start-dfs.sh

26)在第三個(gè)節(jié)點(diǎn)上啟動(dòng)YARN:

start-yarn.sh

27)在第二個(gè)節(jié)點(diǎn)上啟動(dòng)歷史服務(wù)器:

mapred --daemon start historyserver

28)查看進(jìn)程:

jps

#?hadoop01

Jps

NameNode

DataNode

NodeManager

#?hadoop02

Jps

DataNode

SecondaryNameNode

NodeManager

JobHistoryServer

#?hadoop03

Jps

DataNode

ResourceManager

NodeManager

29)可以通過(guò)主機(jī)名:9870的方式來(lái)查看HDFS的頁(yè)面。

30)可以通過(guò)主機(jī)名:8088的方式來(lái)查看YARN的頁(yè)面。

完全分布式高可用模式

環(huán)境準(zhǔn)備:至少需要準(zhǔn)備3個(gè)節(jié)點(diǎn),安裝Hadoop之前,需要先安裝JDK1.8(最好是JDK1.8.255及以上版本),關(guān)閉防火墻,需要安裝好Zookeeper(最好是Zookeeper3.5及以上版本)。進(jìn)程分布如下表-2所示:

表-2 進(jìn)程分布

進(jìn)程/節(jié)點(diǎn) ha01 ha02 ha03 NameNode √ √ √ DataNode √ √ √ JournalNode √ √ √ ResourceManager √ √ NodeManager √ √ √ DFSZKFailoverController √ √ √ QuorumPeerMain √ √ √ JobHistoryServer √

1)修改主機(jī)名:

#?編輯文件

vim /etc/hostname

# 刪除掉原來(lái)的,添加自己的主機(jī)名,例如第一個(gè)節(jié)點(diǎn)為ha01,第二個(gè)節(jié)點(diǎn)為ha02,第三個(gè)節(jié)點(diǎn)為ha03

修改完成之后保存退出。

2)進(jìn)行IP映射:

#?編輯文件

vim /etc/hosts

# 添加IP映射,例如

192.168.160.161 ha01

192.168.160.162 ha02

192.168.160.163 ha03

保存退出。

3)關(guān)閉SELINUX:

#?編輯文件

vim /etc/selinux/config

#?將selinux屬性值改為disabled

SELINUX=disabled

保存退出。

4)重啟:

reboot

5)配置免密互通:

#?產(chǎn)生密鑰

ssh-keygen

#?拷貝公鑰

ssh-copy-id root@ha01

ssh-copy-id root@ha02

ssh-copy-id root@ha02

#?測(cè)試

ssh ha01 # 如果不需要密碼,輸入logout

ssh ha02 # 如果不需要密碼,輸入logout

ssh ha03 # 如果不需要密碼,輸入logout

6)進(jìn)入軟件預(yù)裝目錄,上傳或者下載Hadoop的安裝包:

# 進(jìn)入預(yù)裝目錄

cd /opt/presoftware/

# 官網(wǎng)下載地址

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.2.4/hadoop-3.2.4.tar.gz

7)解壓:

tar -xvf hadoop-3.2.4.tar.gz -C /opt/software/

8)進(jìn)入Hadoop的配置目錄:

cd /opt/software/hadoop-3.2.4/etc/hadoop/

9)編輯文件:

#?編輯文件

vim hadoop-env.sh

#?在文件中添加

export JAVA_HOME=/opt/software/jdk1.8

export HADOOP_CONF_DIR=/opt/software/hadoop-3.2.4/etc/hadoop

#?保存退出,生效

source hadoop-env.sh

10)編輯文件:

vim core-site.xml

在文件中添加:

fs.defaultFS

hdfs://ns

hadoop.tmp.dir

/opt/software/hadoop-3.2.4/tmp

ha.zookeeper.quorum

ha01:2181,ha02:2181,ha03:2181

hadoop.http.staticuser.user

root

hadoop.proxyuser.root.hosts

*

hadoop.proxyuser.root.groups

*

hadoop.proxyuser.root.users

*

保存退出。

11)修改文件:

vim hdfs-site.xml

在文件中添加:

dfs.nameservices

ns

dfs.ha.namenodes.ns

nn1,nn2,nn3

dfs.namenode.rpc-address.ns.nn1

ha01:9000

dfs.namenode.rpc-address.ns.nn2

ha02:9000

dfs.namenode.rpc-address.ns.nn3

ha03:9000

dfs.namenode.http-address.ns.nn1

ha01:9870

dfs.namenode.http-address.ns.nn2

ha02:9870

dfs.namenode.http-address.ns.nn3

ha03:9870

dfs.namenode.shared.edits.dir

????qjournal://ha01:8485;ha02:8485;ha03:8485/ns

dfs.journalnode.edits.dir

/opt/software/hadoop-3.2.4/tmp/journal

dfs.namenode.name.dir

file:///opt/software/hadoop-3.2.4/tmp/hdfs/name

dfs.datanode.data.dir

file:///opt/software/hadoop-3.2.4/tmp/hdfs/data

dfs.ha.automatic-failover.enabled

true

dfs.client.failover.proxy.provider.ns

org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider

dfs.ha.fencing.methods

sshfence

dfs.ha.fencing.ssh.private-key-files

/root/.ssh/id_rsa

dfs.replication

3

dfs.permissions

false

保存退出。

12)修改文件:

vim mapred-site.xml

在文件中添加:

mapreduce.framework.name

yarn

yarn.app.mapreduce.am.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

mapreduce.map.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

mapreduce.reduce.env

HADOOP_MAPRED_HOME=/opt/software/hadoop-3.2.4

mapreduce.jobhistory.address

ha02:10020

mapreduce.jobhistory.webapp.address

ha02:19888

保存退出。

13)修改文件:

vim yarn-site.xml

在文件中添加:

yarn.resourcemanager.ha.enabled

true

yarn.resourcemanager.cluster-id

ns-yarn

yarn.resourcemanager.ha.rm-ids

rm1,rm2

yarn.resourcemanager.hostname.rm1

ha01

yarn.resourcemanager.hostname.rm2

ha03

yarn.resourcemanager.recovery.enabled

true

yarn.resourcemanager.store.class

org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore

yarn.resourcemanager.zk-address

ha01:2181,ha02:2181,ha03:2181

yarn.nodemanager.env-whitelist

JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME

yarn.scheduler.minimum-allocation-mb

512

yarn.scheduler.maximum-allocation-mb

4096

yarn.nodemanager.resource.memory-mb

4096

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.resourcemanager.hostname

ha03

yarn.nodemanager.pmem-check-enabled

false

yarn.nodemanager.vmem-check-enabled

false

yarn.resourcemanager.webapp.address.rm1

ha01:8088

yarn.resourcemanager.webapp.address.rm2

ha03:8088

????yarn.log-aggregation-enble

????true

yarn.log.server.url

http://ha02:19888/jobhistory/logs

yarn.log-aggregation.retain-seconds

604800

保存退出。

14)添加子節(jié)點(diǎn):

#?編輯文件

vim workers

#?刪除掉原來(lái)的,添加所有節(jié)點(diǎn)的主機(jī)名,例如

ha01

ha02

ha03

保存退出。

15)進(jìn)入Hadoop的命令目錄:

cd ../../sbin/

16)編輯文件:

vim start-dfs.sh

#?在文件頭部添加

HDFS_DATANODE_USER=root

HDFS_DATANODE_SECURE_USER=hdfs

HDFS_NAMENODE_USER=root

HDFS_SECONDARYNAMENODE_USER=root

HDFS_JOURNALNODE_USER=root

HDFS_ZKFC_USER=root

保存退出。

17)?編輯文件:

vim stop-dfs.sh

#?在文件頭部添加

HDFS_DATANODE_USER=root

HDFS_DATANODE_SECURE_USER=hdfs

HDFS_NAMENODE_USER=root

HDFS_SECONDARYNAMENODE_USER=root

HDFS_JOURNALNODE_USER=root

HDFS_ZKFC_USER=root

保存退出。

18)編輯文件:

vim start-yarn.sh

#?在文件頭部添加

YARN_RESOURCEMANAGER_USER=root

HDFS_DATANODE_SECURE_USER=yarn

YARN_NODEMANAGER_USER=root

保存退出。

19)?編輯文件:

vim stop-yarn.sh

#?在文件頭部添加

YARN_RESOURCEMANAGER_USER=root

HDFS_DATANODE_SECURE_USER=yarn

YARN_NODEMANAGER_USER=root

保存退出。

20)遠(yuǎn)程分發(fā):

#?回到安裝目錄

cd /opt/software/

#?遠(yuǎn)程分發(fā)

scp -r hadoop-3.2.4/ root@ha02:$PWD

scp -r hadoop-3.2.4/ root@ha03:$PWD

21)配置環(huán)境變量:

#?編輯文件

vim /etc/profile.d/hadoophome.sh

#?在文件中添加

export HADOOP_HOME=/opt/software/hadoop-3.2.4

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

#?保存退出,生效

source /etc/profile.d/hadoophome.sh

#?測(cè)試

hadoop version

22)啟動(dòng)Zookeeper:

#?啟動(dòng)

zkServer.sh start

#?查看狀態(tài)

zkServer.sh status

23)在第一個(gè)節(jié)點(diǎn)上向Zookeeper注冊(cè)節(jié)點(diǎn):

hdfs zkfc -formatZK

如果出現(xiàn):

Successfully created /hadoop-ha/ns in ZK.

則表示注冊(cè)成功。

24)三個(gè)節(jié)點(diǎn)啟動(dòng)JournalNode:

hdfs --daemon start journalnode

25)在第一個(gè)節(jié)點(diǎn)上格式化NameNode:

hdfs namenode -format

如果出現(xiàn):

Storage directory /opt/software/hadoop-3.2.4/tmp/hdfs/name has been successfully formatted.

則表示格式化成功。

26)在第一個(gè)節(jié)點(diǎn)上啟動(dòng)NameNode:

hdfs --daemon start namenode

27)在其他節(jié)點(diǎn)上格式化NameNode:

hdfs namenode -bootstrapStandby

如果出現(xiàn):

Storage directory /opt/software/hadoop-3.2.4/tmp/hdfs/name has been successfully formatted.

則表示格式化成功。

28)在其他節(jié)點(diǎn)上啟動(dòng)NameNode:

hdfs --daemon start namenode

29)三個(gè)節(jié)點(diǎn)啟動(dòng)DataNode:

hdfs --daemon start datanode

30)三個(gè)節(jié)點(diǎn)啟動(dòng)zkfc:

hdfs --daemon start zkfc

31)在第三個(gè)節(jié)點(diǎn)上啟動(dòng)YARN:

start-yarn.sh

32)在第二個(gè)節(jié)點(diǎn)上啟動(dòng)歷史服務(wù)器:

mapred --daemon start historyserver

33)查看進(jìn)程:

jps

#?ha01

Jps

NameNode

DataNode

JournalNode

ResourceManager

NodeManager

DFSZKFailoverController

QuorumPeerMain

#?ha02

Jps

NameNode

DataNode

JournalNode

NodeManager

DFSZKFailoverController

JobHistoryServer

QuorumPeerMain

#?ha03

Jps

NameNode

DataNode

JournalNode

ResourceManager

NodeManager

DFSZKFailoverController

QuorumPeerMain

34)可以通過(guò)主機(jī)名:9870的方式來(lái)查看HDFS的頁(yè)面。

35)可以通過(guò)主機(jī)名:8088的方式來(lái)查看YARN的頁(yè)面。

柚子快報(bào)邀請(qǐng)碼778899分享:Hadoop簡(jiǎn)介

http://yzkb.51969.com/

精彩鏈接

評(píng)論可見(jiàn),查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://m.gantiao.com.cn/post/19523715.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問(wèn)

文章目錄