步骤一:创建容器,首先需要搜索一下hadoop的镜像,我们使用docker hub上的镜像
docker search hadoop
步骤二:下载hadoop镜像
docker pull docker.io/sequenceiq/hadoop-docker #此镜像星级比较高
然后使用docker images命令检查
docker run -itd --name hadoop -h hadoop -P 镜像id
先使用 docker ps
查看端口映射,后面要在网页访问 DFS、YARN
要分别用到 50070、8088
端口的映射!!
docker exec -it hadoop bash
格式化 namenode
在sbin目录下./hadoop namenode -format
hadoop namenode -format
运行 DFS
start-dfs.sh
中间输入两个 yes,不要输入错误 ~
之后可以使用 jps
查看节点
访问 http://120.79.197.130:32802
(① 改120.79.197.130为你的服务器ip、② 改32802为你的 50070映射端口、③ 云服务器注意开启安全组)
进入如下页面,说明一切顺利
2.6.运行 YARN
start-yarn.sh
之后可以再次使用 jps
查看新节点
访问 http://120.79.197.130:32807 进入如下页面,说明一切顺利
(① 改120.79.197.130为你的服务器ip、② 改32807为你的 8088 映射端口、③ 云服务器注意开启安全组)
三、其他操作
3.1.更换目录
cd /opt/tools/hadoop
3.2.创建文件夹
hdfs dfs -mkdir -p /user/kaibb/input
可以使用 hdfs dfs -ls /user/kaibb
查看刚刚创建的目录
3.3.复制文件至dfs文件目录中
hdfs dfs -put /opt/tools/hadoop/etc/hadoop/* /user/kaibb/input
可以使用 hdfs dfs -ls /user/kaibb/input
查看 dfs文件目录下的内容
也可以在网页直接查看,点击红色框中的内容:
如下:
3.4.运行示例程序
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep /user/kaibb/input output 'dfs[a-z.]+'
在 YARN 中可以看到运行成功的两个应用:
3.5.查看结果、节点
hdfs dfs -cat output/*
jps