https://dblab.xmu.edu.cn/blog/1233/
https://www.cnblogs.com/rmxd/p/12051866.html#_label4
按照这两篇文章即可,总结来说 pull ubuntu,进入系统,配置java、hadoop,保存镜像。然后根据这个镜像启动三个容器master,slave1,slave2,在master上配置相关信息。
mapreduce.framework.name
yarn
yarn.app.mapreduce.am.env
HADOOP_MAPRED_HOME=/usr/local/hadoop
mapreduce.map.env
HADOOP_MAPRED_HOME=/usr/local/hadoop
mapreduce.reduce.env
HADOOP_MAPRED_HOME=/usr/local/hadoop
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs #hadoop3.0后使用该名称
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
原因见链接: https://blog.csdn.net/Lekaor/article/details/127442047,需要重新配置一遍或者在网上找方法去固定ip。
把程序在本地打成jar包,传到容器内(ubuntu)(docker cp 命令)。把数据上传到容器内,再上传到 hdfs 上。
hadoop jar
执行程序
使用 docker 进行端口映射 8808 和 50070,即可在启动集群后在本地浏览器访问