爱的技术可以应用到实际生活生产,做艺术向往的东西不腻和音乐。

现将前期手里面的一个项目做一个大致的总结,与大家一起分享、交流、进步。

项目如今正在线上执行,项目名——基于Hadoop的数据分析综合管理平台。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

项目流程总体比較清晰,爬取数据(txt文本)-->数据清洗-->文本模型训练-->文本分类-->热点话题发现-->报表"实时"展示,使用到的技术也是当今互联网公司经常使用的技术:Hadoop、Mahout、HBase、Spring Data Hadoop、JavaEE。

本文将Hadoop1、Zookeeper、HBase环境的搭建工作总结一下,关于项目中的其它情况,兴许博文会再做分享。

本文依照例如以下思路进行:

集群环境

RedHat5.5 OS

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

详细步骤

准备工作

查看RedHat版本号

arch/uname -a

改动主机名(重新启动生效)

vi /etc/sysconfig/network

改动hosts映射文件

vi /etc/hosts

222.22.91.70  master

222.22.91.68  slave1

222.22.91.69  slave2

改动Windows下hosts文件

C:\Windows\System32\drivers\etc\hosts

222.22.91.70  master

222.22.91.68  slave1

222.22.91.69  slave2

远程拷贝

scp /etc/hosts 222.22.91.70:/etc/

scp  /etc/hosts 222.22.91.70:/etc

配置SSH

rpm-qa | grep ssh  查看系统中是否已安装ssh

netstat-nat  查看port

ssh-keygen–t rsa

cd/root/.ssh

cp id_rsa.pub authorized_keys

cp id_rsa.pub slave1_id_rsa.pub

cp id_rsa.pub slave2_id_rsa.pub

先聚集

cat slave1_id_rsa.pub >> authorized_keys

cat lave2_id_rsa.pub >> authorized_keys

再分发

scp authorized_keys slave1:/root/.ssh

scp authorized_keys slave2:/root/.ssh

每一个节点都持有其它节点的公钥。免密钥登录。

配置JDK

查询是否已安装过java

rpm -qa | grep java   

rpm -qa | grep jdk





卸载旧版本号jdk 

yum remove java

rpm -e --nodeps (gcc-java-4.1.2-48.el5)

安装新的jdk

cd/usr

mkdirjava

在/usr/java中运行

./jdk-6u24-linux-i586.bin

解压后所在路径:/usr/java/jdk1.6.0_24

配置java环境变量(见文章最后的附录)

安装Hadoop

解压缩

cd/home/yujianxin/

mkdir  hadoop

tar–zxvf hadoop-1.1.2.tar.gz

配置Hadoop环境变量(见文章最后的附录)

依次改动conf/下的

hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.6.0_24/

# set hbase environment

export HBASE_HOME=/home/yujianxin/hbase/hbase-0.94.7-security

export HADOOP_CLASSPATH=.:$CLASSPATH:$HADOOP_CLASSPATH:$HADOOP_HOME/bin:$HBASE_HOME/hbase-0.94.7-security.jar:$HBASE_HOME/hbase-0.94.7-security-tests.jar:$HBASE_HOME/conf:$HBASE_HOME/lib/zookeeper-3.4.5.jar:$HBASE_HOME/lib/protobuf-java-2.4.0a.jar(配置此句,避免以后执行HBase
MapReduce出错)

core-site.xml

<configuration>

<property>

<name>fs.default.name</name>

<value>hdfs://master:9000</value>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/home/yujianxin/hadoop/hadoop-1.1.2/HadoopTempDir

</value>

</property>

</configuration>

人为创建hadoop.tmp.dir

hdfs-site.xml

<configuration>

<property>

<name>dfs.name.dir</name>

<value>/work/hadoop/name/name1,/work/hadoop/name/name2</value>

<description>动态挂载移动硬盘,挂载到/work路径下</description>

</property>

<property>

<name>dfs.data.dir</name>

<value>/work/hadoop/data/data1,/work/hadoop/data/data2</value>

<description>动态挂载移动硬盘,挂载到/work路径下</description>

</property>

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

<property>

<name>dfs.permissions</name>

<value>false</value>

</property>

</configuration>

注:

dfs.name.dir、dfs.data.dir文件夹不能人为创建。由Hadoop自己主动创建。

当中,

(1)dfs.name.dir是运行hadoop namenode -format时创建。

(2)dfs.data.dir是运行start-all.sh时创建。

