站長資訊網
最全最豐富的資訊網站

Ubuntu 18.04.1上安裝Hadoop 3.1.1集群詳解

本文將介紹如何在基于Ubuntu的系統上安裝多節點Hadoop 3.1.1集群,作者將在Ubuntu 18.04.1上安裝一個包含HDFS的三節點Hadoop集群。

首先,我們需要為集群創建三個虛擬機,創建一個具有4個vCPU,4 GB內存和40 GB硬盤空間的Hadoop Master服務器;為每個節點創建兩個帶有4個vCPU,8 GB內存和40 GB硬盤空間的Hadoop節點。

本文的三臺服務器安裝了Ubuntu Server 18.04.1,安裝了所有更新并重新啟動,一定要確保使用靜態IP地址和內部DNS解析配置每個服務器,或將每個服務器添加到/ etc / hosts文件。

準備運行Hadoop服務器

首先,我們需要安裝Oracle Java 8,因為從Ubuntu 18.04.1開始,Java 8不再可用。

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

接受許可條款,并下載Hadoop二進制文件

# 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

更新默認環境變量以包含JAVA_HOME和Hadoop二進制目錄。

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

# 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應設置為/ usr / lib / jvm / java-8-oracle / jre。

打開/etc/environment并更新PATH行以包含Hadoop二進制目錄。

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選項減去bin/java部分的輸出相匹配。

接下來,我們將添加一個hadoop用戶并為他們提供正確的權限。

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

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

# su – hadoop
# ssh-keygen -t rsa

接受ssh-keygen的所有默認值。

現在以hadoop用戶身份登錄并將SSH密鑰復制到所有Hadoop節點。 同樣,只需要在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主服務器

打開/usr/local/hadoop/etc/hadoop/core-site.xml文件并輸入以下內容:

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

保存并退出。

接下來,打開/usr/local/hadoop/etc/hadoop/hdfs-site.xml文件并添加以下內容:

<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>

保存并退出。

打開/usr/local/hadoop/etc/hadoop/workers文件并添加以下兩行(每個Hadoop節點一行)

hadoop2.admintome.lab
hadoop3.admintome.lab

保存并退出。

將配置文件從Hadoop Master復制到每個Hadoop節點。

# 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文件系統

$ source /etc/environmnet
$ hdfs namenode -format

現在可以啟動HDFS:

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

通過在所有Hadoop服務器上以Hadoop用戶身份運行jps命令來驗證所有內容是否正確啟動。

在Hadoop Master上你應該可以看到如下結果:

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

在每個Hadoop節點上,你應該可以看到:

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

HDFS Web UI

現在,我們可以通過瀏覽到Hadoop主服務器端口9870來訪問HDFS Web UI。

http://hadoop1.admintome.lab:9870

可以看到如下UI:

Ubuntu 18.04.1上安裝Hadoop 3.1.1集群詳解

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

開始運行Yarn

現在HDFS正在運行,我們已準備好啟動Yarn調度程序。

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

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

運行以下命令以啟動Yarn:

$ start-yarn.sh
Starting resourcemanager
Starting nodemanagers

我們可以通過以下命令來驗證是否可以正確啟動:

$ 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

沒有任何正在運行的容器,因為我們還沒有開始任何工作。

Hadoop Web UI

我們可以通過以下URL來查看Hadoop Web UI:

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

替換Hadoop Master主機名:

Ubuntu 18.04.1上安裝Hadoop 3.1.1集群詳解

運行Hadoop任務示例

我們現在可以運行Hadoop任務示例并在集群上安排它,我們將運行的示例是使用MapReduce來計算PI。

運行以下命令來運行作業:

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

完成整個過程將需要幾分鐘的時間。完成后,應該可以看到它已經開始計算PI:

Job Finished in 72.973 seconds
Estimated value of Pi is 3.1425000000000000000

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
人人妻人人澡人人爽人人精品| 久夜色精品国产一区二区三区| 精品国产乱码久久久久久鸭王1| 蜜臀久久99精品久久久久久小说| 精品九九久久国内精品| 国产999精品久久久久久| 日韩精品中文字幕无码专区| 中美日韩在线网免费毛片视频| 日本三区精品三级在线电影| 精品久久久无码人妻中文字幕豆芽 | 亚洲精品色婷婷在线影院| 精品国产日韩一区三区| 日韩精品在线视频| 亚洲欭美日韩颜射在线二| 国产日韩精品一区二区在线观看 | 一本色道久久88综合亚洲精品高清 | 91麻豆精品国产片在线观看| 久久精品中文字幕第一页| 国产精品亚洲片在线观看不卡| 国产色无码精品视频免费| 99精品国产在热久久| 老司机亚洲精品影视www| 久久久久久一区国产精品| 成人午夜视频精品一区| 99热成人精品热久久669| a级亚洲片精品久久久久久久| 国产亚洲精品免费视频播放| 成人国内精品久久久久一区| 99re这里只有精品6| 伊人久久综合精品无码AV专区 | 国产精品无码一区二区三区不卡| 久久久久无码精品国产app| 久久亚洲精品高潮综合色a片| 亚洲精品无码专区在线| 人妻少妇精品久久久久久| 国产精品自在在线午夜| 青青国产精品视频| 国内精品久久久久久无码不卡 | 国产国拍亚洲精品mv在线观看 | 亚洲精品天堂无码中文字幕| 亚洲精品国产综合久久一线|