前言
这是其附带的HBase版本的官方参考指南。
在这里,您可以找到有关HBase主题的权威性文档(指当引用的HBase版本发运时的状态),也可以指向Javadoc或 JIRA中可以找到相关信息的位置。
关于本指南
本参考指南正在进行中。可以在HBase源代码的_src / main / asciidoc目录中找到本指南的源代码。该参考指南使用AsciiDoc进行了标记,从中生成完成的指南作为“site”构建目标的一部分。执行:
mvn site
生成此文档。欢迎对文档进行修改和改进。单击此处可以针对Apache HBase提交新的文档错误,并预先选择一些值。
贡献文档
有关AsciiDoc的概述以及开始对文档做出贡献的建议,请参阅本文档后面的相关部分。
如果这是您首次涉足分布式计算领域,请多加注意…
如果这是您首次进入分布式计算的美好世界,那么您将度过一段有趣的时光。首先,分布式系统很难。使分布式系统运行需要涵盖系统(硬件和软件)和网络的完全不同的技能。
群集运行可能会因各种原因出现小问题,原因包括:HBase本身的错误,错误配置——HBase的错误配置以及操作系统的错误配置,以及硬件问题——无论是网卡驱动程序中的错误还是RAM总线不足(要注意两个最近的硬件问题示例,这些问题表现为“ HBase缓慢”)。如果您已将计算绑定到单一的box,则还需要重新校准。
这是一个很好的起点:分布式计算的谬误。
就是说,不客气。
这是一个有趣的地方。
您好,HBase社区。
报告错误
请使用JIRA报告与安全无关的错误。
为了保护现有的HBase安装不受新漏洞的侵扰,请不要使用JIRA报告与安全性有关的错误。而是将您的报告发送到邮件列表private@hbase.apache.org,该列表允许任何人发送消息,但限制了可以读取消息的人。该列表中的某人将与您联系以跟进您的报告。
支持和测试期望
在本指南中,短语/ supported /,/ notsupported /,/ tested /和/ not testing /出现在几个地方。为了清楚起见,这里简要说明了在HBase上下文中这些短语的一般含义。
特别注意:许多Hadoop供应商为Apache HBase提供了商业技术支持。这不是在Apache HBase项目的上下文中使用术语/ support /的意义。Apache HBase团队对您的HBase集群,您的配置或数据不承担任何责任。
supported 支持的
在Apache HBase的上下文中,/ supported /表示HBase设计为按所述方式工作,并且与已定义行为或功能的偏差应报告为错误。
notsupported 不支持
在Apache HBase的上下文中,/ notsupported /表示用例或使用模式不起作用,应将其视为反模式。如果您认为对于给定的功能或使用模式某个设计应该被重新考虑,请提交JIRA或在其中一个邮件列表上进行讨论。
tested 经过测试
在Apache HBase的上下文中,/ tested /表示该功能已包含在单元测试或集成测试中,并且已被证明可以按预期工作。
not testing 未测试
在Apache HBase的上下文中,/ not testing /表示功能或使用模式可能以给定方式工作,也可能无法工作,并且可能会或可能不会破坏您的数据或导致操作问题。这是一个未知数,并且无法保证。如果您可以提供证明/not testing/的功能确实可以通过给定的方式工作的证据,请提交测试和度量标准,以便其他用户可以确定此类功能或使用方式。
入门
1.简介
快速入门可帮助您在HBase的单节点独立实例上运行。
2.快速入门-独立HBase
本节描述了单节点独立HBase的安装。一个独立的实例具有HBase所有的守护程序-Master,RegionServers和ZooKeeper,它们在单个JVM中运行,并保留在本地文件系统中。这是我们最基本的简介。我们将向您展示如何使用hbase shell在HBase中创建表,如何在表中插入行,对表执行put和scan操作,启用或禁用表以及启动和停止HBase。
除了下载HBase之外,此步骤还需要不到10分钟的时间。
2.1。JDK版本要求
HBase要求安装JDK。有关受支持的JDK版本的信息,请参见Java——翻译地址。
2.2。HBase入门
2.2.1 以独立模式下载,配置和启动HBase
2.2.1.1、下载
从Apache下载镜像列表中选择一个下载站点。单击建议的顶部链接。这将带您了解HBase版本。单击名为stable 的文件夹,然后将以.tar.gz结尾的二进制文件下载到本地文件系统。现在不要下载以src.tar.gz结尾的文件。
2.2.1.2 解压缩
解压缩下载的文件,然后转到新创建的目录。
$ tar xzvf hbase-2.0.6-bin.tar.gz
$ cd hbase-2.0.6/
2.2.1.3 配置JAVA_HOME
您需要在启动 HBase 之前设置JAVA_HOME环境变量。您可以通过操作系统的常用机制设置变量,但 HBase 提供了一个中心机制,conf/hbase-env.sh。编辑此文件,取消以JAVA_HOME开头的行的注释,并将其设置为适合您的操作系统的目录。该JAVA_HOME变量应设置为包含可执行文件bin/java 的目录。大多数现代 Linux 操作系统都提供了一种机制,例如 RHEL 或 CentOS 上的 /usr/bin/alternatives,用于在 Java 等可执行文件的版本之间透明地切换。在这种情况下,您可以设置JAVA_HOME为包含指向bin/java的符号链接的目录,通常是/usr.
JAVA_HOME=/usr
编辑conf/hbase-site.xml,这是主要的 HBase 配置文件。这时候需要在本地文件系统上指定HBase和ZooKeeper写入数据的目录,并确认一些风险。默认情况下,会在 /tmp 下创建一个新目录。由于许多服务器配置为在重新启动时删除/tmp的内容,因此您应该将数据存储在其他地方。以下配置将 HBase 的数据存储在用户名为testuser的hbase目录中,将标签粘贴到标签下方,在新的 HBase 安装中标签应该是空的。
示例 1.独立 HBase 的示例hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///home/testuser/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/testuser/zookeeper</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
<description>
Controls whether HBase will check for stream capabilities (hflush/hsync).
Disable this if you intend to run on LocalFileSystem, denoted by a rootdir
with the 'file://' scheme, but be mindful of the NOTE below.
WARNING: Setting this to false blinds you to potential data loss and
inconsistent system state in the event of process and/or node failures. If
HBase is complaining of an inability to use hsync or hflush it's most
likely not a false positive.
</description>
</property>
</configuration>
您不需要创建 HBase 数据目录。HBase 会为你做这件事。如果您创建目录,HBase 将尝试进行迁移,这不是您想要的。
注意:上例中的hbase.rootdir指向本地文件系统中的一个目录。“file://”前缀是我们表示本地文件系统的方式。您应该牢记配置示例中的警告。在独立模式下,HBase 使用来自 Apache Hadoop 项目的本地文件系统抽象。该抽象不提供 HBase 安全运行所需的持久性承诺。这对于很好地控制集群故障成本的本地开发和测试用例来说很好。不适用于生产部署;最终你会丢失数据。
要将 HBase 置于现有 HDFS 实例上,请将hbase.rootdir设置为指向实例上的目录:例如hdfs://namenode.example.org:8020/hbase。有关此变体的更多信息,请参阅以下有关 HDFS 上的独立 HBase 的部分。
2.2.1.4 启动
bin/start-hbase.sh脚本是启动HBase的便捷方法。执行命令,如果一切顺利,则会在标准输出中记录一条消息,表明HBase已成功启动。您可以使用jps命令来验证您是否有一个正在运行的进程,名为HMaster。在standalone模式下,HBase在此单个JVM中运行所有守护程序,即HMaster,单个HRegionServer和ZooKeeper守护程序。转到http://localhost:16010查看HBase Web UI。
2.2.2 首次使用HBase
2.2.2.1 连接到HBase。
使用hbase shell位于HBase安装目录bin/目录中的命令连接到正在运行的HBase实例。在此示例中,省略了启动HBase Shell时打印的某些用法和版本信息。HBase Shell提示符以一个>字符结尾。
$ ./bin/hbase shell
hbase(main):001:0>
2.2.2.2 显示HBase Shell帮助文本。
键入help并按Enter键,以显示HBase Shell的一些基本用法信息以及一些示例命令。注意,表名,行,列都必须用引号引起来。
2.2.2.3 创建一个表。
使用create命令创建一个新表。您必须指定表名称和ColumnFamily名称。
hbase(main):001:0> create 'test', 'cf'
0 row(s) in 0.4170 seconds
=> Hbase::Table - test
2.2.2.4 列出有关表的信息
使用list命令确认您的表存在
hbase(main):002:0> list 'test'
TABLE
test
1 row(s) in 0.0180 seconds
=> ["test"]
现在使用describe命令查看详细信息,包括配置默认值
hbase(main):003:0> describe 'test'
Table test is ENABLED
test
COLUMN FAMILIES DESCRIPTION
{NAME => 'cf', VERSIONS => '1', EVICT_BLOCKS_ON_CLOSE => 'false', NEW_VERSION_BEHAVIOR => 'false', KEEP_DELETED_CELLS => 'FALSE', CACHE_DATA_ON_WRITE =>
'false', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', MIN_VERSIONS => '0', REPLICATION_SCOPE => '0', BLOOMFILTER => 'ROW', CACHE_INDEX_ON_WRITE => 'f
alse', IN_MEMORY => 'false', CACHE_BLOOMS_ON_WRITE => 'false', PREFETCH_BLOCKS_ON_OPEN => 'false', COMPRESSION => 'NONE', BLOCKCACHE => 'true', BLOCKSIZE
=> '65536'}
1 row(s)
Took 0.9998 seconds
2.2.2.5 将数据放入表中。
要将数据放入表中,请使用put命令。
hbase(main):003:0> put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.0850 seconds
hbase(main):004:0> put 'test', 'row2', 'cf:b', 'value2'
0 row(s) in 0.0110 seconds
hbase(main):005:0> put 'test', 'row3', 'cf:c', 'value3'
0 row(s) in 0.0100 seconds
在这里,我们插入三个值,一次插入一个。第一个插入位于的row1列cf:a,值为value1。cf在此示例中,HBase中的列由列族前缀组成,后跟冒号,然后是列限定符后缀a。
2.2.2.6 一次扫描表中的所有数据。
从HBase获取数据的一种方法是扫描。使用scan命令扫描表中的数据。您可以限制扫描,但是目前,所有数据都已获取。
hbase(main):006:0> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=1421762485768, value=value1
row2 column=cf:b, timestamp=1421762491785, value=value2
row3 column=cf:c, timestamp=1421762496210, value=value3
3 row(s) in 0.0230 seconds
2.2.2.7 获取单行数据。
要一次获取一行数据,请使用get命令。
hbase(main):007:0> get 'test', 'row1'
COLUMN CELL
cf:a timestamp=1421762485768, value=value1
1 row(s) in 0.0350 seconds
2.2.2.8 禁用表格。
如果要删除表或更改其设置,以及在某些其他情况下,则需要先使用disable命令禁用该表。您可以使用enable命令重新启用它。
hbase(main):008:0> disable 'test'
0 row(s) in 1.1820 seconds
hbase(main):009:0> enable 'test'
0 row(s) in 0.1770 seconds
如果您测试了enable上面的命令,请再次禁用该表:
hbase(main):010:0> disable 'test'
0 row(s) in 1.1820 seconds
2.2.2.9 删除表。
要删除(删除)表,请使用drop命令。
hbase(main):011:0> drop 'test'
0 row(s) in 0.1370 seconds
2.2.2.10 退出HBase Shell。
要退出HBase Shell并从群集断开连接,请使用以下quit命令。HBase仍在后台运行。
2.2.3 过程:停止HBase
与提供bin/start-hbase.sh脚本以方便地启动所有HBase守护程序相同,bin/stop-hbase.sh 脚本将停止它们。
$ ./bin/stop-hbase.sh
stopping hbase....................
发出命令后,关闭进程可能需要几分钟。使用jps命令查看,确保HMaster和HRegionServer进程已关闭。
上面显示了如何启动和停止HBase的独立实例。在接下来的部分中,我们将简要概述hbase部署的其他模式。
2.3。伪分布式用于本地测试
在快速入门独立模式下工作之后,您可以将HBase重新配置为以伪分布式模式运行。伪分布式模式意味着HBase仍完全在单个主机上运行,但是每个HBase守护程序(HMaster,HRegionServer和ZooKeeper)作为单独的进程运行:在独立模式下,所有守护程序都在一个jvm进程/实例中运行。默认情况下,除非您hbase.rootdir按照快速入门中的说明配置属性 ,否则数据仍存储在/ tmp /中。在本演练中,假设您有可用的HDFS,我们将您的数据存储在HDFS中。您可以跳过HDFS配置,以继续将数据存储在本地文件系统中。
Hadoop配置
此过程假定您已在本地系统和/或远程系统上配置了Hadoop和HDFS,并且它们正在运行并且可用。它还假定您正在使用 Hadoop2。Hadoop文档中有关设置单节点群集的指南 是一个很好的起点。
如果HBase正在运行,请停止它。
如果您刚刚完成快速入门而HBase仍在运行,请停止它。此过程将创建一个全新的目录,HBase将在该目录中存储其数据,因此您之前创建的所有数据库都将丢失。
配置HBase。
编辑hbase-site.xml配置。首先,添加以下属性,该属性指示HBase在分布式模式下运行,每个守护程序一个JVM实例。
hbase.cluster.distributed true 接下来,hbase.rootdir使用hdfs:URI语法添加的配置,指向您的HDFS实例的地址。在此示例中,HDFS在本地主机上的端口8020上运行。 hbase.rootdir hdfs://localhost:8020/hbase 您无需在HDFS中创建目录。HBase将为您完成此任务。如果创建目录,HBase将尝试进行迁移,这不是您想要的。最后,删除现有的配置hbase.tmp.dir和hbase.unsafe.stream.capability.enforce,
启动HBase。
使用bin / start-hbase.sh命令启动HBase。如果系统配置正确,该jps命令应显示正在运行的HMaster和HRegionServer进程。
检查HDFS中的HBase目录。
如果一切正常,则HBase将在HDFS中创建其目录。在上面的配置中,它存储在HDFS上的/ hbase /中。您可以使用hadoop fsHadoop的bin /目录中的命令列出该目录。
$ ./bin/hadoop fs -ls /hbase
Found 7 items
drwxr-xr-x - hbase users 0 2014-06-25 18:58 /hbase/.tmp
drwxr-xr-x - hbase users 0 2014-06-25 21:49 /hbase/WALs
drwxr-xr-x - hbase users 0 2014-06-25 18:48 /hbase/corrupt
drwxr-xr-x - hbase users 0 2014-06-25 18:58 /hbase/data
-rw-r–r-- 3 hbase users 42 2014-06-25 18:41 /hbase/hbase.id
-rw-r–r-- 3 hbase users 7 2014-06-25 18:41 /hbase/hbase.version
drwxr-xr-x - hbase users 0 2014-06-25 21:49 /hbase/oldWALs
创建一个表并用数据填充它。
您可以使用HBase Shell创建一个表,使用数据填充该表,扫描并从中获取值,方法与Shell练习中的步骤相同。
启动和停止备用HBase主服务器(HMaster)服务器。
在生产环境中,在同一硬件上运行多个HMaster实例没有任何意义,就像在生产环境中运行伪分布式群集无济于事。此步骤仅用于测试和学习目的。
HMaster服务器控制HBase群集。您最多可以启动9台备用HMaster服务器,这使总数为10台HMaster成为主要服务器。要启动备份HMaster,请使用local-master-backup.sh。对于要启动的每个备份主服务器,添加一个代表该主服务器的端口偏移量的参数。每个HMaster使用两个端口(默认情况下为16000和16010)。端口偏移量已添加到这些端口,因此,使用偏移量2时,备份HMaster将使用端口16002和16012。以下命令使用端口16002 / 16012、16003 / 16013和16005/16015启动3个备份服务器。
$ ./bin/local-master-backup.sh start 2 3 5
要杀死备份主机而不杀死整个群集,您需要找到其进程ID(PID)。PID以类似/tmp/hbase-USER-X-master.pid的名称存储在文件中。该文件的唯一内容是PID。您可以使用kill -9命令杀死该PID。以下命令将杀死端口偏移为1的主服务器,但使集群保持运行状态:
$ cat /tmp/hbase-testuser-1-master.pid |xargs kill -9
启动和停止其他RegionServer
HRegionServer按照HMaster的指示管理其StoreFiles中的数据。通常,群集中的每个节点都运行一台HRegionServer。在同一系统上运行多个HRegionServer对于在伪分布式模式下进行测试非常有用。该local-regionservers.sh命令允许您运行多个RegionServer。它的工作方式与local-master-backup.sh命令相似,因为您提供的每个参数都代表实例的端口偏移量。每个RegionServer需要两个端口,默认端口为16020和16030。由于HBase版本1.1.0,HMaster不使用区域服务器端口,因此留下了10个端口(16020至16029和16030至16039)用于RegionServer。为了支持其他RegionServer,请在运行脚本之前将环境变量HBASE_RS_BASE_PORT和HBASE_RS_INFO_BASE_PORT设置为适当的值。local-regionservers.sh。例如,对于基本端口,值为16200和16300,可以在服务器上支持99个其他RegionServer。以下命令启动四个附加的RegionServer,它们在从16022/16032开始的顺序端口(基本端口16020/16030加2)上运行。
$ .bin/local-regionservers.sh start 2 3 4 5
要手动停止RegionServer,请使用local-regionservers.sh带有stop参数和服务器偏移量的命令来停止。
$ .bin/local-regionservers.sh stop 3
停止HBase。
您可以使用bin / stop-hbase.sh命令以与快速入门过程中相同的方式停止HBase 。
2.4。完全分配用于生产
实际上,您需要一个完全分布式的配置来全面测试HBase并在实际场景中使用它。在分布式配置中,集群包含多个节点,每个节点运行一个或多个HBase守护程序。其中包括主实例和备份Master实例,多个ZooKeeper节点和多个RegionServer节点。
此高级快速入门为集群添加了两个以上的节点。架构如下:
表1.分布式集群演示架构
节点名称 掌握 动物园管理员 区域服务器
node-a.example.com
是的
是的
不
node-b.example.com
后备
是的
是的
node-c.example.com
不
是的
是的
本快速入门假定每个节点都是虚拟机,并且它们都在同一网络上。假设您在该过程中配置的系统现在是,则它以先前的快速入门(用于本地测试的Pseudo-Distributed)为基础node-a。node-a在继续操作之前,先停止HBase 。
确保所有节点都具有完全的通信访问权限,并且没有适当的防火墙规则可能阻止它们相互通信。如果看到类似的错误no route to host,请检查防火墙。
过程:配置无密码的SSH访问
node-a需要能够登录node-b和node-c(以及本身)才能启动守护程序。完成此操作的最简单方法是在所有主机上使用相同的用户名,并配置其他用户之间的无密码SSH登录node-a。
在上node-a,生成密钥对。
以将要运行HBase的用户身份登录后,使用以下命令生成SSH密钥对:
$ ssh-keygen -t rsa
如果命令成功执行,则将密钥对的位置打印到标准输出中。公钥的默认名称是id_rsa.pub。
创建将在其他节点上保存共享密钥的目录。
在node-b和上node-c,以HBase用户身份登录,并在用户的主目录中创建一个.ssh /目录(如果尚不存在)。如果已经存在,请注意它可能已经包含其他密钥。
将公钥复制到其他节点。
node-a通过使用scp或其他安全方式,将公钥安全地复制到每个节点。在其他每个节点上,如果尚不存在则创建一个名为.ssh / authorized_keys 的新文件,并将id_rsa.pub文件的内容附加到该文件的末尾。请注意,您还需要自己执行此操作。node-a
$ cat id_rsa.pub >> ~/.ssh/authorized_keys
测试无密码登录。
如果正确执行了该过程,则node-a使用相同的用户名从SSH SSH到其他任何一个节点时,都不会提示您输入密码。
由于node-b将运行备份主服务器,因此重复上述步骤,替换为node-b您看到的所有位置node-a。确保不要覆盖现有的.ssh / authorized_keys文件,而是使用>>运算符而不是>运算符将新密钥连接到现有文件上。
程序:准备 node-a
node-a将运行您的主要master和ZooKeeper进程,但不运行RegionServer。停止RegionServer从启动node-a。
编辑conf / regionservers并删除包含的行localhost。加入与主机名或IP地址线node-b和node-c。
即使您确实想在上运行RegionServer node-a,也应使用其他服务器用来与其通信的主机名来引用它。在这种情况下,该值为node-a.example.com。这使您可以将任何主机名冲突将配置分发到群集的每个节点。保存文件。
配置HBasenode-b用作备份主服务器。
在conf /中创建一个名为backup-masters的新文件,并在其中添加新行,其主机名为node-b。在此演示中,主机名是node-b.example.com。
配置ZooKeeper
实际上,您应该仔细考虑您的ZooKeeper配置。您可以在zookeeper部分中找到有关配置ZooKeeper的更多信息。此配置将指导HBase在群集的每个节点上启动和管理ZooKeeper实例。
在上node-a,编辑conf / hbase-site.xml并添加以下属性。
hbase.zookeeper.quorum node-a.example.com,node-b.example.com,node-c.example.com hbase.zookeeper.property.dataDir /usr/local/zookeeper 无处不在的配置,您已经提到node-a的localhost,在参考点切换到主机,其他节点将用来指代node-a。在这些示例中,主机名是node-a.example.com。程序:准备node-b并node-c
node-b 将运行一个备份主服务器和一个ZooKeeper实例。
下载并解压缩HBase。
将HBase下载并解压缩到中node-b,就像对独立和伪分布式快速入门所做的那样。
将配置文件从复制node-a到node-b.and node-c。
群集的每个节点都需要具有相同的配置信息。将内容复制的conf /目录下的的conf /目录下node-b和node-c。
过程:启动并测试您的集群
确保HBase不在任何节点上运行。
如果您忘记从先前的测试中停止HBase,则将出现错误。使用jps命令检查HBase是否在您的任何节点上运行。寻找的过程HMaster,HRegionServer和HQuorumPeer。如果它们存在,将其杀死。
启动集群。
在上node-a,发出start-hbase.sh命令。您的输出将类似于以下内容。
$ bin/start-hbase.sh
node-c.example.com: starting zookeeper, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/…/logs/hbase-hbuser-zookeeper-node-c.example.com.out
node-a.example.com: starting zookeeper, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/…/logs/hbase-hbuser-zookeeper-node-a.example.com.out
node-b.example.com: starting zookeeper, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/…/logs/hbase-hbuser-zookeeper-node-b.example.com.out
starting master, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/…/logs/hbase-hbuser-master-node-a.example.com.out
node-c.example.com: starting regionserver, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/…/logs/hbase-hbuser-regionserver-node-c.example.com.out
node-b.example.com: starting regionserver, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/…/logs/hbase-hbuser-regionserver-node-b.example.com.out
node-b.example.com: starting master, logging to /home/hbuser/hbase-0.98.3-hadoop2/bin/…/logs/hbase-hbuser-master-nodeb.example.com.out
ZooKeeper首先启动,然后是主机,然后是RegionServer,最后是备份主机。
验证进程正在运行。
在群集的每个节点上,运行jps命令并验证每个服务器上是否正在运行正确的进程。如果将其他Java进程用于其他目的,则可能还会看到它们在服务器上运行。
node-a jps 输出
$ jps
20355 Jps
20071 HQuorumPeer
20137 HMaster
node-b jps 输出
$ jps
15930 HRegionServer
16194 Jps
15838 HQuorumPeer
16010 HMaster
node-c jps 输出
$ jps
13901 Jps
13639 HQuorumPeer
13737 HRegionServer
ZooKeeper进程名称
该HQuorumPeer过程是一个由HBase控制和启动的ZooKeeper实例。如果以这种方式使用ZooKeeper,则每个群集节点仅限于一个实例,并且仅适用于测试。如果ZooKeeper在HBase外部运行,则该过程称为QuorumPeer。有关ZooKeeper配置的更多信息,包括将外部ZooKeeper实例与HBase一起使用,请参见zookeeper部分。
浏览到Web UI。
Web UI端口更改
在HBase高于0.98.x的版本中,HBase Web UI使用的HTTP端口从Master的60010和每个RegionServer的60030变为Master的16010和RegionServer的16030。
如果一切设置正确,则应该可以 使用Web浏览器连接到主服务器http://node-a.example.com:16010/或辅助主服务器的UI http://node-b.example.com:16010/。如果可以通过localhost但不能从其他主机连接,请检查防火墙规则。您可以在其IP地址的端口16030上单击每个RegionServer的Web UI,或通过在主服务器的Web UI中单击它们的链接来查看它们。
测试当节点或服务消失时会发生什么。
使用已配置的三节点群集,事情将不会非常灵活。您仍然可以通过终止关联的进程并查看日志来测试主要Master或RegionServer的行为。
2.5。接下来要去哪里
下一章configuration提供了有关不同HBase运行模式,运行HBase的系统要求以及用于设置分布式HBase群集的关键配置区域的更多信息。