mapred-site.xml

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>master:9001</value>

</property>

<property>

<name>mapred.local.dir</name>

<value>/work/hadoop/mapred/mapred1,/work/hadoop/mapred/mapred2</value>

</property>

</configuration>

masters文件

master

slaves文件

slave1

slave2

格式化一个新的分布式文件系统

hadoop namenode -format

启动

start-all.sh

验证

方式一、查看启动的Java守护进程

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

方式二、通过web端

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

安装Zookeeper

cd/home/yujianxin/

mkdirzookeeper

tar–zxvf zookeeper-3.4.5.tar.gz

加入zookeeper环境变量(见附录)

改动conf/zoo_sample.cfg为zoo.cfg,配置

dataDir=/home/yujianxin/zookeeper/zookeeper-3.4.5/data

logDir=/home/yujianxin/zookeeper/zookeeper-3.4.5/log

server.0=master:2887:3887

server.1=slave1:2887:3887

server.2=slave2:2887:3887

在zookeeper-3.4.5文件夹创建data和log文件夹

在data目录下创建文件myid,里面填写zookeeper服务器的id号,如上面的server.0的0就是一个id号。

启动、測试

每台机器都运行

zkServer.sh start

zkServer.sh status

运行Zookeeper的Shellclient命令zkCli.sh

安装HBase

解压缩

cd/home/yujianxin/

mkdirhbase

tar–zxvf hbase-0.94.7-security.tar.gz

加入hbase环境变量(见博文附录)

改动conf/下的配置文件

hbase-env.sh

exportJAVA_HOME=/usr/java/jdk1.6.0_24/

exportHBASE_MANAGES_ZK=false  #不使用HBase自带的Zookeeper

hbase-site.xml

<configuration>

<property>

<name>hbase.rootdir</name>

<value>hdfs://master:9000/hbase_yjx</value>

<description>HDFS提供底层存储<description>

</property>

<property>

<name>hbase.cluster.distributed</name>

<value>true</value>

</property>

<property>

<name>hbase.zookeeper.quorum</name>

<value>master,slave1,slave2</value>

<description>关联Zookeeper集群<description>

</property>

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

<property>

<name>hbase.coprocessor.user.region.classes</name>

<value>org.apache.hadoop.hbase.coprocessor.AggregateImplementation</value>

</property>

</configuration>

regionnserve

slave1

slave2

启动、验证

start-hbase.sh

验证一。查看HMaster、HRegionServer守护进程

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

验证二、web端

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

附录:

/etc/profile(保留一份。以后当模板用即可了,哈哈)

# /etc/profile

# set java environment

export JAVA_HOME=/usr/java/jdk1.6.0_24

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

# set hadoop environment

exportHADOOP_HOME=/home/yujianxin/hadoop/hadoop-1.1.2

exportPATH=$PATH:$HADOOP_HOME/bin

exportHADOOP_HOME_WARN_SUPPRESS=not_null

# set zookeeper environment

exportZOOKEEPER_HOME=/home/yujianxin/zookeeper/zookeeper-3.4.5

exportPATH=$PATH:$ZOOKEEPER_HOME/bin

# set hbase environment

exportHBASE_HOME=/home/yujianxin/hbase/hbase-0.94.7-security

exportPATH=$PATH:$HBASE_HOME/bin

OK。基于Hadoop1、HBase的大数据处理分析开发环境搭建完成,欢迎大家留言交流哟

Mahout学习中,Storm学习...

版权声明:本文博主原创文章,博客,未经同意不得转载。

Hadoop-1.1.2、HBase-0.94.7完全分布式集群结构的更多相关文章

  1. HBase 1.2.6 完全分布式集群安装部署详细过程

    Apache HBase 是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,是NoSQL数据库,基于Google Bigtable思想的开源实现,可在廉价的PC Server上搭建大规模结构化存 ...

  2. hadoop学习第二天-了解HDFS的基本概念&&分布式集群的搭建&&HDFS基本命令的使用

    一.HDFS的相关基本概念 1.数据块 1.在HDFS中,文件诶切分成固定大小的数据块,默认大小为64MB(hadoop2.x以后是128M),也可以自己配置. 2.为何数据块如此大,因为数据传输时间 ...

  3. Hadoop 2.4.1+HBase 0.98.6.1 分布式安装

    参考:http://blog.csdn.net/wind520/article/details/39856353

  4. 通过tarball形式安装HBASE Cluster(CDH5.0.2)——配置分布式集群中的YARN ResourceManager 的HA

    <?xml version="1.0"?> <!-- Licensed under the Apache License, Version 2.0 (the &q ...

  5. Hadoop上路-01_Hadoop2.3.0的分布式集群搭建

    一.配置虚拟机软件 下载地址:https://www.virtualbox.org/wiki/downloads 1.虚拟机软件设定 1)进入全集设定 2)常规设定 2.Linux安装配置 1)名称类 ...

  6. 分布式集群搭建(hadoop2.6.0+CentOS6.5)

    摘要:之前安装过hadoop1.2.1集群,发现比较老了,后来安装cloudera(hadoop2.6.0),发现集成度比较高,想知道原生的hadoop什么样子,于是着手搭建一个伪分布式集群(三台), ...

  7. 分布式实时日志系统(四) 环境搭建之centos 6.4下hbase 1.0.1 分布式集群搭建

    一.hbase简介 HBase是一个开源的非关系型分布式数据库(NoSQL),它参考了谷歌的BigTable建模,实现的编程语言为 Java.它是Apache软件基金会的Hadoop项目的一部分,运行 ...

  8. hadoop搭建伪分布式集群(centos7+hadoop-3.1.0/2.7.7)

    目录: Hadoop三种安装模式 搭建伪分布式集群准备条件 第一部分 安装前部署 1.查看虚拟机版本2.查看IP地址3.修改主机名为hadoop4.修改 /etc/hosts5.关闭防火墙6.关闭SE ...

  9. 基于HBase Hadoop 分布式集群环境下的MapReduce程序开发

    HBase分布式集群环境搭建成功后,连续4.5天实验客户端Map/Reduce程序开发,这方面的代码网上多得是,写个测试代码非常容易,可是真正运行起来可说是历经挫折.下面就是我最终调通并让程序在集群上 ...

随机推荐

  1. android Animation动画的xml使用

    在Android应用程序,使用动画效果,能带给用户更好的感觉,做动画能够通过XML或Android代码来实现. Animation动画效果的实现能够通过两种方式进行实现,一种是tweened anim ...

  2. Gradle入门系列(转)

    Gradle是一种构建工具,它抛弃了基于XML的构建脚本,取而代之的是采用一种基于Groovy的内部领域特定语言.近期,Gradle获得了极大的关注,这也是我决定去研究Gradle的原因. 这篇文章是 ...

  3. 认识Underscore

    Underscore一个JavaScript实用库,提供了一整套函数式编程的实用功能,但是没有扩展任何JavaScript内置对象.它弥补了部分jQuery没有实现的功能,同时又是Backbone.j ...

  4. 我收集的sonar参考资料

    sonarQube代码质量管理工具环境筹建笔记 http://www.myexception.cn/open-source/1307345.html 配置sonar.jenkins进行持续审查 htt ...

  5. spring 配置属性的详细信息

    摘要(这篇文章讲的红,蓝说这话节) 字面值 字面值:可用字符串表示的值,能够通过<value>元素标签或value属性进行注入 基本数据类型及其封装类.String等类型都能够採取字面值注 ...

  6. MonkenRunner通过HierarchyViewer定位控制的方法和建议(Appium/UIAutomator/Robotium侣)

    1. 背景 正在使用MonkeyRunner当我们经常使用Chimchat下面HierarchyViewer模块获得目标控制的一些信息,以协助我们测试.但在MonkeyRunner官方的说法是没有看到 ...

  7. 解决 U盘安装Windows Server 2012 R2 报错 Windows 无法打开所需的文件 Sources\install.wim

    报错原因: 使用UltraISO等软件刻录镜像时默认使用FAT32文件系统,该系统不支持大于4G的文件, 而Server 2012 R2的安装文件install.wim为5.12G,固安装失败. 解决 ...

  8. flask+gevent+gunicorn+nginx 初试

    1.安装flask pip install flask 2.安装gevent pip install gevent 3.安装gunicorn pip install gunicorn 版本信息例如以下 ...

  9. 旧Mj下拉刷新 An instance 0xca90200 of class UITableView was deallocated while key value observers were s

    An instance 0xca90200 of class UITableView was deallocated while key value observers were still regi ...

  10. Chapter 1 Securing Your Server and Network(3):使用托管服务帐号

    原文:Chapter 1 Securing Your Server and Network(3):使用托管服务帐号 原文出处:http://blog.csdn.net/dba_huangzj/arti ...