栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

使用Mac版Docker搭建Hadoop集群(搭建集群与简单测试)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Mac版Docker搭建Hadoop集群(搭建集群与简单测试)

本文将开始正式介绍使用Mac版的Docker搭建Hadoop集群,基于的原始镜像是java:8,而不是hadoop,目的就是将虚拟机搭建集群的方式完全使用docker容器实现。如果是基于hadoop镜像,步骤将变得更加简单,可以参考docker 容器实现 hadoop分布式集群部署。

前一篇文章已经做好了准备工作,接下来的工作主要是修改配置文件,假设当前已经在安装好的hadoop路径下,进入etc/hadoop,修改以下配置文件:

core-site.xml:


  
    fs.defaultFS
    hdfs://hadoop1:8020
  
  
    hadoop.tmp.dir
    /usr/lib/hadoop/data
  

hdfs-site.xml:


  
    dfs.namenode.http-address
    namenode节点ip:9870
  
  
    dfs.namenode.secondary.http-address
    secondary namenode节点ip或主机名:9868
  

注意这里的dfs.namenode.http-address值为节点ip+端口,其中的节点ip一般情况下可换为主机名,但Mac的宿主机和容器间是隔离的,最好写节点ip,然后运行namenode节点的容器时使用端口映射 -p 9870:9870,这样才能在宿主机访问到hdfs页面。

yarn-site.xml:




  
    yarn.nodemanager.aux-service
    mapreduce-shuffle
  
  
    yarn.resourcemanager.hostname
    hadoop2
  

mapred-site.xml:


  
    mapreduce.framework.name
    yarn
  

然后编辑workers文件,使其内容只有三个主机名:

 注意不能有多余的空格和空行。

然后编辑hadoop-env.sh文件,添加两行环境变量(本来这两行在原文件中有,但被注释掉了,可以解除注释,修改相应内容使其生效):

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/usr/lib/hadoop

环境变量真实地址根据实际情况填写。最好回到hadoop安装路径,进入sbin目录,修改start-dfs.sh和stop-dfs.sh文件,添加以下内容:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

接着修改start-yarn.sh和stop-yarn.sh文件,添加以下内容:

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

上述这些USER不配好,就会报错:Attempting to operate on hdfs namenode as root ERROR: but there is no HDFS_NAMENODE_USER defined。至此,配置文件基本改好,运行hdfs namenode -format进行初始化,如果运行完之后成功,可以在hadoop目录下看到新生产data和logs文件夹:

进入data/ dfs目录,可以看到name文件夹。

然后回到hadoop目录,运行命令启动HDFS:

sbin/start-dfs.sh

如果运行成功,会在data/dfs/目录下看到新生成的data目录,并且使用jps在namenode节点(即hadoop1)查看java进程会看到:

 在hadoop3节点会看到只有SecondaryNameNode:

在Safari浏览器输入localhost:9870会看到页面:

尝试创建目录:

hadoop fs -mkdir /wcinput

可以看到前台页面出现了新的目录wcinput:

 然后尝试上传文件:

hadoop fs -put wcinput/word.txt /wcinput

运行结果:

真实数据存在如下路径: ​​​​​​​

 查看其中的文件:

 与原文件内容一致。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/868243.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号