[HBase] 完全分布式安装过程详解

2019-03-28 13:04|来源: 网络

HBase版本:0.90.5
 
Hadoop版本:0.20.2
 
OS版本:CentOS
 
安装方式:完全分布式(1个master,3个regionserver)
 
1)解压缩HBase安装文件
 
[hadoop@node01 ~]$ tar -zxvf hbase-0.90.5.tar.gz
 
解压缩成功后的HBase主目录结构如下:
 

[hadoop@node01 hbase-0.90.5]$ ls -l
 
total 3636
 
drwxr-xr-x. 3 hadoop root    4096 Dec  8  2011 bin
 
-rw-r--r--. 1 hadoop root  217043 Dec  8  2011 CHANGES.txt
 
drwxr-xr-x. 2 hadoop root    4096 Dec  8  2011 conf
 
drwxr-xr-x. 4 hadoop root    4096 Dec  8  2011 docs
 
-rwxr-xr-x. 1 hadoop root 2425490 Dec  8  2011 hbase-0.90.5.jar
 
-rwxr-xr-x. 1 hadoop root  997956 Dec  8  2011 hbase-0.90.5-tests.jar
 
drwxr-xr-x. 5 hadoop root    4096 Dec  8  2011 hbase-webapps
 
drwxr-xr-x. 3 hadoop root    4096 Apr 12 19:03 lib
 
-rw-r--r--. 1 hadoop root  11358 Dec  8  2011 LICENSE.txt
 
-rw-r--r--. 1 hadoop root    803 Dec  8  2011 NOTICE.txt
 
-rw-r--r--. 1 hadoop root  31073 Dec  8  2011 pom.xml
 
-rw-r--r--. 1 hadoop root    1358 Dec  8  2011 README.txt
 
drwxr-xr-x. 8 hadoop root    4096 Dec  8  2011 src
 
2)配置hbase-env.sh
 
[hadoop@node01 conf]$ vi hbase-env.sh
 

# The java implementation to use.  Java 1.6 required.
 
export JAVA_HOME=/usr/java/jdk1.6.0_38
 

 


# Extra Java CLASSPATH elements.  Optional.
 
export HBASE_CLASSPATH=/home/hadoop/hadoop-0.20.2/conf
 

 

3)配置hbase-site.xml
 
[hadoop@node01 conf]$ vi hbase-site.xml
 

<configuration>
 

  <property>
 
    <name>hbase.rootdir</name>
 
    <value>hdfs://node01:9000/hbase</value>
 
  </property>
 
  <property>
 
      <name>hbase.cluster.distributed</name>
 
      <value>true</value>
 
  </property>
 

  <property>
 
        <name>hbase.zookeeper.quorum</name>
 
        <value>node01,node02,node03,node04</value>
 
    </property>
 
    <property>
 
        <name>hbase.zookeeper.property.dataDir</name>
 
        <value>/var/zookeeper</value>
 
    </property>
 
</configuration>
 

 

4)配置regionservers
 
[hadoop@node01 conf]$ vi regionservers
 

node02
 
node03
 
node04

相关问答

更多
  • 也许你的“大师”概念与HMaster并不完全相同。 HMaster用于管理目的,例如标识哪个RegionServer包含给定表的给定行集的Region。 任何表的行中的所有数据都将位于RegionServer的内部。 向RegionServers读取数据/从RegionServers写入数据是在没有与HMaster进行任何交互的情况下完成的,除了确定行所在的服务器。 回到“master”vs“slaves”机器拓扑:您可能决定将序列前缀存储为单独的表。 然后,可以与子前缀树分开管理用于前缀的RegionSe ...
  • 伪分布意味着您正在一台机器上运行所有进程。 您需要检查所有必需的进程是否正在运行: Hadoop的: 的NameNode 数据管理部 JobTracker的 的TaskTracker 动物园管理员: HQuorumPeer HBase的: HMASTER RegionServer的 您还需要确保您的hbase-site.xml包含定义主机名和端口的zookeeper的正确条目。 HBase FAQ和Wiki真的很不错。 你从那里错过了什么? Pseudo-distributed means that you ...
  • 如果表位于两个单独的集群中,则需要从一个集群到另一个集群中获取一个HBase表。 这可以通过sqoop完成。 从那里开始,理论上你可以按照Vignesh I的建议使用Phoenix ,但是,有一些限制。 您需要创建两个HBase表的Phoenix视图。 目前凤凰城的原生HBase视图如果在Phoenix之外更新,则不会自动更新,而大多数本机HBase表都是如此。 这有效地呈现Phoenix快照中的本机HBase表的视图而不是视图; 您需要定期重建任何索引(以及可能的统计信息),以捕获对基础HBase表的任何 ...
  • 你说ls -l start-hbase.sh的输出是: -rwxr-xr-x 1 root root 1872 huhti 4 2013 start-hbase.sh 如果你想知道你正在登录的用户和组,我们有简单的方法: touch test ls -l test 并检查用户:组... 问题是脚本的用户所有者和组所有者..您有两个解决方案: 1) sudo chown hduser:hduser start-hbase.sh #here hduser is example...you should k ...
  • 将HBASE_HOME属性正确设置为HBASE安装目录并检查 设置HBASE_HOME = / PATH / TO / HBASE Set the HBASE_HOME property correctly to the HBASE installation directory and check set HBASE_HOME=/PATH/TO/HBASE
  • 我删除了/ etc / hosts中与127.0.0.1相关的所有条目并将hdfs-site.xml复制到所有节点中的$ HBASE_HOME / conf之后,问题得以解决 The problem solved after I removed all entries related to 127.0.0.1 in /etc/hosts and copied the hdfs-site.xml to $HBASE_HOME/conf in all nodes
  • 我发现我使用的是Docker版本1.8.2完全删除Docker然后安装旧版本(1.7.0)然后我的脚本正常运行 I found out that I'm using Docker version 1.8.2 After fully remove Docker then install the older one (1.7.0) then my script run normally
  • 您需要在hbase-site.xml中配置zookeeper znode。 zookeeper.znode.parent /hbase 不匹配可能是由于默认配置。 您可以使用zkcli验证ZooKeeper中的可用znode。 You need to configure zookeeper znode in hbase-site.xml. zookeep ...
  • HDFS是一个分布式文件系统 ; 可以在其上执行大多数常规FS操作,例如列出目录中的文件,编写常规文件,读取文件的一部分等。它不仅仅是“结构化或非结构化数据的集合”,而不是EXT4或NTFS文件系统是。 HBase是一个内存中的键值存储,它可以持久存储到HDFS (这不是一个硬盘要求,你可以在任何分布式文件系统上运行HBase)。 对于要求HBase的任何读取密钥请求,它将首先检查其运行时内存缓存,以查看它是否具有缓存的值,否则访问其在HDFS上存储的文件以查找和读出特定值。 HBase中提供了各种配置来控 ...
  • Sqoop的直接连接器通常不支持HBase,这绝对是MySQL直连接头的情况。 如果需要将数据导入HBase,则应删除--direct选项。 Sqoop's direct connectors usually do not support HBase and this is definitely the case for MySQL direct connector. You should drop the --direct option if you need import data into HBase ...