hadoop搭建以及问题
来源:互联网 发布:js正则判断正整数 编辑:程序博客网 时间:2024/06/16 17:12
这周主要是搭建了hadoop的学习环境
mac本地docker + hadoop 1 master 2slave 伪分布式集群
mac本地docker hadoop 单机
virtualbox centos7.2 搭建的hadoop单机
在搭建过程中遇到了很多问题所幸网上答案很多在这里先总结一下
问题
1. 无法上传
在搭建mac docker hadoop单机的时候暴露了容器的50010,50070,9000,8088,22端口,我用java去调用hdfs API的时候,如果是对文件夹的操作,没有问题。但是如果是上传下载文件,那么会出现访问不到的问题,经过分析,发现是namenode将本地的ip地址加50010端口返回给了我,所以我的请求地址是:
172.21.1.5:50010
这样会出问题,因为mac中不能去直接访问docker容器的IP, 你可以尝试 ping一下,是ping不通的。
查看了一下容器中的 hosts文件,发现我的主机名对应的ip地址为docker给容器分配的地址。 如果你在容器中暴露了50010端口,那么访问127.0.0.1:50010是可以访问的,这个时候可以通过修改容器中的
hostname : ip 来进行解决这个问题。 需要注意的是,如果是多结点的情况,该方案行不通。
解决方案: 修改容器中的 hosts 配置。
2 .虚拟机中端口暴露问题
部署在虚拟中的hadoop出现了9000端口无法访问的情况。
netstat -ntl 查看端口开启
发现9000 8080端口都是开启的,但是监听地址是本地
127.0.0.1 9000 127.0.0.1 8088
解决方法就是 将hosts中对应的主机名的地址改为 0.0.0.0
或者将主机名地址改为 本机所在ip地址。
推荐改为ip地址,因为虚拟机中 单机hadoop 用了 0.0.0.0那么java调用api 也会默认去127.0.0.1:50010去操作datanode,这个时候会找不到datanode的。
ps 具体的Dockerfile 搭建过程,其实网上很多。
问题也都是差不多
总结一下我遇到的问题
- ssh无法访问,查看一下宿主机有没有ssh,查看远程机器有没有sshd服务,查看防火墙是否关闭。
- datanode开启不了,查看namenode 和datanode的集群id是否一样。
- start-all.sh启动不了,查看dfs文件夹,tmp文件夹的权限是否是root,可以曾经用root用户跑过hadoop,但是现在不是root用户
- 无法上传文件, 查看调用的ip是否能ping通。
- hadoop搭建以及问题
- 搭建Hadoop时候遇到的一些问题以及解决方法
- Hadoop环境搭建过程中的的问题以及解决方案
- hadoop搭建以及实例演示
- Hadoop集群搭建以及测试
- hadoop环境搭建问题
- 虚拟机中 hadoop 的集群的搭建 以及 中途可能出现的问题
- 搭建Hadoop遇见问题集合
- hadoop完全分布式搭建问题
- Hadoop框架搭建问题汇总
- 搭建hadoop遇到的问题
- Hadoop搭建过程中的问题
- hadoop集群搭建问题集锦
- Hadoop集群搭建中的问题
- hadoop搭建(单机以及集群)
- hadoop介绍以及伪分布环境搭建
- Hadoop环境搭建,以及mapreduce的使用
- Spark +hadoop 完全分布式搭建 以及常见问题
- socket编程之点对点聊天程序
- linux kernel的cmdline参数解析原理分析
- cocos2dx lua图集的使用
- LeetCode 8. String to Integer (atoi)
- listener监听器
- hadoop搭建以及问题
- 原子哥家的 SIM800L透传模式配置
- Java设计模式之十一:状态模式
- mysql数据表之间求余集
- weex(1):weexpack 的使用
- 浅谈C++继承方式
- (线段树+dfs序)
- 字符串+尺取法
- 侧栏滑动