设为首页 收藏本站
查看: 2057|回复: 0

[经验分享] 伪分布式安装Hadoop + zookeeper + hbase安装配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-5-7 08:57:54 | 显示全部楼层 |阅读模式
一.  安装JDK,配置环境JAVA环境变量
exportJAVA_HOME=/home/jdk1.6.0_27
exportJRE_HOME=/home/jdk1.6.0_27/jre
exportANT_HOME=/home/apache-ant-1.8.2
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
二.  安装Hadoop-1.0.3
sudotar -xzf hadoop-1.0.3.tar.gz
  • 2.  配置Hadoop环境变量

exportHADOOP_INSTALL=/home/hadoop-1.0.3
exportPATH=$PATH:$HADOOP_INSTALL/bin
  • 3.  查看hadoop版本

输入 hadoop version命令后输入下图,则安装hadoop成功

  • 4.  修改配置文件
  • a)    解压hadoop-1.0.3/hadoop-core-1.0.3.jar
  • b)    去解压后的hadoop-core-1.0.3文件夹下,复制文件core-default.xml,hdfs-default.xml,mapred-default.xml三个文件到hadoop-1.0.3/conf/下,删除hadoop-1.0.3/conf/文件夹下的core-site.xml,hdfs-site.xml,mapred-site.xml,将复制过来的三个文件的文件名中的default修改为site
  • c)    在hadoop-1.0.3文件夹同级创建文件夹hadoop,打开core-site.xml文件,修改属性节点下的name节点为hadoop.tmp.dir对应的value节点,修改为/home/${user.name}/hadoop/hadoop-${user.name}这样hadoop生成的文件会放入这个文件夹下.修改name节点为fs.default.name对应的value节点,修改为hdfs://localhost:9000/

打开mapred-site.xml文件,修改property节点下name为mapred.job.tracker对应的的value, 改为:localhost:9001
三.  安装ssh
  • 1.  执行命令安装ssh:sudo apt-get install ssh
  • 2.  基于空口令创建一个新SSH密钥,以启用无密码登陆
  • a)    ssh-keygen-t rsa -P '' -f ~/.ssh/id_rsa

      b)    cat ~/.ssh/id_rsa.pub>> ~/.ssh/authorized_keys
  • 3.  测试

sshlocalhost

输入yes

再次输入ssh localhost
成功之后,就不需要密钥
四.  格式化HDFS文件系统
输入指令:
hadoopnamenode –format

五.  启动和终止守护进程
启动和终止HDFS和MapReduce守护进程,键入如下指令
启动start-all.sh(start-dfs.sh,start-mapred.sh)

出错了,JAVA_HOME is not set
需要修改文件,打开hadoop-1.0.3/conf/hadoop-env.sh

将红线以内部分注释解开,修改为本机JAVA_HOME

再次执行启动命令start-all.sh

停止stop-all.sh(stop-dfs.sh,stop-mapred.sh)
到此,hadoop就已经安装完成了
六.  Hadoop文件系统
  • 1.  查看hadoop所有块文件

执行命令:
hadoopfsck / -files –blocks
此结果显示,hadoop文件系统中,还没有文件可以显示
  • 2.  将文件复制到hadoop文件系统中
  • a)    在hadoop文件系统中创建文件夹,执行命令:

hadoopfs –mkdir docs
  • b)    复制本地文件到hadoop文件系统中执行命令:

hadoopfs -copyFromLocal docs/test.txt \
hdfs://localhost/user/docs/test.txt
  • c)    复制hadoop文件系统中的文件回本地,并检查是否一致

复制:hadoop fs -copyToLocal docs/test.txt docs/test.txt.bat
检查:md5 docs/test.txt docs/text.txt.bat
检查结果若显示两个md5加密值相同,则文件内容相同。
  • d)    查看HDFS文件列表

执行命令:
hadoopfs –ls
e)    再次查看文件系统文件块
执行命令:
hadoopfsck / -files –blocks
此处为文件备份数量,可以调整,打开hadoop-1.0.3/conf/hdfs-site.xml文件,
此处修改文件备份数量
七.  安装zookeeper
  • 1.  准备

zookeeper-3.4.3.tar.gz
下载地址:
http://apache.etoak.com/zookeeper/zookeeper-3.4.3/zookeeper-3.4.3.tar.gz
  • 2.  安装zookeeper

执行命令:tar zookeeper-3.4.3.tar.gz解压安装文件
  • 3.  环境变量

执行sudo vim /etc/profile
打开后加入
exportZOOKEEPER_HOME=/home/zookeeper-3.4.3
exportPATH=$PATH:$ZOOKEEPER_HOME/bin
执行命令 source  /etc/profile 让环境变量生效
  • 4.  配置zookeeper

打开zookeeper /conf/coo.cfg
###以下是文件内容
#zookeeper基本时间单元(毫秒)
tickTime=2000
#zookeeper存储持久数据的本地文件系统位置
dataDir=/home/xxx/zookeeper
#zookeeper用户监听客户端连接的端口
clientPort=2181
###文件内容结束
保存文件后切换到 zookeeper/bin/目录下
执行./zkServer.sh start
执行./zkServer.sh status ,
echostat | nc –q 1 localhost,
echostat | nc localhost 2181 查看状态
执行 echo ruok | nc localhost 2181
执行结果为 imok  是I am ok的意思表示安装并启动成功
关闭zookeeper
./zkServer.shstop

