这个时候我们进入bin路径下,即可执行./hadoop或者./hdfs等命令,我们接下来将其加入环境遍历以便全局使用这些命令,在~/.bashrc文件后面追加下面的内容。
之后使用 source ~/.bashrc 命令即可刷新环境变量
追加了上述环境变仔消芹量后即可全局执行hadoop和hdfs命令。
hdfs执行后有可能访问的还是本地的文件系统,这是因为配置错了。
配置/usr/local/hadoop/etc/hadoop/core-site.xml下的环境变量,使得hdfs可以链接到Docker集群的HDFS系统。
设置环境变量
——使用docker拉取官方Ubuntu镜像,将单机安装好hadoop,然后做成image,再跑多个容器做集群。但衫枝配有人建议不要把本地运行的容器转成镜像!
——使用阿里hadoop镜像创建hadoop容器,分别创建三个节点master、slave1、slave2。容器内都是只有hadoop软件还没有配置。通过 docker exec -it master bash 分别进入三个节点进行配置:
1)查看jdk: java –version
2)配置ssh生成秘钥:a.启动ssh /etc/init.d/ssh start b.生成秘钥 ssh-keygen -t rsa
3)分别进入每个节点,将其他节点的公钥也都复制到authorized_keys,容器中的文件复制到centos本地,在本地对其进行整合,再将其传回容器
4)分别为每个节点配置ip地址( ip addr 查看ip地址, vi /etc/hosts 配置)
5)配置hadoop:a.配置hadoop-env.sh,配置jdk;b.配置core-site.xml,配置hdfs的地址和端口号;c.配置hdfs-site.xml ,配置hdfs备份数量,配置namenode和datanode的数据路径;d.配置 mapred-site.xml,指定MapReduce运行在yarn上,配置JobTracker的地址和端口搭凯;e.配置yarn-site.xml,配置hdfs备份数量;f. 步骤a-e在master上配置完后 ,将core-site.xml hadoop-env.sh hdfs-site.xml mapred-site.xml yarn-site.xml 发送到slave1 和slave2节点
6)运行hadoop:a.在master节点的/etc/hadoop/slaves配置slaves;b.在master上格式化namenode;c.在master上启动集群;d.jps 查看进程;e.分别进入slave1查看进程
——再整理sequenceiq/hadoop-docker创建分布式。与上面思路一样(同一人所写),只是使用的镜像不一样。
——docker hub中的高赞 单节点hadoop镜像 (针对其有网友作出国内使用的几点更改: 适合国内使用的修改 ,我直接使用国外的无恙)
运行指令如下:
——自设计kiwenlau/hadoop:1.0镜像,关于此镜像的说明:
参考alvinhenrick/hadoop-mutinode项目,但优化了镜像大小、构造时间、镜像层数,默认启动3个节点的Hadoop集群,支持任意节点数的Hadoop集群,基于 Ubuntu 。github地址: kiwenlau/hadoop-cluster-docker
运行指或指令如下:
此镜像有博主进行使用: Docker搭建Hadoop环境
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)