在linux上搭建hadoop环境所遇到的问题

在linux上搭建hadoop分布式环境花费大约两天的时间,有些问题并不是hadoop的问题,而是linux系统的问题。因为才接触linux系统,对一些命令不熟悉,需要通过上网查各种各种的命令以及它们的使用方式,所以花费了一些时间在上面。下面就说说我所遇到的一些问题。

这里我是用的VirtualBox虚拟机安装的ubuntu系统。想要使用hadoop需要先配置java环境,通过网上的方法配置好后就去下载一个hadoop。我下载的是hadoop2.6.0,然后通过tar命令解压下载下来的hadoop文件包,然后再在hadoop-env.sh文件里配置java环境

            export JAVA_HOME=/usr/lib/jvm/java1.8.0_45(视你机器的java安装路径而定)
            export HADOOP_HOME=/usr/local/hadoop
            export PATH=$PATH:/usr/local/hadoop/bin

有时候配置这种涉及到路径的环境时尽量就把文件的绝对路径写上去。开启服务的时候遇到提醒not found source的情况可能就是设置的路径不对。

如果要配置分布式的hadoop需要启用ssh,在hadoop里面是采用的master-slave的架构。把主节点主机名改为master,子节点的主机名改为salve1,salve2等等。。最后还需要设置要公钥和私钥,网上查看下就知道了。主要就是所有的slave都由master来管理,每个字虚拟机设置好公钥后私钥后将公钥交给master,当master需要去开启某个slave私钥加密的信息时就用slave发布出来的公钥来解密。

修改主机名的命令:sudo vi /etc/hostname

修改hosts:sudo vi /etc/hosts 将集群里所有的主机的ip地址写进去,如果能互ping就算成功

    修改虚拟机的静态ip:这里首先查下电脑主机的网关,然后输入命令sudo vi /etc/network/interfaces

auto eth0
iface eth0 inet static
address 192.168.0.117
gateway 192.168.0.1 #这个地址你要确认下 网关是不是这个地址
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255

注意这里的eth0,首先需要通过命令查看下虚拟机里的ip信息,通过命令ifconfig,能够看到ip信息左边有个名

字,不一定就是上面所写的eth0,我虚拟机里显示的是enp0s3。需要将自己的这个ip名填进上面eth0出现的地方。

设置的静态ip需要和hosts里设置的ip相同。

(这个问题也困扰了我很久)

这里最开始我采用的是NAT连接方式,电脑能上网但是两台虚拟不能互ping,查阅相关资料大概得知NAT的连接方式是电脑主机自动给虚拟机分配的ip地址,能够直接上网,但是网段不同无法实现两个虚拟机信息的交互。

采用桥接模式的话是根据电脑主机来分配网络给虚拟机,所以需要设置虚拟机的网关和主机网关一致,然后自己根据网关的网段设置ip地址。因为采用的是桥接模式,所以两个虚拟机只要在hosts里填了互相的ip地址以及主机名就能够互ping。

基本上ssh就配置好了,然后配置hadoop的一些文件。core-site.xml hdfs-site.xml mapred-site.xml,主要配置这三个文件。进行一些简单的主机名的更改和路径的更改后需要格式化,命令:hadoop namenode -format。然后就可以开启hadoop服务 start-all.sh。启动完毕后通过命令jps来查看是否开启成功,主要的几个进程就是NamoNode,DataNode,然后打开网页输入网址 "主机名:8088"和"主机名:50070"如果能成功打开网页就算成功了。

如果遇到namdenode没有启动,可能就是没有进行格式化操作。

如果datanode没有启动,可能是因为多次的格式化造成的clusterID不一致,去hadoop文件夹里找到name和data文件夹里的version文件,将name的clusterID复制给data就行了。

是什么问题造成的一般会在启动的时候会有启动信息,认真看一下就行了。我遇到的datanode没有启动就是在hosts里没有设置localhost 127.0.0.1。如果没有没有启动datanode服务造成的结果就是当使用eclipse导入hadoop文件的时候只能导入文件无法导入数据内容。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值