八.  安装hbase
  • 1.  准备

hbase-0.92.1.tar.gz
下载地址:
http://labs.mop.com/apache-mirror/hbase/hbase-0.92.1/hbase-0.92.1.tar.gz
  • 2.  安装hbase

执行命令 tar hbase-0.92.1.tar.gz解压安装文件
  • 3.  环境变量

执行sudo vim /etc/profile
打开后加入
exportHBASE_HOME=/home/hbase-0.92.1
exportPATH=$PATH:$HBASE_HOME/bin
执行命令 source  /etc/profile 让环境变量生效
  • 4.  配置hbase
  • a)     打开hbase/conf/hbase-env.sh 加入如下内容

export JAVA_HOME=/home/jdk1.6.0_26
export HBASE_MANAGERS_ZK=false
export HBASE_HOME=/home/hbase-0.92.1
export HADOOP_INSTALL=/home/hadoop-1.0.3
修改HBASE_OPTS为:exportHBASE_OPTS="$HBASE_OPTS -XX:+HeapDumpOnOutOfMemoryError-XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode"
  • b)     打开hbase/conf/hbase-site.xml加入如下内容



<configuration>
<property>
          <name>hbase.rootdir</name>
                 <value>hdfs://localhost:9000/hbase</value>
</property>
<property>
          <name>hbase.cluster.distributed</name>
          <value>true</value>
</property>
<property>
<name>hbase.master</name>
<value>localhost:60000</value>
</property>
   <property>
          <name>hbase.master.port</name>
          <value>60000</value>
          <description>Theport master should bind to.</description>
   </property>
</configuration>
打开regionservers文件放入localhost
先把hadoop启动起来 执行start-all.sh
转入hbase/bin/目录下
执行./start-hbase.sh 脚本,启动hbase
                            启动成功后执行hbase shell进去shell模式下
                            执行create ‘test’, ‘data’创建表。执行结果如下:
                           
                            执行list查询表,执行结果如下:
                           
                            这样我们就安装成功了
九.  Eclipse结合MapReduce
  • 1.  准备

Eclipse  IDE version=3.7
org.apache.hadoop.eclipse.merit_1.1.0.jar
将org.apache.hadoop.eclipse.merit_1.1.0.jar复制到eclipse安装目录的Plugin目录下
启动hadoop,start-all.sh
启动eclipse
  • 2.  配置MapReduce

点击菜单栏的WindowàpreferencesàHadoopMap/Reduce

配置hadoop目录

  • 3.  打开MapReduce视图

打开IDE的WindowàShowViewàOther

打开Map/Reduce Locations

在视图中创建一个新的Hadoop Location


将Map/Reduce Master(Job Tracker的IP和端口)中的配置,Host和Port修改为配置文件hadoop-1.0.3/conf/mapred-site.xml中的mapred.job.tracker属性的值

选中DFS Master(Name Node的IP和端口),配置其中Host和Port,修改为配置文件hadoop-1.0.3/conf/core-site.xml中的fs.default.name属性的值

username默认的就行了,
点击finish
项目栏出现树状菜单,标识设置成功

这样就可以在eclipse中使用hadoop的文件系统了

  • 4.  创建Map/Reduce项目

FileàNewàOther

输入Map/Reduce Projectànext

输入项目名称àfinish

创建成功

创建Mapper和Reduce类,
Mapper的创建:
选中项目中的包,右键àNewàOther

输入MapperàNext

输入类名àfinish,该类自动继承
org.apache.hadoop.mapred.MapReduceBase这个类

Reduce的创建和Mapper是一样的
最后导入WordCount这个类此类位置
从hadoop自带的$HADOOP_HOME/src/examples/org/apache/hadoopexamples/WordCount.java
将此文件copy到刚创建的MapReduce项目中
  • 5.  运行WordCount

点击项目右键àRun AsàRun on Hadoop

输入WordCountà点击OK

选中刚刚配置的Map/Reduce Location点击finish

控制台输出

这个表示缺少两个参数

点击RunConfigurations,选中Arguments

编写两个参数,一个输入文件所在目录,一个输出文件所在目录,输出文件所在目录项目会自动帮我们创建,输入文件目录需要我们自己手动创建.
首先在local创建一个文件夹,再创建两个或两个以上文件
  • a)    mkdirinput
  • b)    cdinput
  • c)    touchfile1
  • d)    touchfile2
  • e)    打开文件1  vim file1,输入”Hello World”, 打开文件2  vim file2

输入”Hello Hadoop”
  • f)     cd ..
  • g)    将input文件夹下的文件放入hadoop文件系统中hadoop fs –put input input
  • h)    在Arguments中的Program arguments中输入两个参数,一个输入文件夹,一个输出文件夹,/user/input /user/output,输出文件夹项目会帮我们创建
  • i)     再次运行项目


这样证明项目正常运行了
  • j)     刷新eclipse中的文件系统目录




  • k)    双击part-r-00000


这样表示input文件夹下的所有文件包含内容信息



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-64475-1-1.html 上篇帖子: 基于Cloudera Manager 5和CDH5(版本5.3.3)的Hadoop集群安装 下篇帖子: hive优化----控制hive中的reduce数:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表