Closed LiuMing5489 closed 7 years ago
被名字误导了,没彻底理解老师的意图。
详细看了一下Dockerfile 和相关文件, Docker image的层构造是: ubuntu:14.04 - base-dnsmasq - hadoop-base - hadoop-master ubuntu:14.04 - base-dnsmasq - hadoop-base - hadoop-slave
这样的话,如果需要配置完全分布模式的hadoop, 修改(添加)下面两个文件夹的配置文件 Big-Data/01_Guide/environment/docker/Hadoop_Ubuntu_Bin/hadoop-master/files/hadoop/ Big-Data/01_Guide/environment/docker/Hadoop_Ubuntu_Bin/hadoop-slave/files/hadoop/
重新做成docker image: trex/hadoop-master,trex/hadoop-slave
这个思路对吧?
关于Docker image的层级构造,在课件中有一个图示:
ubuntu:14.04 - base-dnsmasq - hadoop-base - hadoop-master
ubuntu:14.04 - base-dnsmasq - hadoop-base - hadoop-slave
ubuntu:14.04 - base-dnsmasq - hadoop-base - hbase-base - hbase-master
ubuntu:14.04 - base-dnsmasq - hadoop-base - hbase-base - hbase-slave
hadoop 构筑一个hadoop-master,两个(或N个)hadoop-slave 确保通讯正常后,按照 README.md 中的说明,启动 hadoop 即可
hbase 构筑一个hbase-master,两个(或N个)hbase-slave 确保通讯正常后,按照 README.md 中的说明,启动 hadoop, hbase 即可
继续挑战docker♪( ´θ`)ノ
宿主机环境: macos sierra 10.12.3 docker community Edition 17.03
根据下面的手顺在macos下用docker(非vm)运行wordcount成功: https://github.com/trex-group/Big-Data/blob/master/01_Guide/environment/Manual/Hadoop_docker.pdf
问题: 根据上面的手顺,会创建2个关于hadoop的image
启动3个容器master,slave1,slave2
在master容器里面运行wordcount时,2个slave容器的进程没有变化。 而且master容器没有master文件,slaves文件里面是locahost
总感觉三个容器的内容好像是一样的啊? 是不是虽然有三个容器,但是不是完全分布模式,每个容器都是单机模式(伪分布模式)?
PS https://github.com/trex-group/Big-Data/blob/master/01_Guide/environment/docker/Hadoop_Ubuntu_Bin/start-hadoop-container.sh 启动脚本里面确实是启动了不同的image