• easyhadoop初识以及各种问题


    版本:easyhadoop 1.2.1,操作系统:Centos 6.4;

    首先,我要说的是要用对版本,这点很重要。我使用ubuntu12.04 64bit 的虚拟机是不行的,安装直接报错。所以就下载了centos的iso,好像最新的比较好找,所以就下载了6.4的。下面就一步一步来看我的安装吧:

    1.首先vmware虚拟机安装centos6.4,选择nat网络连接方式。安装完成后,修改ip,固定ip,修改机器名,然后重启。具体修改如下(全部使用root账号):

    1.1 修改/etc/sysconfig/network-scripts/ifcfg-eth0,我的是如下:

    DEVICE=eth0
    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=192.168.128.152
    NETMASK=255.255.255.0
    GATEWAY=192.168.128.2
    DNS1=192.168.128.2

    1.2 修改/etc/sysconfig/network,我的机器名是node2

    NETWORKING=yes
    NETWORKING_IPV6=no
    HOSTNAME=node2
    GATEWAY=192.168.128.2

    1.3 /etc/resolv.conf 不需要修改 默认里面存的就是 nameserver 192.168.128.2。重启即可。重启之后使用/etc/init.d/sshd start ,默认好像没启动的。

    2. 下载easyhadoop,然后上传到node2,下载url:https://github.com/xianglei/easyhadoop

    3. 安装easyhadoop。

    3.1修改/root/easyhadoop-master/setup_centos_6.py文件的执行权限:chmod +x setup_centos_6.py (这里也可以看到我存放的路径,不过好像这个路径是没有关系的)。

    3.2 执行上面的文件 ./setup_centos_6.py,这里要保证网络的畅通,执行前,可以先ping www.baidu.com试试网络的情况。然后如果你网络速度ok的话(150k左右)应该10分钟左右就可以把所有的文件下载完成了,然后它就会提示你打开浏览器,输入机器名(使用ip代替),进行访问。

    3.3 设置hadoop。

    在浏览器中输入:http://192.168.128.152 (根据自己的ip进行输入),然后输入admin/123456(默认的用户名和密码)点击Enter即可进入系统。界面如下:


    刚开始是没有红色方框里面的记录的,(我设置好了才有的)。然后来一步一步进行设置:

    (1)点击nodes,然后看到左上角有创建节点和创建多个节点,点击创建节点出现下面的界面:


    按照上面进行设置,点击save,进行保存。这里可能会出现下面的错误:


    (这里的ip不对,这个是我之前创建的虚拟机上跑出现的错误,不必纠结这个问题)当出现上面的错误时,应该是ssh没有配置好,查看/etc/init.d/sshd status 状态,配置完成即可。

    点击下图红色框:


    可以看到下面的提示,如果没有提示,说明前面的步骤出错:


    选择第一个,然后save即可。

    (2)选择Install选项卡,然后点击Install,在弹出的框中点击Install,然后会出现相应的文件被安装,在最后的提示中会有Hadoop Installed(英语语法来说的话installed是完成时);

    (3)点击Settings选项卡,选择hadoop。然后点击左边的Templates(模板)选项,导入四个文件,如下:


    然后需要修改相应的文件内容,修改直接点击Edit即可。core-site.xml 基本不用修改,hadoop-env.sh加上

    export JAVA_HOME=/usr/java/default

    java默认的安装目录就是上面的。hdfs-site.xml中的dfs.replication变量值设置为1,mapred-site.xml中不需要修改。然后点击push node settings即可:


    然后,如果你出现了下面的错误:

    Caught exception: TSocket: Could not connect to 192.168.128.152:30050 (Connection refused [111])

    然后使用 netstat -lnp| grep 30050后没有东西出来,那么恭喜你,你可以重装系统了(虚拟机重装也很快,我都重装了2次)。easyhadoop中用到了30050端口来进行push,如果这个端口没有服务起来,那么基本就是前面啥地方出错了。我下午调了一下午都没搞定这个问题,重新建立一个虚拟机就好了。把iptables各种调都没用。。。

    (4)然后选择Service选项卡中的hadoop服务,出现下面的界面(刚开始namenode等等背景是红色的,改好后才变为蓝色):


    到了这里后,首先要使用mapred用户进行namenode的格式化,root用户直接 su mapred,然后直接 hadoop namenode -format即可。

    然后点击namenode的startnamenode,没用,其他的也是一样,都启动不了进程。使用mapred用户启动namenode试试,start-dfs.sh ,出现Permission Denied,好吧我看看权限原来这些start*、stop*文件都在 /usr/sbin/里面,且都是root的权限,而且不能执行,好吧,加上执行权限,然后使用root启动,直接./start-all.sh吧,然后启动namenode、jobtracker的时候没有让我输入密码,但是其他三个进程就要我输入密码,这是怎么回事?难道是前面有什么没有设置到的么?奇了个怪了。哎,不管那么多了,看下集群起来没,然后50030、50070,恩 ok了,都起来了。而且在监控里面,这个图超靓:


    这样就暂时搞定easyhadoop了。

    这里存在两个问题:

    其一:ssh要密码登陆问题,应该是前面没有设置好,还是什么的,但是有些进程需要密码,有些又不需要,这个很奇怪;

    其二:在下面的servie中的namenode界面中log信息看不到,看到出错的信息:


    不过最重要的应该是那个密码问题吧,如果每个节点启动还要输入密码,那还要什么easyhadoop呀,而且肯定应该不是要用代码启动的,肯定是要用界面中的那个按钮启动的。


    分享,成长,快乐

    转载请注明blog地址:http://blog.csdn.net/fansy1990


  • 相关阅读:
    jQuery使用手册之Ajax支持(8)
    jQuery使用手册之动态效果(6)
    jquery插件 操作select
    提高jQuery的性能
    jQuery起点教程之使用AJAX(4)
    jQuery起点教程之插件制作(7)
    IE开发工具栏
    信息安全之DNS欺骗详解
    颜色取色器
    使DIV不被select等控件遮挡的解决办法
  • 原文地址:https://www.cnblogs.com/riskyer/p/3341756.html
Copyright © 2020-2023  润新知