VMware虚拟机中Hadoop服务的端口无法访问的问题
今天安装了一个hadoop集群,因为已经在单个虚拟机上安装成功,所以初期安装相对顺利。
初始环境如下:
通过Vmware Esxi服务器虚拟机出来四台机器,每台机器的网络配置如下:
master:10.10.50.241
node1:10.10.50.242
node2:10.10.50.243
node3:10.10.50.244
本机笔记本电脑:10.10.50.239(模拟远端访问控制)。
问题描述:
Hadoop启动之后,发现遇到一个奇怪的问题:
1.主机中配置好的hadoop启动之后,在namenode所在的虚拟机中,通过浏览器访问:http://127.0.0.1:8088 或者http://master:8088 能够访问控制台。通过http://10.10.50.241:8088访问控制台,显示不能连接。
2.在笔记本上连接:http://10.10.50.241:8088,显示不能连接。
3.通过查找日志:发现datanode的日志中提示:访问10.10.50.241:8020不能访问.
排查步骤:
1.首先,各个虚拟机和客户端之前都能ping通,虚拟机都能上外网,说明网络没有问题。
2.各个虚拟机自己的防火墙已经关闭。
3.通过笔记本telnet远端机器:发现 telnet 10.10.50.241 22可以,telnet 10.10.50.241 8088不行。怀疑是不是需要关闭Vmware Esxi的防火墙呢?
查找在Esxi中关闭防火墙的方法:
运行:#esxcli network firewall set –enabled false
参考:
http://2790010.blog.51cto.com/2780010/1154143
执行完成之后,重启Esxi,发现不起作用。
3.那是不是端口有问题,通过命令#netstat –tpnl

发现监听都配置在:127.0.0.1 结合可以通过可以通过:127.0.0.1:8088可以访问考虑,是不是这个地址改成10.10.50.241就可以了?
因为所有hadoop内部配置的都是hostname,所以有两种方法:
1.将hadoop中所有的hostname改成IP的方式。
2.修改linux的设置,将hostname映射地址改为:10.10.50.241
研究第二种方式,排查发现:hostname –i 命令显示的IP为:
#hostname –i
127.0.0.1 10.10.50.241
所以,在master中,实验将/etc/hosts中的127.0.0.1 master去掉,运行发现:

发现部分端口已经改正,还有部分端口没有改正过来。
将各个数据节点中/etc/hosts中的127.0.0.1 node[x]去掉,重新启动hadoop发现:

