ITPub博客

首页 > 云计算 > 开源云工具 > 滴滴云部署Hadoop3.1.1

滴滴云部署Hadoop3.1.1

原创 开源云工具 作者:java06051515 时间:2018-11-21 10:52:34 0 删除 编辑

1.本例集群架构如下:

此处我们使用的是滴滴云主机内网 IP,如果需要外部访问 Hadoop,需要绑定公网 IP 即 EIP。有关滴滴云 EIP 的使用请参考以下链接。
https://help.didiyun.com/hc/kb/section/1035272/

  • master 节点保存着分布式文件的系统信息,比如 inode 表和资源调度器及其记录。同时 master 还运行着两个守护进程:
    NameNode:管理分布式文件系统,存放数据块在集群中所在的位置。
    ResourceManger:负责调度数据节点(本例中为 node1 和 node2)上的资源,每个数据节点上都有一个 NodeManger 来执行实际工作。

  • node1 和 node2 节点负责存储实际数据并提供计算资源,运行两个守护进程:
    DataNode:负责管理实际数据的物理储存。
    NodeManager:管理本节点上计算任务的执行。

2.系统配置

本例中使用的滴滴云虚拟机配置如下:
2核CPU 4G内存 40G HDD存储 3 Mbps带宽 CentOS 7.4

  • 滴滴云主机出于安全考虑,默认不能通过 root 用户直接登录,需要先用 dc2-user 登录,然后用 sudo su 切换至 root。本例中默认全部以 dc2-user 用户运行命令,Hadoop默认用户同样为 dc2-user。

  • 将三台节点的 IP 和主机名分别写入三台节点的 /etc/hosts 文件,并把前三行注释掉

  • master 节点需要与 node1 和 node2 进行 ssh 密钥对连接,在 master 节点上为 dc2-user 生成公钥。

输入以下命令将生成的公钥复制到三个节点上

接下来可以用在 master 输入 ssh dc2-user@node1,ssh dc2-user@node2 来验证是否可以不输入密码就可以连接成功。

  • 配置 java 环境

在3台节点下载 jdk。

在3台节点配置 java 变量

使环境变量生效

  source   / etc / profile

查看 java 版本

出现以上结果,即说明 java 环境已经配置成功。

3.安装Hadoop

在 master 节点下载 Hadoop3.1.1 并解压。

在 /home/dc2-user/hadoop-3.1.1/etc/hadoop 下需要配置的6个文件分别是 hadoop-env.sh、core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、workers

(1)hadoop-env.sh 添加如下内容

(2)core-site.xml

(3)hdfs-site.xml

(4)yarn-site.xml


(5)mapred-site.xml

(6)编辑 workers

  node1

  node2

4.启动Hadoop

  • 复制以下配置文件到 node1 和 node2

   scp   - r   / home / dc2 - user / hadoop - 3.1.1   dc2 - user @ node1 : / home / dc2 - user /

   scp   - r   / home / dc2 - user / hadoop - 3.1.1   dc2 - user @ node2 : / home / dc2 - user /

  • 配置 Hadoop 环境变量(三台节点)

  • 使环境变量生效

  source   / etc / profile

  • 在3台节点输入 Hadoop version 看是否有输出,来验证环境变量是否生效

  • 格式化 HDFS,只在 master 上操作

   / home / dc2 - user / hadoop - 3.1.1 / bin / hdfs  namenode   - format  testCluster

  • 开启服务

   / home / dc2 - user / hadoop - 3.1.1 / sbin / start - dfs . sh

  / home / dc2 - user / hadoop - 3.1.1 / sbin / start - yarn . sh

  • 查看三个节点服务是否已启动

master

node1

node2

出现以上结果,即说明服务已经正常启动,可以通过 master 的公网 IP 访问 ResourceManager 的 web 页面,注意要打开安全组的 8088 端口,关于滴滴云安全组的使用请参考以下链接。https://help.didiyun.com/hc/kb/article/1091031/

5.实例验证

最后用 Hadoop 中自带的 wordcount 程序来验证 MapReduce 功能,以下操作在 master 的节点进行
首先在当前目录创建两个文件 test1,test2,内容如下:

接下来在 HDFS 中创建文件夹并将以上两个文件上传到文件夹中。

  hadoop  fs   - mkdir   / input

  hadoop  fs   - put  test*   / input

当集群启动的时候,会首先进入安全模式,因此要先离开安全模式。

  hdfs  dfsadmin   - safemode  leave

运行 wordcount 程序统计两个文件中个单词出现的次数。

如果出现以下输出说明计算完成,结果保存在 HDFS 中的 /output 文件夹中。

打开 part-r-00000 查看结果。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31559758/viewspace-2220781/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-10-26

  • 博文量
    129
  • 访问量
    97582