溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

在Ubuntu 18.04.1中怎么安裝Hadoop集群

發(fā)布時(shí)間:2021-07-13 14:42:28 來(lái)源:億速云 閱讀:183 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

這篇文章給大家介紹在Ubuntu 18.04.1中怎么安裝Hadoop集群,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

準(zhǔn)備運(yùn)行Hadoop服務(wù)器

首先,我們需要安裝Oracle Java 8,因?yàn)閺腢buntu 18.04.1開(kāi)始,Java 8不再可用。

# add-apt-repository ppa:webupd8team/java
# apt update
# apt install -y oracle-java8-set-default

接受許可條款,并下載Hadoop二進(jìn)制文件

# wget http://apache.claz.org/hadoop/common/hadoop-3.1.1/hadoop-3.1.1.tar.gz

解壓縮歸檔并將其移至/ usr / local /

# tar -xzvf hadoop-3.1.1.tar.gz
# mv hadoop-3.1.1 /usr/local/hadoop

更新默認(rèn)環(huán)境變量以包含JAVA_HOME和Hadoop二進(jìn)制目錄。

首先,我們需要知道Java的安裝位置,運(yùn)行以下命令查找。

# update-alternatives --display java
java - manual mode
  link best version is /usr/lib/jvm/java-8-oracle/jre/bin/java
  link currently points to /usr/lib/jvm/java-8-oracle/jre/bin/java
  link java is /usr/bin/java
  slave java.1.gz is /usr/share/man/man1/java.1.gz
/usr/lib/jvm/java-8-oracle/jre/bin/java - priority 1081
  slave java.1.gz: /usr/lib/jvm/java-8-oracle/man/man1/java.1.gz

如上所示,JAVA_HOME應(yīng)設(shè)置為/ usr / lib / jvm / java-8-oracle / jre。

打開(kāi)/etc/environment并更新PATH行以包含Hadoop二進(jìn)制目錄。

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/hadoop/bin:/usr/local/hadoop/sbin"

為JAVA_HOME變量和YARN_RESOURCEMANAGER_OPTS變量添加一行。

vim 
YARN_RESOURCEMANAGER_OPTS="--add-modules=ALL-SYSTEM"

確保該目錄與上面的update-alternatives選項(xiàng)減去bin/java部分的輸出相匹配。

接下來(lái),我們將添加一個(gè)hadoop用戶(hù)并為他們提供正確的權(quán)限。

# adduser hadoop
# usermod -aG hadoop hadoop
# chown hadoop:root -R /usr/local/hadoop
# chmod g+rwx -R /usr/local/hadoop

以hadoop用戶(hù)身份登錄并生成SSH密鑰,只需要在Hadoop Master上完成此步驟。

# su - hadoop
# ssh-keygen -t rsa

接受ssh-keygen的所有默認(rèn)值。

現(xiàn)在以hadoop用戶(hù)身份登錄并將SSH密鑰復(fù)制到所有Hadoop節(jié)點(diǎn)。 同樣,只需要在Hadoop Master上完成此步驟。

# su - hadoop
$ ssh-copy-id hadoop@hadoop1.admintome.lab
$ ssh-copy-id hadoop@hadoop2.admintome.lab
$ ssh-copy-id hadoop@hadoop3.admintome.lab

配置Hadoop主服務(wù)器

打開(kāi)/usr/local/hadoop/etc/hadoop/core-site.xml文件并輸入以下內(nèi)容:

<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://hadoop1.admintome.lab:9000</value>
  </property>
</configuration>

保存并退出。

接下來(lái),打開(kāi)/usr/local/hadoop/etc/hadoop/hdfs-site.xml文件并添加以下內(nèi)容:

<configuration>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/usr/local/hadoop/data/nameNode</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/usr/local/hadoop/data/dataNode</value>
  </property>
  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>
</configuration>

保存并退出。

打開(kāi)/usr/local/hadoop/etc/hadoop/workers文件并添加以下兩行(每個(gè)Hadoop節(jié)點(diǎn)一行)

hadoop2.admintome.lab
hadoop3.admintome.lab

保存并退出。

