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
easyhadoop初识以及各种问题的更多相关文章
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- 初识Hadoop
第一部分: 初识Hadoop 一. 谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...
- python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
- 初识IOS,Label控件的应用。
初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...
- UI篇(初识君面)
我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- 初识SpringMvc
初识SpringMvc springMvc简介:SpringMVC也叫Spring Web mvc,属于表现层的框架.Spring MVC是Spring框架的一部分,是在Spring3.0后发布的 s ...
- 初识redis数据类型
初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...
- Redis初识、设计思想与一些学习资源推荐
一.Redis简介 1.什么是Redis Redis 是一个开源的使用ANSI C 语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value 数据库,并提供多种语言的API.从2010 年 ...
随机推荐
- android面试题之六
三十一.AIDL的全称是什么?如何工作?能处理哪些类型的数据? 英文全称:Android Interface Define Language(Android接口定义语言). 当A进程要去调用B进程中的 ...
- Android中获取网页表单中的数据实现思路及代码
在Android中获取网页里表单中的数据具体实现代码如下,感兴趣的各位可以参考过下哈,希望对大家有所帮助 MainActivity如下: 复制代码 代码如下: package cn.testjavas ...
- 掌握jQuery插件开发,这篇文章就够了
---恢复内容开始--- 在实际开发工作中,总会碰到像滚动,分页,日历等展示效果的业务需求,对于接触过jQuery以及数据jQuery使用的人来说,首先想到的肯定是寻找现有的jQuery插件来满足形影 ...
- C#在局域网中连接Liunx上的MySql数据库
前期准备工作: 我所用的平台是VS2010和Ubuntu 14.04.3 LTS 一.由于MySql并没有集成在VS2010中所以要先安装MySQL Connector Net 6.9.8连接工具, ...
- hbase 单机模式安装
1:下载安装包(我下载的0.94版本,如果考虑后期与hadoop兼容,需要找合适的版本) http://mirrors.hust.edu.cn/apache/hbase/hbase-0.94.20/h ...
- iPhoneKeyboard
iPhoneKeyboard.Open static function Open (text : string, keyboardType : iPhoneKeyboardType = iPhoneK ...
- Java中构造方法的执行顺序
一.先执行内部静态对象的构造方法,如果有多个按定义的先后顺序执行:静态对象在构造的时候也是也先执行其内部的静态对象. 二.再调用父类的构造方法(父类还有父类的话,从最开始的基类开始调用),如果没有明显 ...
- Opensuse13.2开启ssh
要开启ssh很简单,步骤分为三步 步骤1: 安装ssh zypper install ssh 步骤2:启动ssh daemon网上很多通过 service 命令或者 init.d 目录中的脚本启动ss ...
- 视觉差效果 - jqyery scrollTop原理
原理是用页面的滚动高度scrollTop()来控制背景图的位置 附上源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition ...
- 利用JS实现HTML TABLE的分页
有时候table的列数太长,不利于使用者查询,所以利用JS做了一个table的分页,以下为相关代码 一.JS代码 <script type="text/javascript" ...