公司进行战略调整阶段,终于可以闲下心来潜心研究分布式应用Hadoop。至于hadoop的应用结构,在这里不必多说,大家网上搜索相关文章即可。
既然研究hadoop,就需要基础的环境搭建。由于资源有限,只能在本机windows环境下搭建vmware虚拟操作系统fedora上运行hadoop+hbase。
主要分为以下几个部分进行介绍:
一、环境版本要求和准备
二、Fedora服务器hadoop安装过程
三、Fedora服务器Hbase配置安装过程
四、Windows下eclipse配置hadoop插件
五、Eclipse运行WordCount项目
希望读者按照顺序进行搭建,闲话少说~~~
一、环境版本要求和准备:
1. 为避免hadoop版本不匹配造成的ipc协议错误,windows7下的hadoop版本尽量和fedora下的hadoop版本保持一致,调试环境为hadoop-1.2下载地址为:
http://apache.dataguru.cn/hadoop/common/hadoop-1.2.1/
2. Windows7中的eclipse版本为:Helios Service Release 2
3. 客户端操作系统:win7 ,vmware虚拟操作系统为: Fedora-13-i386
备注:fedora-10默认是没有安装telnet-server*.rpm的,安装完Fedora后需要安装telnet-server驱动。
A.检查系统telnet-server的rpm包是否安装:
#rpm –q telnet-server
如果返回结果为空,进行B、C、D操作步骤:
B.安装telnet-server,命令如下:
#rpm -ivh telnet-server-0.17-47.el6_3.1.i686.rpm
C.配置文件/etc/xinetd.d/telnet,将"disable = yes" 改为 "disable = no"。如果需要修改最大连接数为3, 那就需要在里面加入 instance = 3。如下:
# vi /etc/xinetd.d/telnet
service telnet
{flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
disable = yes <----- 修改成no
}
D.启动服务:# /etc/rc.d/init.d/xinetd restart 或者:#service xinetd restart
E.开放防火墙端口:# vi /etc/sysconfig/iptables,添加如下端口:
以上端口开放,可以从windows下的web浏览器或者eclipse来访问hadoop相关服务。以下红色部分必须放开,否则eclipse调试报错
HDFS端口:
参数 | 描述 | 默认 | 配置文件 | 例子值 |
fs.default.name | namenode RPC交互端口 | 8020 | core-site.xml | hdfs://0.0.0.0:8020/ |
dfs.http.address | NameNode web管理端口 | 50070 | hdfs-site.xml | 0.0.0.0:50070 |
dfs.datanode.address | datanode 控制端口 | 50010 | hdfs-site.xml | 0.0.0.0:50010 |
dfs.datanode.ipc.address | datanode的RPC服务器地址和端口 | 50020 | hdfs-site.xml | 0.0.0.0:50020 |
dfs.datanode.http.address | datanode的HTTP服务器和端口 | 50075 | hdfs-site.xml | 0.0.0.0:50075 |
MR端口:
参数 | 描述 | 默认 | 配置文件 | 例子值 |
mapred.job.tracker | job tracker交互端口 | 8021 | mapred-site.xml | hdfs://0.0.0.0:8021/ |
mapred.job.tracker.http.address | job tracker的web管理端口 | 50030 | mapred-site.xml | 0.0.0.0:50030 |
mapred.task.tracker.http.address | task tracker的HTTP端口 | 50060 | mapred-site.xml | 0.0.0.0:50060 |
F.重启防火墙iptables服务:#service iptables restart
现在fedora环境下telnet以上端口,然后在windows端验证以上端口是否可以telnet通过。