此时:通过在笔记本上访问:http://10.10.50.241:8088已经可以,问题解决。
另外一个问题:
通过访问:http://10.10.50.241:50070/dfshealth.jsp 中选择Browse the filesystem选项时发现找不到页面,观察URL,http://node3:50075/browseDirectory.jsp?namenodeInfoPort=50070&dir=/&nnaddr=10.10.50.241:8020
因此:在笔记本上的hosts目录中添加hadoop集群的相关host配置,问题解决。
出处:http://www.cnblogs.com/sdjnzqr/
版权:本文版权归作者和博客园共有
转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
VMware虚拟机中Hadoop服务的端口无法访问的问题的更多相关文章
- Hadoop服务的端口50070无法访问的问题
Hadoop启动之后,遇到一个奇怪的问题: VMware虚拟机中Hadoop服务的端口50070无法访问的问题---通过127.0.0.1:50070.localhost:50070.主机名:5007 ...
- 外网访问Vmware虚拟机中的某个服务(如http)
如果主机是windowx NAT中隐藏的端口映射,说明一下环境,利用当然是VMnet8网络连接,在虚拟机中架设linux WEB服务器利用WEB默认80端口,IP为192.168.11.10,真实主机 ...
- VMware虚拟机中如何配置静态IP
我们首先说一下VMware的几个虚拟设备 VMnet0:用于虚拟桥接网络下的虚拟交换机 VMnet1:用于虚拟Host-Only网络下的虚拟交换机 VMnet8:用于虚拟NAT网络下的虚拟交换机 VM ...
- 外网如何访问vmware虚拟机的web服务(转载)
目的: 主机上安装了VMware,VMware上安装了Linux虚拟机(我安装的是Centos7).我想让虚拟机向外提供Web服务.本文记录如何让我的主机和外网用户可以访问VM虚拟机上的Web. 网络 ...
- 【Linux】VMware虚拟机中如何配置静态IP
此处详解如何在VMware虚拟机中配置静态IP. 上图是一个草图,大致说明下VMware网络情况.网段指某个IP范围,例如一栋小区楼和另一栋小区楼就不是一个网段 如果你在A小区,你女朋友在B小区,你想 ...
- VMware虚拟机中的CentOS7安装Nginx后本机无法访问的解决办法
VMware虚拟机中的CentOS7安装Nginx后本机无法访问的解决办法 在linux上安装nginx 请参考:Linux Centos7 安装 nginx 在虚拟机centos7上安装nginx之 ...
- 在VMware虚拟机中配置DOS汇编开发环境!!
操作系统:win7 32位 DOS环境:DosBox 下载:http://www.dosbox.com/ 选择当前适合自己版本,下载就可以了. 汇编编译器:MASM 5.0 下载:http://do ...
- VMware虚拟机中如何安装VMWare-Tools详解
VMware虚拟机中如何安装VMWare-Tools详解 好处:可以支持图形界面,可以支持共享文件功能等 VMware虚拟机中如何配置显 VMware作为一款虚拟机利器,很多人都利用它来实现Linux ...
- 虚拟化技术学习(一)在VMware虚拟机中安装KVM
近期一直研究虚拟化技术,曾经对VMware虚拟机有一定的了解,近期突发奇想,能不能在VMware虚拟机中再装一个虚拟机呢? 那么问题就来了,首先,你须要一台电脑,vmware软件,(本人的电脑配置渣渣 ...
随机推荐
- 2014.10.09 Andrew 学习 WPF(刘铁锰) 笔记分享
引言 主要是讲了关于WPF只是表现层的工具. 第一章: XAML : 可扩张应用程序标记语言 Extensible Application Markup Language 什么是XAML? X ...
- WinDbg配置与下载 (转载)
WinDbg配置和使用基础 WinDbg是微软发布的一款相当优秀的源码级(source-level)调试工具,可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件. 1. Win ...
- 网站整站变灰的方法(不支持IE10)
html { -ms-filter: grayscale(100%); -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); - ...
- bootstrap-fileinput初体验
原文:http://www.htmleaf.com/html5/html5muban/201505091801.html Document & Demo: http://plugins.kra ...
- hibernate get VS load
1. 执行get方法:会立即加载对象 而执行load方法,若不适用该对象,则不会立即执行查询操作,而返回一个代理对象 get立即检索,load延迟检索 2. load方法可能 ...
- 通过Driver获取数据库连接
先看一下文件,在当前包下有一个properties配置文件,在根目录下有一个lib文件夹,里面放的是mySql的驱动jar包 Driver :是一个接口,数据库厂商必须提供实现的接口,能从其中获取数据 ...
- 【风马一族_Android】Button 按钮之记录
Button button = new Button(); Button button = (Button)findViewById(R.id.bt_button);//让按钮显示灰色,失效 butt ...
- Linux学习笔记之VI(VIM)编辑器
百度关于vi的资料 http://baike.baidu.com/view/908054.htm 关于vi 和vim的介绍可以在上面的网址看到. 1 进入和退出vi 进入:在终端命令行输入 vi ...
- 利用PowerDesigner绘制PDM生成SQL Server数据库
PowerDesigner是个很强大的建模工具,可以利用它绘制各种图形,本文利用该工具绘制PDM,进而生成SQL Server数据库. 比如绘制一个简单的学生选课.教师授课管理系统的PDM: pk表示 ...
- DataGridview动态添加列
1.获取数据源(select * from table名称) 2.动态绑定数据源 private void GetTableInfo(DataTable dt) { listBh = new List ...