將配置文件從Hadoop Master復(fù)制到每個(gè)Hadoop節(jié)點(diǎn)。

# scp /usr/local/hadoop/etc/hadoop/* hadoop2.admintome.lab:/usr/local/hadoop/etc/hadoop/
# scp /usr/local/hadoop/etc/hadoop/* hadoop3.admintome.lab:/usr/local/hadoop/etc/hadoop/

格式化HDFS文件系統(tǒng)

$ source /etc/environmnet
$ hdfs namenode -format

現(xiàn)在可以啟動(dòng)HDFS:

hadoop@hadoop1:~$ start-dfs.sh
Starting namenodes on [hadoop1.admintome.lab]
Starting datanodes
Starting secondary namenodes [hadoop1]
hadoop@hadoop1:~$

通過(guò)在所有Hadoop服務(wù)器上以Hadoop用戶(hù)身份運(yùn)行jps命令來(lái)驗(yàn)證所有內(nèi)容是否正確啟動(dòng)。

在Hadoop Master上你應(yīng)該可以看到如下結(jié)果:

hadoop@hadoop1:~$ jps
13634 Jps
13478 SecondaryNameNode
13174 NameNode

在每個(gè)Hadoop節(jié)點(diǎn)上,你應(yīng)該可以看到:

hadoop@hadoop2:~$ jps
8672 Jps
8579 DataNode
HDFS Web UI

HDFS Web UI

現(xiàn)在,我們可以通過(guò)瀏覽到Hadoop主服務(wù)器端口9870來(lái)訪問(wèn)HDFS Web UI。

http://hadoop1.admintome.lab:9870

可以看到如下UI:

在Ubuntu 18.04.1中怎么安裝Hadoop集群

如上所示,我們的HDFS文件系統(tǒng)上有近60 GB的空閑空間。

開(kāi)始運(yùn)行Yarn

現(xiàn)在HDFS正在運(yùn)行,我們已準(zhǔn)備好啟動(dòng)Yarn調(diào)度程序。

Hadoop本身需要運(yùn)行任務(wù),因此我們需要Yarn以在Hadoop集群上合理安排任務(wù)。

export HADOOP_HOME="/usr/local/hadoop"
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME

運(yùn)行以下命令以啟動(dòng)Yarn:

$ start-yarn.sh
Starting resourcemanager
Starting nodemanagers

我們可以通過(guò)以下命令來(lái)驗(yàn)證是否可以正確啟動(dòng):

$ yarn node -list
2018-08-15 04:40:26,688 INFO client.RMProxy: Connecting to ResourceManager at hadoop1.admintome.lab/192.168.1.35:8032
Total Nodes:2
         Node-Id       Node-State  Node-Http-Address  Number-of-Running-Containers
hadoop3.admintome.lab:35337          RUNNING  hadoop3.admintome.lab:8042                             0
hadoop2.admintome.lab:38135          RUNNING  hadoop2.admintome.lab:8042                             0

沒(méi)有任何正在運(yùn)行的容器,因?yàn)槲覀冞€沒(méi)有開(kāi)始任何工作。

Hadoop Web UI

我們可以通過(guò)以下URL來(lái)查看Hadoop Web UI:

http://hadoop1.admintome.lab:8088/cluster

替換Hadoop Master主機(jī)名:

在Ubuntu 18.04.1中怎么安裝Hadoop集群

運(yùn)行Hadoop任務(wù)示例

我們現(xiàn)在可以運(yùn)行Hadoop任務(wù)示例并在集群上安排它,我們將運(yùn)行的示例是使用MapReduce來(lái)計(jì)算PI。

運(yùn)行以下命令來(lái)運(yùn)行作業(yè):

yarn jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.1.jar pi 16 1000

完成整個(gè)過(guò)程將需要幾分鐘的時(shí)間。完成后,應(yīng)該可以看到它已經(jīng)開(kāi)始計(jì)算PI:

Job Finished in 72.973 seconds
Estimated value of Pi is 3.1425000000000000000

關(guān)于在Ubuntu 18.04.1中怎么安裝Hadoop集群就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI