现在的位置: 首页 > Linux > 软件测试 > 测试工具 > 软件测试 > 测试技术 > 正文

Hadoop HBase部署手册

2012年12月12日 Linux, 测试工具, 测试技术 ⁄ 共 2942字 ⁄ 字号 评论 2 条 ⁄ 阅读 4,948 次

本文主要介绍HadoopHBase安装部署方法。

1.环境准备

1.1准备安装介质

Hadoop官网下载地址:

http://www.apache.org/dyn/closer.cgi/hadoop/common/

Hive官网下载地址:

http://www.apache.org/dyn/closer.cgi/hive/

HBase官网下载地址:

http://www.apache.org/dyn/closer.cgi/hbase/

1.2卸载open-java

查看系统自带的已经安装的java

$rpm -qa | grep java

java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

卸载自带java

$rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

$rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

1.3安装Sun-jdk

$cd /usr

unzip Sun-JDK

$vim /etc/profile

export JAVA_HOME=/usr/jdk1.6

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

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

$source /etc/profile

1.4编辑hosts文件

将集群中所有服务器的hostname添加到hosts文件中

$vi /etc/hosts

1.5关闭selinux安全验证和iptables

1.5.1关闭selinux安全验证

$vi /etc/sysconfig/selinux

修改SELINUX变量为disabled

SELINUX=disabled

使设置生效,不用重启机器

$setenforce 0

1.5.2关闭iptables

停止服务

$service iptables stop

关闭开机启动

$chkconfig iptables off

1.6创建新用户

1.6.1创建用户修改密码

$useradd hd

$passwd hd

1.6.2集群间设置ssh无密码访问

$mkdir ~/.ssh

$chmod 700 ~/.ssh/

在集群中所有服务器上生成密钥文件

$ cd ~/.ssh

$ ssh-keygen -t dsa

$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

$ chmod 600 ~/.ssh/authorized_keys

合并所有的authorized_keys文件,并同步到所有服务器节点上。

2.安装Hadoop

2.1解压 Hadoop tar

$tar -xzf hadoop-1.1.0.tar.gz

2.2设置Hadoop环境变量

$vi /etc/profile

增加以下环境变量

export HADOOP_HOME=/home/hd/hadoop/hadoop-1.1.0

export PATH=$PATH:$HADOOP_HOME/bin

生效修改

$source /etc/profile

2.3修改Hadoop的配置文件

2.3.1配置conf/core-site.xml文件


  • fs.default.nameNameNodeURIhdfs://主机名:端口/
  • hadoop.tmp.dirHadoop的默认临时路径,这个最好配置,如果在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的tmp目录即可。不过如果删除了NameNode机器的此目录,那么就需要重新执行NameNode格式化的命令。

2.3.2配置conf/mapred-site.xml文件


2.3.3配置conf/ hdfs-site.xml文件


  • dfs.name.dirNameNode持久存储名字空间及事务日志的本地文件系统路径。
    当这个值是一个逗号分割的目录列表时,nametable数据将会被复制到所有目录中做冗余备份。
  • dfs.data.dirDataNode存放块数据的本地文件系统路径,逗号分割的列表。
    当这个值是逗号分割的目录列表时,数据将被存储在所有目录下,不用于Namenode的冗余机制,Datanode将轮询地存储数据,所以讲Datanode的不同路径分布在不同的物理硬盘上将提升性能。
  • dfs.replication是数据需要备份的数量,默认是3,如果此数大于集群的机器数会出错。
  • name1name2data1data2目录不能预先创建,hadoop格式化时会自动创建。

2.3.4配置conf/hadoop-env.sh文件

增加JAVA_HOME环境变量


2.3.5配置masters文件

配置SecondaryNameNode,也可以配置成自己

$vi masters


其中namenodemaster服务器主机名

2.3.6配置slaves文件

$vi slaves


其中node1-8datanode服务器主机名

2.4启动Hadoop

2.4.1格式化NameNode

$./bin/hadoop namenode –format


格式化成功后在hdfs-site.xml中配置的/home/hd/hadoop/name1/home/hd/hadoop/name2两个目录会自动生成。

2.4.2启动Hadoop

$./bin/start-all.sh


启动成功后在hdfs-site.xml中配置的/home/hd/hadoop/data1/home/hd/hadoop/data2两个目录会自动生成。

2.4.3查看WEB页面

NameNode - http://master:50070/

JobTracker - http://master:50030/

3安装HBase

3.1解压HBase tar

$tar –xvf hbase-0.94.1.tar.gz

3.2设置Hbase的环境变量

$vi /etc/profile

增加以下环境变量

export HBASE_HOME=/home/hd/hbase/hbase-0.94.1

export PATH=$PATH:$HBASE_HOME/bin

生效修改

$source /etc/profile

3.3修改HBase的配置文件

3.3.1配置conf/hbase-site.xml文件


  • hbase.rootdirHbase的根目录位置url地址需要跟Hadoop设置的一致。该项不识别机器IP,只能使用hostname
  • hbase.cluster.distributed是是否采用分布式模式。
  • hbase.zookeeper.quorum是运行Zookeeper节点的主机名,个数必须为奇数。

3.3.2配置hbase-env.sh文件


  • HBASE_MANAGES_ZK是设置是否让Hbase管理Zookeeper

3.3.3配置regionservers文件


3.4启动Hbase

$./bin/stat-hbase.sh

3.5查看WEB页面

HBase Master - http://master:60010/