阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ubuntu 18.04.1上安装Hadoop 3.1.1集群详解

533次阅读
没有评论

共计 4467 个字符,预计需要花费 12 分钟才能阅读完成。

本文将介绍如何在基于 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

更多 Hadoop 相关信息见 Hadoop 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=13

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计4467字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7982061
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛 NAS-1:安装飞牛 NAS 前言 在家庭和小型工作室场景中,NAS(Network Atta...
恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击 PHP-FPM(FastCGl Process M...
从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统 大家好,我是星哥。公司的项目文档存了一堆 ...
飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛 NAS 玩转 Frpc 并且配置,随时随地直连你的私有云 大家好,我是星哥,最近在玩飞牛 NAS。 在数...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定! 前言 作为 NAS 玩家,你是否总被这些...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比 星哥玩云,带你从小白到上云高手。今天咱们就来聊聊——什...