• 沒有找到結果。

支持的关键操作审计日志_表格存储服务 CloudTable_用户指南_集群模式_审计日志_华为云

N/A
N/A
Protected

Academic year: 2022

Share "支持的关键操作审计日志_表格存储服务 CloudTable_用户指南_集群模式_审计日志_华为云"

Copied!
77
0
0

加載中.... (立即查看全文)

全文

(1)

用户指南

文档版本 19

发布日期 2021-08-20

(2)

版权所有 © 华为技术有限公司 2021。 保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传 播。

商标声明

和其他华为商标均为华为技术有限公司的商标。

本文档提及的其他所有商标或注册商标,由各自的所有人拥有。

注意

您购买的产品、服务或特性等应受华为公司商业合同和条款的约束,本文档中描述的全部或部分产品、服务或 特性可能不在您的购买或使用范围之内。除非合同另有约定,华为公司对本文档内容不做任何明示或默示的声 明或保证。

由于产品版本升级或其他原因,本文档内容会不定期进行更新。除非另有约定,本文档仅作为使用指导,本文 档中的所有陈述、信息和建议不构成任何明示或暗示的担保。

华为技术有限公司

地址: 深圳市龙岗区坂田华为总部办公楼 邮编:518129

网址:

https://www.huawei.com

客户服务邮箱:

[email protected]

客户服务电话:4008302118

(3)

目 录

1 入门(集群模式)... 1

1.1 快速创建集群... 1

1.2 从零开始使用 HBase... 3

2 权限管理...5

2.1 创建用户并授权使用 CloudTable... 5

3 集群模式...7

3.1 集群模式简介... 7

3.2 管理集群...7

3.2.1 创建集群... 8

3.2.2 购买折扣套餐... 11

3.2.3 集群管理列表简介... 12

3.2.4 查看集群基本信息... 14

3.2.5 修改集群 HBase 参数... 16

3.2.6 开启 OpenTSDB... 19

3.2.7 重启集群... 20

3.2.8 扩容集群... 20

3.2.9 删除集群... 21

3.3 准备弹性云服务器... 22

3.4 使用 HBase... 26

3.4.1 使用 HBase Shell 访问集群...26

3.4.2 HBase Shell 命令简介... 28

3.4.3 访问 HBase Web UI... 29

3.4.4 授权其他用户访问 IAM 认证集群中的 HBase...33

3.5 使用 OpenTSDB...35

3.5.1 OpenTSDB 概述... 35

3.5.2 连接 OpenTSDB... 37

3.6 使用 GeoMesa... 38

3.6.1 使用 GeoMesa 命令行工具... 38

3.6.2 GeoMesa 命令行简介... 39

3.7 HBase Elasticsearch 全文检索... 41

3.7.1 全文检索概述... 41

3.7.2 使用 HBase Shell 进行全文索引... 43

(4)

3.8 数据批量导入...44

3.8.1 使用 CDM 迁移数据到 CloudTable...44

3.8.2 使用 Import 工具导入数据... 48

3.8.3 使用 CopyTable 工具导入数据... 48

3.8.4 数据表复制样例代码... 50

3.9 监控集群... 52

3.9.1 CloudTable 支持的监控指标...52

3.9.2 设置 CloudTable 告警规则... 58

3.9.3 查看集群的监控信息... 61

3.10 审计日志... 66

3.10.1 支持的关键操作审计日志... 66

3.10.2 查看审计日志...66

A 修订记录... 70

(5)

1 入门(集群模式)

1.1 快速创建集群

本章节为您介绍如何在CloudTable管理控制台创建一个新的集群。

操作步骤

步骤1 通过访问以下地址登录表格存储服务管理控制台:https://

console.huaweicloud.com/cloudtable。

步骤2 单击“购买集群”,进入“购买集群”页面。

创建集群相关配置样例如下:

● 计费模式:默认即可。

● 区域:默认即可。

● 可用区:默认即可。

● 名称:输入集群名称,例如:“cloudtable-demo”。

● I/O类型:保留默认值即可。

● 虚拟私有云:您可以选择使用已有的虚拟私有云网络。如果没有虚拟私有云,请 单击“查看虚拟私有云”进入虚拟私有云管理控制台,创建一个虚拟私有云,创 建完成后,重新进入表格存储服务管理控制台,在下拉框中选择新创建的虚拟私 有云。创建虚拟私有云的详细操作,请参见虚拟私有云的“用户指南 > 虚拟私有 云和子网 > 创建虚拟私有云和子网”。

● 子网:创建虚拟私有云时会默认创建一个子网,您可以选择对应的子网名。

● 安全组:您可以选择默认安全组规则,并请确认所选安全组的“入方向规则”中 存在如图1-1所示规则。

– 协议端口:全部 – 类型:IPv4

– 源地址:本地安全组(即CloudTable集群所在的安全组)

1-1 安全组规则

(6)

如果该规则不存在,则按图1-2所示创建如上所述安全组。

1-2 添加入方向规则

如果您担心默认安全组存在网络安全风险,您可以在安全组中设置尽可能少的开 放端口,但请确认所选安全组中存在如表1-1所示的安全组规则。

1-1 自定义安全规则组

方向 协议 端口/范围 源地址/安全组 用途 出方

全部 全部 0.0.0.0/0 出方向放行

入方 向

TCP 22 0.0.0.0/0 ECS远程登录端口(Linux)

TCP 3389 0.0.0.0/0 ECS远程桌面服务

(Windows)

TCP 16000 CloudTable集群 所在的安全组

HMaster RPC端口 TCP 16010 HMaster Web UI端口 TCP 16020 RegionServer RPC端口 TCP 16030 RegionServer web UI端口 TCP 2181 监听ZooKeeper客户端连接

监听端口

TCP 2888 Follower连接监听端口 TCP 3888 ZooKeeper选举端口

TCP 2000 Hagent访问端口

TCP 8085 RestServer访问端口 TCP 9600 RestServer访问端口

TCP 4242 OpenTSDB访问端口

● CloudTable版本:默认即可。

● HBase版本:选择1.3.1。

● 高级特性:用户可选择性开启以下高级特性,勾选表示开启。启用OpenTSDB高 级特性将会产生相应的费用。本示例均选择不勾选。

– OpenTSDB 2.3.0:开源OpenTSDB时间序列数据库。

– GeoMesa:GeoMesa是一个基于HBase的分布式的,可伸缩的开源时空数据 库。

● RS单元数量:默认为2,默认即可。

(7)

步骤3 单击“立即购买”。

步骤4 确认集群规格的订单详情信息,单击“提交”,完成集群的创建。

集群创建需要时间,所创集群的初始状态为“创建中”,创建成功后状态更新为“服 务中”,请您耐心等待。

----结束

1.2 从零开始使用 HBase

HBase是一个高可靠、高性能、面向列、可伸缩的分布式存储系统。本章节提供从零 开始使用HBase的操作指导:通过HBase Shell命令实现创建表,往表中插入数据,修 改表,读取表数据,删除表中数据以及删除表的功能。

背景信息

假定用户开发一个应用程序,用于管理企业中的使用A业务的用户信息,使用HBase客 户端实现A业务操作流程如下:

● 创建用户信息表user_info。

● 在用户信息中新增用户的学历、职称信息。

● 根据用户编号查询用户姓名和地址。

● 根据用户姓名进行查询。

● 用户销户,删除用户信息表中该用户的数据。

● A业务结束后,删除用户信息表。

1-2 用户信息

编号 姓名 性别 年龄 地址

12005000201 A Male 19 Shenzhen, Guangdong 12005000202 B Female 23 Shijiazhuang, Hebei 12005000203 C Male 26 Ningbo, Zhejiang 12005000204 D Male 18 Xiangyang, Hubei 12005000205 E Female 21 Shangrao, Jiangxi 12005000206 F Male 32 Zhuzhou, Hunan 12005000207 G Female 29 Nanyang, Henan 12005000208 H Female 30 Kaixian, Chongqing 12005000209 I Male 26 Weinan, Shaanxi 12005000210 J Male 25 Dalian, Liaoning

(8)

操作步骤

步骤1 创建名称为“cloudtable-demo”的集群。

请参见快速创建集群章节完成CloudTable集群的创建。

步骤2 准备Linux弹性云服务器。

假设该弹性云服务器名称为“ecs_20170916”,准备的具体操作请参见准备弹性云服

务器章节。

步骤3 安装客户端并启动Shell访问CloudTable集群。

使用HBase Shell访问集群的具体操作请参见使用HBase Shell访问集群章节。

步骤4 运行HBase客户端命令,实现A业务。

1. 根据表1-2创建用户信息表user_info并添加相关数据。

create 'user_info',{NAME => 'i'}

以增加编号12005000201的用户信息为例,其他用户信息参照如下命令依次添 加:

put 'user_info','12005000201','i:name','A' put 'user_info','12005000201','i:gender','Male' put 'user_info','12005000201','i:age','19'

put 'user_info','12005000201','i:address','Shenzhen, Guangdong'

2. 在用户信息表user_info中新增用户的学历、职称信息。

以增加编号为12005000201的用户的学历、职称信息为例,其他用户类似。

put 'user_info','12005000201','i:degree','master' put 'user_info','12005000201','i:pose','manager'

3. 根据用户编号查询用户姓名和地址。

以查询编号为12005000201的用户姓名和地址为例,其他用户类似。

scan 'user_info',

{STARTROW=>'12005000201',STOPROW=>'12005000201',COLUMNS=>['i:name','i:address']}

4. 根据用户姓名进行查询。

以查询A用户信息为例,其他用户类似。

scan 'user_info',{FILTER=>"SingleColumnValueFilter('i','name',=,'binary:A')"}

5. 删除用户信息表中该用户的数据。

所有用户的数据都需要删除,以删除编号为12005000201的用户数据为例,其他 用户类似。

delete 'user_info','12005000201','i'

6. 删除用户信息表。

disable 'user_info';drop 'user_info'

步骤5 删除集群。

请参见删除集群章节。

----结束

(9)

2 权限管理

2.1 创建用户并授权使用 CloudTable

如果您需要对您所拥有的云服务进行精细的权限管理,您可以使用统一身份认证服务

(Identity and Access Management,简称IAM)。通过IAM,您可以:

● 根据企业的业务组织,在您的华为云账号中,给企业中不同职能部门的员工创建 IAM用户,让员工拥有唯一安全凭证,并使用云服务资源。

● 根据企业用户的职能,设置不同的访问权限,以达到用户之间的权限隔离。

● 将云服务资源委托给更专业、高效的其他华为云账号或者云服务,这些账号或者 云服务可以根据权限进行代运维。

如果华为云账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章 节,不影响您使用CloudTable服务的其它功能。

本章节为您介绍对用户授权的方法,操作流程如图2-1所示。

前提条件

● CloudTable服务暂不支持细粒度策略,仅支持系统角色“cloudtable Administrator”。

● 给用户组授权之前,请您了解用户组可以添加的CloudTable权限,并结合实际需 求进行选择,CloudTable支持的系统权限,请参见:CloudTable系统权限。若您 需要对除CloudTable之外的其它服务授权,IAM支持服务的所有权限请参见权限

策略。

(10)

示例流程

2-1 给用户授权 CloudTable 权限流程

1.

创建用户组并授权

使用华为云登录IAM控制台,创建用户组,并授予表格存储服务的管理员权限

“cloudtable Administrator”。

2.

创建用户并加入用户组

在IAM控制台创建用户,并将其加入步骤1中创建的用户组。

3.

用户登录并验证权限

使用新创建的用户登录控制台,切换至授权区域,验证权限:

– 在“服务列表”中选择表格存储服务,进入CloudTable主界面,单击右上角

“购买集群”,尝试创建表格存储服务集群,如果可以创建(假设当前权限 仅包含cloudtable Administrator),表示“cloudtable Administrator”已生 效。

– 在“服务列表”中选择除表格存储服务之外(假设当前策略仅包含 cloudtable Administrator)的任一服务,若提示权限不足,表示

“cloudtable Administrator”已生效。

(11)

3 集群模式

3.1 集群模式简介

CloudTable集群模式提供了基于Apache HBase的分布式、可伸缩、全托管的NoSQL数 据存储系统,它提供了毫秒级的随机读写能力,适用于海量结构化数据、半结构化数 据存储和查询应用。同时,CloudTable集群模式还集成了以下功能:

● OpenTSDB 2.3.0:开源OpenTSDB时间序列数据库。

● GeoMesa:GeoMesa是一个基于HBase的分布式的,可伸缩的开源时空数据库。

CloudTable集群模式下,用户申请专属集群,按需使用,专属集群是完全物理隔离且 不受其他业务影响,方便用户管理。CloudTable集群模式适合业务吞吐量大,时延要 求低的用户。

CloudTable集群创建成功后,用户可通过以下方式访问CloudTable集群:

● 使用客户端访问集群。

详情请参见以下章节:

– 使用HBase:介绍了如何使用HBase Shell访问集群等内容。

– 使用OpenTSDB:介绍了如何使用cURL、Postman或直接编写代码等方式发 送HTTP请求调用API访问OpenTSDB。

– 使用GeoMesa:介绍了如何使用GeoMesa命令行工具访问GeoMesa时空数 据库。

● 调用开源原生接口,开发HBase、OpenTSDB、GeoMesa应用,通过CloudTable 链接地址访问集群。

详情请参见《表格存储服务开发指南》。

CloudTable集群模式,目前已经商用,了解CloudTable如何定价,请参见产品价格详

情。

3.2 管理集群

(12)

3.2.1 创建集群

通过表格存储服务可以集中管理集群,如果需要使用CloudTable服务,首要操作就是 创建集群,本章节为您介绍如何在表格存储服务管理控制台创建一个新的集群。

创建集群时默认采用按需付费方式,即计算单元按实际使用时长计费,计费周期为一 小时。这种购买方式比较灵活,可以即开即停,按实际使用时长计费。您可根据业务 需要,定制相应计算能力和存储空间的CloudTable集群。您也可以先执行购买折扣套

餐,然后再创建集群,这种购买方式为折扣套餐付费方式,是按月/按年预付费,相比

按需付费方式更优惠。

创建集群

步骤1 通过访问以下地址登录表格存储服务管理控制台:https://

console.huaweicloud.com/cloudtable。

步骤2 单击管理控制台左上角的 ,选择区域。

步骤3 单击“购买集群”,进入“购买集群”页面。

步骤4 参考下列表格配置集群基本信息。

3-1 区域

参数 参数说明

区域 集群的工作区域。

有关区域的详细信息,请参见地区和终端节点。

可用区 选择集群工作区域下关联的可用区。

关于区域和可用区的描述,请参见区域和可用区。

3-1 集群配置

3-2 集群配置

参数 参数说明

名称 集群的名称。

必须以字母开头,由字母、数字、中划线组成,不能包含其他的特 殊字符,并且长度为4~64个字符。

(13)

参数 参数说明

存储配额 当“I/O类型”选择“超高I/O”时,显示该参数。

该参数显示集群提供给用户使用的存储配额,单位为TB,默认为 10 TB。

存储容量的大小必须为10的整数倍。

I/O类型 计算单元I/O类型。待集群创建成功后,I/O类型不可更改。

CloudTable服务支持的IO类型有:

● 普通I/O:指由SATA存储提供资源的磁盘类型。

● 超高I/O:指由SSD存储提供资源的磁盘类型。

3-2 网络配置

3-3 网络配置

参数 参数说明

虚拟私有云 VPC即虚拟私有云,是通过逻辑方式进行网络隔离,提供安全、隔 离的网络环境。

您可以选择使用已有的虚拟私有云网络,或者单击“查看虚拟私有 云”创建新的虚拟私有云。

关于虚拟私有云的更多信息,请参见虚拟私有云的“用户指南 > 虚 拟私有云和子网 > 创建虚拟私有云和子网”。

子网 通过子网提供与其他网络隔离的、可以独享的网络资源,以提高网 络安全。

创建虚拟私有云时会创建一个子网。如需创建新的子网,请参见虚

拟私有云的“用户指南 > 虚拟私有云和子网 > 为虚拟私有云创建

新的子网”。

(14)

参数 参数说明

安全组 安全组用来实现安全组内和安全组间弹性云服务器的访问控制,加 强弹性云服务器的安全保护。用户可以在安全组中定义各种访问规 则,这些规则可以限定弹性云服务器的哪些端口或者协议可以访 问,这些访问规则可以作用在进出虚拟机的网络访问上。当弹性云 服务器加入该安全组后,即受到这些访问规则的保护。不属于该安 全组的弹性云服务器,是无法同安全组内的弹性云服务器通信的。

由于CloudTable集群的底层计算单元就是弹性云服务器,从安全和 业务的角度来看,需要将这些弹性云服务器加入同一个VPC下的相 同安全组中。VPC作为网络隔离,安全组则是控制哪些端口和协议 可以在VPC范围内开放访问权限。

您可以选择使用已有的安全组,或者单击“查看安全组”创建新的 安全组。

关于安全组的更多信息,请参见《虚拟私有云用户指南》中的安全

组。

3-4 软件配置

参数 参数说明

CloudTable版本 CloudTable服务的版本信息。

HBase版本 支持的HBase版本信息。

高级特性 用户可选择性开启以下高级特性,勾选表示开启。启用 OpenTSDB高级特性将会产生相应的费用。

● OpenTSDB 2.3.0:开源OpenTSDB时间序列数据库。

● GeoMesa:GeoMesa是一个基于HBase的分布式的,可伸缩 的开源时空数据库。

3-5 计算单元

参数 参数说明

RS单元数量 计算单元数量,表示配置RegionServer单元的个数。

TSD单元数量 OpenTSDB的单元个数,该参数需要开启“高级特性”OpenTSDB 后才显示。

步骤5 单击“立即购买”。

步骤6 确认集群规格的订单详细信息,单击“提交”,成功提交集群创建任务。

步骤7 单击“返回集群管理列表”,可以查看到集群创建的状态。

集群创建需要时间,请您耐心等待。所创集群的初始状态为“创建中”,创建成功后 状态更新为“服务中”。

----结束

(15)

3.2.2 购买折扣套餐

CloudTable同时提供折扣套餐的计费方式,根据服务购买时长,一次性支付费用。最 短时长为1个月,最长时长为1年。这种购买方式相对比较优惠,对于长期使用者,推 荐该方式。请参见以下操作步骤以折扣套餐的方式购买CloudTable服务。折扣套餐购 买成功后系统不会自动创建集群,您需前往CloudTable管理控制台自行创建集群。

购买折扣套餐

步骤1 登录CloudTable管理控制台。

步骤2 单击“折扣套餐”。

步骤3 在“购买表格存储服务计算单元套餐”页面,设置以下折扣套餐相关的参数。然后在 页面底部,将显示相应的配置费用。您可以单击“了解计费详情”,查看具体的计费 详情。

3-3 折扣套餐

3-6 折扣套餐参数说明

参数名 参数描述 样例值

区域 选择集群的实际工作区域。

不同的区域之间资源包不互通,每个区域需分别购 买,请根据您的实际需求慎重选择。

有关区域的详细信息,请参见地区和终端节点。

华北-北京一

类型 计算单元。购买的计算单元可用做RS计算单元TSD 计算单元。

计算单元

(16)

参数名 参数描述 样例值

每月时长规格 750小时/月。 750小时

购买时长 单击时长的按钮,确定“购买时长”。 -

购买数量 所需购买的计算单元的个数。

如果您是首次购买,建议您购买至少2个计算单 元,因为一个CloudTable集群至少需要2个计算单 元。此外,如果创建CloudTable集群时需要开启高 级特性OpenTSDB,至少需要2个计算单元。

如果您非首次购买,则根据您的实际需要选择计算 单元的数量即可。

2

步骤4 单击“立即购买”,进入订单详情确认页面。

步骤5 订单详情确认无误后,单击“去支付”。

步骤6 选择如下任一方式付款:

● 选择“余额支付”,然后单击“确认付款”。

● 选择“在线支付”,然后选择支付方式,再单击“确认付款”。

● 选择“申请线上合同请款后支付”,然后单击“生成合同”。填写合同内容后,

再单击“创建正式合同”。

折扣套餐购买成功后系统不会自动创建集群,您需前往CloudTable管理控制台自行创 建,具体操作步骤请参见创建集群。

----结束

3.2.3 集群管理列表简介

登录表格存储服务,在左侧导航树,单击“集群模式”,在集群管理列表中会显示 CloudTable所有的集群,集群数量较多时,可采用翻页显示,您可以查看任何状态下 的集群。

3-4 集群列表

集群管理列表默认按时间顺序排列,时间最近的集群显示在最前端。集群管理列表参 数说明如表3-7和表3-8所示。

3-7 集群管理列表参数

参数 参数说明

集群名称 集群的名称,创建集群时设置。

集群状态 集群的运行状态信息。集群状态包括创建中、服务中、亚健康、创 建失败和冻结。请参见表3-9。

(17)

参数 参数说明

任务状态 集群任务的状态信息。请参见表3-10。

CloudTable版

本 CloudTable的版本信息。

创建时间 集群创建的时间。

ZK链接地址

(内网) Zookeeper地址。

操作 ● 重启:单击“重启”,重启集群。操作方法,请参见重启集

群。

● 查看监控信息:单击“查看监控信息”,进入“云服务监控 >

表格存储服务”的监控图表页面。

● 更多

– 开启OpenTSDB:当创建集群没有勾选“OpenTSDB 2.3.0”

时,会显示“开启OpenTSDB”的操作,单击“开启 OpenTSDB”,可以开启OpenTSDB。操作方法,请参见开

启OpenTSDB。

– 扩容:扩容集群中的计算单元。具体操作,请参见扩容集

群。

– 删除:单击“删除”,删除一个集群。操作方法,请参见删

除集群。

3-8 按钮说明

按钮 说明

在搜索框中输入集群名称,单击 ,搜索集群。

单击 ,手动刷新集群列表。

集群状态

3-9 集群状态说明

状态 说明

创建中 表示集群正在创建中。

服务中 当集群创建成功并正常提供服务时,其集群状态为“服务中”。

亚健康 当超过指定时间监控不到集群状态时,集群状态将显示为“亚健 康”。“亚健康”状态的集群需要人工干预让集群恢复正常,比 如,可以通过重启集群尝试恢复正常状态。

(18)

状态 说明

创建失败 表示集群创建失败。

冻结 续费时所支付的余额已不足,则其状态为“冻结”。

当集群状态为“冻结”时,您需要通过续费保证账户余额不为0才 能解冻,详细操作请参见如何续费?。如果您原先购买了折扣套 餐,冻结后,也只能先通过续费进行解冻,然后再重新购买折扣 套餐。冻结时,购买折扣套餐是无法解冻的。

说明

冻结期间集群不可用且关闭集群中所有云主机,解冻后集群自动恢复为

“服务中”状态。如果用户没有续费,冻结期限到期后集群会被删除。

任务状态

3-10 任务状态说明

状态 说明

删除中 表示集群正在删除中。

重启中 表示集群正在重启中。

开启openTSDB

中 表示正在为集群开启OpenTSDB。

开启openTSDB

失败 表示开启OpenTSDB失败。

建议您在管理控制台页面右上角选择“资源 > 我的配额”进入

“服务配额”页面,检查实例数剩余配额是否充足,如果配额不 足,请提交工单申请更多配额。您也可以稍后进行重试,或联系 技术支持人员进行处理。

单元扩容中 表示集群正在扩容中。

单元扩容失败 表示集群扩容失败。

建议您在管理控制台页面右上角选择“资源 > 我的配额”进入

“服务配额”页面,检查实例数剩余配额是否充足,如果配额不 足,请提交工单申请更多配额。您也可以稍后进行重试,或联系 技术支持人员进行处理。

3.2.4 查看集群基本信息

集群创建完成后,可对集群进行监控和管理。在CloudTable管理控制台单击“集群模 式”,在集群列表中找到所要查看的集群并单击集群名称,进入集群基本信息页面,

用户可查看集群信息和集群的网络配置。

集群基本信息参数说明如表3-11和表3-12所示。

(19)

3-11 集群信息

参数 参数说明

集群名称 集群的名称,创建集群时设置。

集群ID 集群的ID。

集群状态 集群状态信息。

已使用存储容

量(GB) 显示已经使用的存储容量。

RS单元数量 显示RegionServer单元的个数。

TSD单元数量 显示OpenTSDB的单元个数。

I/O类型 CloudTable使用的I/O类型。

计费模式 显示集群的计费模式。

CloudTable版 本

表格存储服务版本信息。

创建时间 显示集群创建的时间。

OpenTSDB链

接地址 OpenTSDB提供Web UI功能,通过URL地址可以访问。

● 当集群开启OpenTSDB后,用户可以单击 ,复制OpenTSDB 链接地址。

● 当集群关闭OpenTSDB时,用户可以在“集群模式”页面的集 群列表中搜索集群,然后在集群对应的“操作”列中,单击

“更多 > 开启OpenTSDB”,开启OpenTSDB。

ZK链接地址 Zookeeper地址。

用户可以单击 ,将ZK链接地址复制到剪切板。

3-12 网络配置

参数 参数说明

区域 集群的工作区域,在创建集群时设置。

可用区 显示创建集群时所选择的可用区信息。

虚拟私有云 VPC信息,创建集群时所选。

VPC即虚拟私有云,是通过逻辑方式进行网络隔离,提供安全、隔 离的网络环境。

子网 子网信息,创建集群时所选。

通过子网提供与其他网络隔离的、可以独享的网络资源,以提高 网络安全。

安全组 显示创建集群时所选择的安全组信息。

(20)

3.2.5 修改集群 HBase 参数

操作场景

创建完CloudTable集群后,由于HBase有很多与读写性能相关的配置参数,读写请求 负载不同的情况下,用户可以在表格存储服务控制台中多次修改集群HBase配置参 数,对集群的性能进行调优。当修改完集群HBase参数后,用户需要重启集群才能生 效。

操作步骤

说明

● 修改CloudTable集群参数需要重启集群,可能会导致业务的中断。

● 当CloudTable集群重启过程中,不允许修改集群参数。

步骤1 登录表格存储服务管理控制台。

步骤2 单击管理控制台左上角的 ,选择区域。

步骤3 在左侧导航树,单击“集群模式”。

步骤4 选中需要修改参数的集群,单击对应的集群名称,跳转到该集群基本信息页面。

步骤5 在“参数配置”中单击“相关参数”页签,对HBase参数进行修改。

CloudTable集群当前可以修改的HBase参数请参见HBase参数说明。

1. 选中需要修改的参数,在“参数值”列单击 。

2. 在修改框中输入新值,单击 ,系统提示“参数修改为' xx '成功,请保存本次修 改值,参数值修改成功。

如果单击 ,则取消修改。

3. 单击参数列表左上方的“保存修改”,弹出“保存修改”对话框。

4. 在“保存修改”对话框中,确认参数修改信息正确后,勾选“是否立即重启”,

然后单击“确定”。

(21)

3-5 保存修改

– 当勾选“是否立即重启”并单击“确定”后,集群将立即重启,重启完成

后,修改后的参数才能生效。单击参数列表上方的 ,参数列表上方将显 示“新值已应用”。

– 在“保存修改”对话框中可以先不勾选“是否立即重启”,单击“确定”

后,参数列表上方将显示“新值未应用”。此时用户需要自行重启集群,才 能使修改的参数值生效。重启集群操作请参见重启集群。

– 如果修改的参数值不正确,可以在“保存修改”对话框中单击“一键还 原”,取消修改参数值。

步骤6 参数修改完成后,可以单击“修改历史”页签查看参数修改的历史。

在“修改历史”页签中可以查看如下信息:

● 参数名:被修改过的参数名。

● 旧值:修改前的参数值。

● 新值:修改后的参数值。

● 修改时间:记录用户修改参数值的时间。

----结束

HBase 参数说明

CloudTable集群当前可以修改的参数如表3-13所示。

说明

hbase.regionserver.global.memstore.size和hfile.block.cache.size两个参数值相加不能超过0.8。

(22)

3-13 HBase 参数说明

参数名 参数默

认值

参数范围 单位 参数描述

hbase.regions erver.thread.c ompaction.sm all

1 [1,20] -- HFile compaction线程数,在 put高负载情况下可以适当调 大。

hbase.regions erver.global.m emstore.size

0.4 (0,0.8) -- 建议设置为

“hbase.hregion.memstore.flus h.size * 写活跃region数 / RegionServer GC -Xmx”。默认 值为“0.4”,表示使用

RegionServer GC -Xmx的40%。

hbase.hstore.b lockingStoreFi les

60 [1,2147483

647] -- 当列簇的HFile数达到该阈值,阻 塞该region的所有操作,直到 compaction完成,在put高负载 场景下可以适当调大。

hbase.client.sc anner.timeout .period

60000 [1,2147483

647] 毫秒 客户端和RegionServer端参数,

表示scan租约的时间,建议设置 为60000ms的整数倍,在读高负 载情况下可以适当调大。单位:

毫秒。

hfile.block.cac

he.size 0.2 (0,0.8) -- 数据缓存所占的RegionServer GC -Xmx百分比,在读高负载情 况下可以适当调大以增大缓存命 中率以提高性能。默认值为

“0.2”,表示使用RegionServer GC -Xmx的20%。

hbase.regions erver.handler.c ount

100 [1,300] -- RegionServer上的RPC服务器实 例数,建议设置为100 ~ 300之 间。

hbase.regions erver.metahan dler.count

50 [1,100] -- RegionServer中处理优先请求的 程序实例的数量,建议设置为20

~ 100之间。

hbase.hstore.f

lusher.count 2 [1,10] -- memstore的flush线程数,在put 高负载场景下可以适当调大。

(23)

参数名 参数默 认值

参数范围 单位 参数描述

hbase.ipc.serv er.callqueue.re ad.ratio

0.5 [0,1] -- 该配置项用于不同负载模型时,

控制读和写操作的RPC队列数量 的比例。取值范围为0到1.0,默 认值为0.5。

0表示所有RPC队列不区分读和写 操作;

小于0.5表示读操作负载少于写操 作负载;

0.5表示读操作负载与写操作负载 相同;

大于0.5表示读操作负载大于写操 作负载;

1.0表示除了一个RPC队列外,其 余所有RPC队列都用于读操作。

3.2.6 开启 OpenTSDB

如果用户在创建CloudTable集群时没有勾选OpenTSDB,当需要使用OpenTSDB时,

可以在集群创建完成后开启OpenTSDB,以提供HTTP协议访问的功能。

说明

为集群开启OpenTSDB后,当前暂不支持关闭OpenTSDB的功能。

操作步骤

步骤1 登录表格存储服务管理控制台。

步骤2 单击管理控制台左上角的 ,选择区域。

步骤3 在左侧导航树,单击“集群模式”。

步骤4 在集群列表中,找出需要开启OpenTSDB的集群,在该集群所在的行,单击“更多 >

开启OpenTSDB”。

步骤5 在弹出的对话框中,设置“TSD单元数量”,然后单击“确定”开启OpenTSDB。

集群的“任务状态”将显示开启OpenTSDB的状态,说明如下:

● 开启OpenTSDB中:表示正在开启OpenTSDB。开启OpenTSDB需要几分钟时间请 耐心等待。

● 当“开启OpenTSDB中”状态结束,显示为“--”:表示开启OpenTSDB成功。

● 开启OpenTSDB失败:如果显示为该状态,表示开启OpenTSDB失败。但开启失 败不影响原集群的状态,即此时“集群状态”仍显示为“服务中”。

(24)

建议您在管理控制台页面右上角选择“资源 > 我的配额”进入“服务配额”页 面,检查实例数剩余配额是否充足,如果配额不足,请提交工单申请更多配额。

您也可以稍后进行重试,或联系技术支持人员进行处理。

----结束

3.2.7 重启集群

操作步骤

步骤1 登录表格存储服务管理控制台。

步骤2 单击管理控制台左上角的 ,选择区域。

步骤3 在左侧导航树,单击“集群模式”。

步骤4 在集群管理列表中的右上角,输入要搜索的集群名称,单击 。 图3-6 根据名称搜索集群

步骤5 选中需要重启的集群名,在对应的“操作”列中,单击“重启”。

3-7 重启集群

步骤6 在弹出的对话框中,勾选了解重启集群的影响后,单击“确定”,重启集群。

----结束

3.2.8 扩容集群

为了提升系统的计算能力、存储能力,用户可以通过扩容计算单元来扩容集群。扩容 计算单元将会产生相应的费用。用户可根据实际需要或业务情况,动态的增加计算单 元的个数,集群将自适应的实现负载均衡,保证业务不中断,平滑扩容。

如果要扩容TSD单元的数量,扩容前请确保您已开启OpenTSDB,如未开启,请参见开

启OpenTSDB进行开启。

注意事项

● 当集群状态处于“服务中”,且任务状态无任何状态或者处于“单元扩容失 败”、“开启openTSDB失败”中的任意一种状态时,可以执行扩容操作。

● 请确定计划扩容的计算单元数小于等于用户计算单元的剩余配额,否则系统会提 示无法进行扩容操作。

当前每个用户计算单元的默认配额是32个。用户可以在管理控制台右上方选择菜 单“资源 > 我的配额”,进入“服务配额”页面,查看已用配额和总配额,如果

(25)

配额不足,可以单击页面右上方的“申请扩大配额”按钮,申请增加计算单元配 额。

● 扩容过程中,不会自动重启集群,保证业务不中断,平滑扩容。

● 如果扩容失败,“任务状态”将显示为“单元扩容失败”,集群会自动回滚到扩 容前的状态。用户可以再次重试扩容操作。如有问题请及时联系技术支持人员进 行处理。

扩容计算单元

步骤1 登录表格存储服务管理控制台。

步骤2 单击管理控制台左上角的 ,选择区域。

步骤3 在左侧导航树,选择“集群模式”。

步骤4 在集群列表中,找到需要扩容的集群名称,在其所在行,单击“更多 > 扩容”,进入

“扩容”页面。

您也可以在集群列表中单击所需扩容的集群名称,进入集群详情页面,然后单击页面 右上方的“扩容”按钮进行扩容。

步骤5 在扩容页面设置以下参数,然后单击“立即购买”。

3-14 扩容参数

参数 参数说明

单元类型 选择所需扩容的单元类型。可选值:

● RS单元

● TSD单元:扩容前请确保您已开启OpenTSDB,如未开启,请参 见开启OpenTSDB进行开启。

扩容到 设置扩容后所选单元类型的总单元数量。

单次至少扩容2个计算单元,最多扩容10个计算单元,集群最大规 模为100个计算单元。

步骤6 单击“提交”开始扩容。

步骤7 单击“返回集群列表”跳转到集群列表页面。

“任务状态”显示为“单元扩容中”,表示集群正在扩容。此时,“集群状态”仍为

“服务中”。

扩容成功后,在集群列表中单击集群名称,进入集群信息页面,可以看到扩容后的计 算单元数量。

----结束

3.2.9 删除集群

如果不再需要集群时,可以删除集群。删除CloudTable集群将会清空所有与该集群相 关的资源及数据,且无法恢复,请谨慎操作。

(26)

操作步骤

步骤1 登录表格存储服务管理控制台。

步骤2 单击管理控制台左上角的 ,选择区域。

步骤3 在左侧导航树,单击“集群模式”。

步骤4 在集群管理列表中的右上角,输入要搜索的集群名称,单击 。

3-8 查找集群

步骤5 选中需要删除的集群名,在对应的“操作”列中,单击“更多 > 删除”。

步骤6 在弹出的对话框中,勾选了解删除集群的影响后,单击“确定”,删除集群。

----结束

3.3 准备弹性云服务器

如果客户端工具的运行环境为Linux环境,您需要准备一台和CloudTable集群在相同虚 拟私有云的Linux弹性云服务器作为客户端主机。例如,使用以下客户端工具访问集 群,建议使用Linux弹性云服务器:

● HBase shell

● GeoMesa命令行工具

如果客户端工具的运行环境为Windows环境,您需要准备一台和CloudTable集群在相 同虚拟私有云的Windows弹性云服务器作为客户端主机。例如,使用以下客户端工具 访问集群,建议使用Windows弹性云服务器:

● HBase Web UI

用户可以根据不同使用功能,选择对应镜像的弹性云服务器。

准备弹性云服务器

购买Linux或Windows弹性云服务器的操作步骤,请参见《弹性云服务器快速入门》中 的购买弹性云服务器。

购买的弹性云服务器需要满足如下要求。

● 弹性云服务器需要与CloudTable集群具有相同的区域、可用区、虚拟私有云和子 网。

关于虚拟私有云的更多信息,请参见虚拟私有云的“用户指南 > 虚拟私有云和子 网”。

● 弹性云服务器需要与CloudTable集群具有相同的安全组。

关于安全组的更多信息,请参见《虚拟私有云用户指南》中的安全组。

请确认安全组的“出方向规则”中是否存在如下规则:

(27)

– 协议端口:全部 – 类型:IPv4

– 目的地址:0.0.0.0/0

如上述规则不存在,则按图3-9所示添加如下出方向规则。

– 协议:TCP – 端口:80

– 目的地址:选择“IP地址”,并设置为0.0.0.0/0 图3-9 添加出方向规则

● 购买弹性云服务器时,“弹性公网IP”需选择“现在购买”,或者在ECS创建完成 后再为该ECS绑定一个弹性公网IP。

● 访问Linux弹性云服务器,建议使用SSH密码方式登录Linux弹性云服务器。

具体登录操作步骤请参见《弹性云服务器用户指南》中的登录Linux弹性云服务

器。

● 访问Windows弹性云服务器,建议使用MSTSC远程桌面连接的方式登录。

具体登录操作步骤请参见《弹性云服务器用户指南》中的登录Windows弹性云服

务器。

Linux 弹性云服务器配置 DNS 地址和 hosts 文件

当您通过一键部署客户端的方法安装HBase Shell时,不需要执行本操作。其他情况 下,请参照以下方法为Linux弹性云服务器配置DNS地址和hosts。

步骤1 配置/etc/hosts。

将主机IP配置到/etc/hosts文件,可以加速访问CloudTable集群。

为Linux弹性云服务器配置"/etc/hosts"的操作方法如下:

1. 以root用户登录Linux弹性云服务器。

2. 执行“hostname”,查询主机名。

[root@euler ~]# hostname euler.novalocal

3. 执行“ifconfig”,查询本机IP。

3-10 查询 IP

(28)

4. 执行“vi /etc/hosts”命令,编辑文件,增加主机配置。

192.168.0.58 euler.novalocal 127.0.0.1 euler.novalocal

5. 按“Esc”键,并输入“:wq”,保存退出。

6. 执行如下命令,查看IP地址是否写入成功。

cat /etc/hosts

7. 执行如下命令,验证是否能够解析主机名。

ping 主机名

步骤2 配置DNS。

DNS服务器用于解析CloudTable集群相关链接地址(例如ZK链接地址)中的域名。请 根据CloudTable集群所在的区域,设置相应区域的内网DNS地址,各个区域的DNS地 址请参见《云解析服务常见问题》中的内网DNS地址是多少?。

为Linux弹性云服务器配置DNS的操作方法如下:

1. 以root用户登录Linux弹性云服务器。

2. 执行“vi /etc/resolv.conf”命令,编辑“/etc/resolv.conf”文件,增加

“nameserver”配置。

在已有的公网IP地址之前新增两行写入DNS服务器IP地址,格式如下:

nameserver 100.125.1.250

3. 按“Esc”键,并输入“:wq”,保存退出。

4. 执行如下命令,查看IP地址是否写入成功。

cat /etc/resolv.conf

5. 执行如下命令,验证访问域名是否可以解析到IP地址。

ping 访问域名

访问域名请输入CloudTable集群的相关链接地址(例如ZK链接地址)中的域名。

请在表格存储服务管理控制台,单击集群名称,进入集群基本信息页面,获取 CloudTable的相关链接地址。所获取的链接地址包含了以逗号分隔的3个内网域 名,您可以ping其中任意一个内网域名。

3-11 查看链接地址

----结束

Windows 弹性云服务器配置 DNS 地址

1. 使用Administrator账号登录Windows弹性云服务器。

2. 在Windows弹性云服务器上选择“开始 > 控制面板 > 网络和Internet > 网络和共 享中心”。

3. 在“网络和共享中心”窗口,单击右边的“更改适配器设置”。

4. 右击网络适配器名,在弹出的快捷菜单中,选择“属性”,弹出属性窗口。

(29)

5. 单击“Internet协议版本4 (TCP/IPv4)”,弹出“Internet协议版本 4 (TCP/

IPv4)属性”窗口。

3-12 Internet 协议版本 4 (TCP/IPv4)属性

6. 在图3-12中勾选“使用下面的DNS服务器地址”,将DNS服务器IP地址填入“首 选DNS服务器”框,并单击“确定”。

DNS服务器用于解析CloudTable集群相关链接地址(例如ZK链接地址)中的域 名。请根据CloudTable集群所在的区域,设置相应区域的内网DNS地址,各个区 域的DNS地址请参见《云解析服务常见问题》中的内网DNS地址是多少?。

7. 单击“开始”,在搜索框中输入“cmd”并按“Enter”,进入命令行对话框。

8. 在命令行中执行如下命令,验证配置DNS是否成功。

ping 访问域名

访问域名请输入CloudTable集群的相关链接地址(例如ZK链接地址)中的域名。

请在表格存储服务管理控制台,单击集群名称,进入集群基本信息页面,获取 CloudTable的相关链接地址。所获取的链接地址包含了以逗号分隔的3个内网域 名,您可以ping其中任意一个内网域名。

3-13 查看地址

(30)

3.4 使用 HBase

3.4.1 使用 HBase Shell 访问集群

用户在弹性云服务器里可以通过手动安装客户端或一键部署客户端的方法,使用 HBase Shell访问集群。推荐使用一键部署客户端的方法。

一键部署客户端

步骤1 准备Linux弹性云服务器。

使用一键部署客户端工具,建议Linux弹性云服务器的操作系统类型为EulerOS,

CentOS,Ubuntu和SUSE。具体操作请参见准备弹性云服务器。

步骤2 下载客户端一键部署工具。

使用SSH登录工具(如PuTTY)通过“弹性IP”远程登录到Linux弹性云服务器,然后 执行如下命令,获取客户端一键部署工具:

curl -O -k "http://cloudtable-publish.obs.myhuaweicloud.com/quick_start_hbase_shell.sh"

步骤3 准备集群访问地址。

登录表格存储服务管理控制台,在左侧导航树单击“集群模式”,然后在集群列表中 找到所需要的集群,并获取相应的“ZK链接地址”。该参数值就是集群访问地址,如

图3-14所示。

3-14 ZK 链接地址

步骤4 使用工具部署客户端。

请将以下命令中的"$zookeeper_address"参数替换为步骤3获取的ZK链接地址,然后在 弹性云服务器命令行窗口,执行该命令一键部署客户端。

source quick_start_hbase_shell.sh $zookeeper_address

步骤5 启动Shell访问集群。

在上一步执行source命令自动部署客户端后,就已自动启动了HBase Shell。在后续使 用过程中,您也可以执行“bin/hbase shell”命令启动Shell访问集群。

----结束

手动安装客户端

步骤1 准备Linux弹性云服务器。

具体操作请参见准备弹性云服务器章节中的以下内容:

1.

准备弹性云服务器

2.

为Linux弹性云服务器配置DNS地址和hosts文件

步骤2 下载客户端。

(31)

登录表格存储服务管理控制台,在左侧导航树单击“帮助”,然后在页面右侧单击

“客户端下载”,下载客户端安装包。

3-15 客户端下载

步骤3 安装客户端。

1. 使用文件传输工具(如WinSCP工具)将客户端安装包上传到Linux弹性云服务 器。

2. 使用SSH登录工具(如PuTTY)通过“弹性IP”远程登录到Linux弹性云服务器。

具体登录操作步骤请参见《弹性云服务器用户指南》中的“登录Linux弹性云服务

器 > SSH密码方式登录”。

登录后执行如下命令解压安装包:

cd <客户端安装包存放路径>

tar xzvf hbase-1.3.1-bin.tar.gz

其中,<客户端安装包存放路径>请替换为实际的客户端存放路径。

3. 配置zookeeper地址到配置文件。

在客户端解压目录下,打开“hbase/conf/hbase-site.xml”文件,配置如下参 数:

– “hbase.zookeeper.quorum”:该参数值为在集群管理列表中查找的对应集 群的“ZK链接地址”。

登录表格存储服务管理控制台,在左侧导航树单击“集群模式”,然后在集 群列表中找到所需要的集群,并获取相应的“ZK链接地址”。如下图所示:

3-16 查看 ZK 链接地址

– “mapreduce.cluster.local.dir”:请先检查是否存在该配置项,如果不存 在,请添加该配置项。

配置示例如下:

<configuration>

<property>

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

<value>xxx-zk1.cloudtable.com,xxx-zk2.cloudtable.com,xxx-zk3.cloudtable.com</value>

</property>

<property>

<name>mapreduce.cluster.local.dir</name>

(32)

<value>${hadoop.tmp.dir}/mapred/local</value>

</property>

</configuration>

步骤4 启动Shell访问集群。

执行“bin/hbase shell”,启动Shell访问集群。

----结束

3.4.2 HBase Shell 命令简介

本节介绍常用的HBase Shell命令。更多的HBase Shell命令,请参见https://

learnhbase.wordpress.com/2013/03/02/hbase-shell-commands/。

1. 启动HBase shell。

进入HBase目录下执行如下命令,进入HBase shell。

./bin/hbase shell

2. 获取帮助。

在HBase shell执行“help”命令,将会返回所有命令信息,以及基本命令的说明 和使用方法。

hbase(main):001:0> help

3. 创建表。

执行“create”命令创建一张表,创建表时必须指定表的名称和ColumnFamily名 称。

hbase(main):007:0> create 'cloudtable','cf' 0 row(s) in 1.5530 seconds

=> Hbase::Table - cloudtable

4. 查询表。

执行“list”命令查询指定表,必须指定查询表的名称。

hbase(main):009:0> list 'cloudtable' TABLE

cloudtable

1 row(s) in 0.0060 seconds

=> ["cloudtable"]

5. 插入记录。

执行“put”命令往指定表插入一条记录,需要指定表的名称,主键,自定义列,

以及插入的具体值。

hbase(main):004:0> put 'cloudtable','row1','cf:a','value1' 0 row(s) in 0.2720 seconds

命令中各参数分别代表如下含义:

– cloudtable:表的名称 – row1:主键

– cf:a:自定义的列 – value1:插入的值 6. 扫描记录。

执行“scan”命令扫描表,扫描时需要指定表的名称,即可以全表扫描,也可以 指定范围扫描。

hbase(main):001:0> scan 'cloudtable'

ROW COLUMN+CELL

(33)

row1 column=cf:a, timestamp=1504866237162, value=value1

1 row(s) in 0.2420 seconds

7. 查询单条记录。

执行“get”命令查询单条记录,必须指定查询表的名称和主键。

hbase(main):001:0> get 'cloudtable','row1'

COLUMN CELL

cf:a timestamp=1504866237162, value=value1 1 row(s) in 0.2280 seconds

8. 禁用表。

如果需要修改表,比如删除表,修改表的设置,需要先对表进行禁用。执行

“disable”命令禁用表。在禁用表时执行操作会报ERROR,并提示表被禁用。

hbase(main):002:0> disable 'cloudtable' 0 row(s) in 2.3550 seconds

9. 使能表。

与禁用表相对应的,在禁用表后,如果需要使用表,就需要执行“enable”命令 使能表。

hbase(main):004:0> enable 'cloudtable' 0 row(s) in 1.2500 seconds

10. 删除表。

当不再需要表时,可以执行“drop”命令删除表。删除表之前需要禁用表,不然 会报ERROR,并提示表被使能。删除表将会导致数据丢失,请谨慎操作。

hbase(main):007:0> disable 'cloudtable' 0 row(s) in 2.2380 seconds

hbase(main):008:0> drop 'cloudtable' 0 row(s) in 1.2600 seconds

11. 退出HBase shell。

执行“quit”命令退出HBase Shell。

hbase(main):009:0> quit

3.4.3 访问 HBase Web UI

操作场景

Web UI展示了HBase集群的状态,其中包括整个集群概况信息、RegionServer和 Master的信息、快照、运行进程等信息。通过Web UI提供的信息可以对整个HBase集 群的状况有一定的了解。

操作步骤

步骤1 准备Windows弹性云服务器。

具体操作请参见准备弹性云服务器章节中的以下步骤:

1.

准备弹性云服务器

2.

为Windows弹性云服务器配置DNS地址

步骤2 在浏览器中输入如下地址:

http://xxx-zk1.cloudtable.com:16010/master-status

其中“xxx-zk1.cloudtable.com”为主Master节点的地址。Master地址的获取方法与 ZooKeeper地址的获取方法相同,ZooKeeper地址列表中包含zk1或zk2的地址即为 Master节点的域名。

(34)

ZooKeeper地址(即ZK链接地址)可以在集群基本信息页面获取,具体方法请参考查

看集群基本信息。

步骤3 如果打开的是备Master的页面,通过其中的链接可以跳转到主Master的页面,如图

3-17所示。

3-17 备 Master 页面信息

● 在HBase的主Master的Web UI页面中,Home页面展示的是HBase的一些概况信 息,具体包括以下信息:

– Region Servers页面展示了RegionServer的一些基本信息,如图3-18所示。

3-18 Region Servers 基本信息

– Backup Master页面展示了Backup Master的信息,如图3-19所示。

3-19 Backup Masters 基本信息

– Tables页面显示了HBase中表的信息,包括User Tables、Catalog Tables、

Snapshots,如图3-20所示。

3-20 Tables 基本信息

– Tasks页面显示了运行在HBase上的任务信息,包括开始时间,状态等信息,

如图3-21所示。

(35)

3-21 Tasks 基本信息

● 在HBase的Web UI页面中,Table Details页面展示的是HBase存储表的概要信 息,如图3-22所示。

3-22 TableDetails

● 在HBase的Web UI页面中,Debug dump页面展示的是HBase的Debug信息,如

图3-23所示。

(36)

3-23 Debug dump

● 在HBase的Web UI页面中,HBaseConfiguration页面展示的是HBase的配置信 息,如图3-24所示。

(37)

3-24 HBase Configuration

----结束

3.4.4 授权其他用户访问 IAM 认证集群中的 HBase

用户在创建CloudTable集群时,如果开启了“IAM认证”,那么其他用户未经授权,

是没有权限访问该集群中的HBase的。如果其他用户想访问您创建的IAM认证模式的 CloudTable集群,您需要先执行grant命令给该用户授权。如果今后您不想再给其他用 户访问权限,您可以执行revoke命令回收权限。

HBase 权限控制命令简介

grant命令用于给指定用户授予特定的权限。语法如下:

grant <user>, <permissions> [, <@namespace> [, <table> [, <column family> [, <column qualifier>]]]]

(38)

revoke命令用于回收指定用户的权限。语法如下:

revoke <user> [, <@namespace> [, <table> [, <column family> [, <column qualifier>]]]]

user_permission用于查询权限。语法如下:

user_permission <table>

<permissions>包括以下5种权限:

● R - 可以读取给定范围的数据。

● W - 可以在给定范围内写入数据。

● X - 可以在给定范围内有执行权限。

● C - 可以在给定范围内创建表或删除表(甚至是那些他们没有创建的表)。

● A - 可以执行集群操作,例如平衡集群或在给定范围内分配Region。

有关HBase权限控制的更多内容,请参见HBase官方文档中的Access Control Labels

(ACLs)。

语法示例:

--给用户userA授予RWXC权限 grant 'userA', 'RWXC' --查看指定表的权限 user_permission 'table01' --回收用户userA的权限 revoke 'userA'

授权其他用户访问 IAM 认证集群中的 HBase

假设用户A想访问您创建的IAM认证模式的集群,您可以参照以下步骤给用户A授权、

回收权限。

步骤1 使用HBase Shell访问集群,具体步骤请参见一键部署客户端。

步骤2 在HBase Shell中,执行命令给用户A授权。

您可以执行以下命令进行授权:

grant '用户A', 'RWXC'

步骤3 用户A使用HBase Shell访问集群,具体步骤请参见一键部署客户端。

当执行以下命令一键部署HBase Shell时,命令中的参数请参考命令下方的参数说明进 行替换。

source quick_start_hbase_shell.sh $zookeeper_address $user_name $access_key $secret_key

● $zookeeper_address:请输入所要访问的IAM认证集群的“ZK链接地址”。

$user_name:为创建集群的用户名。如果集群是由账号创建的,$user_name需 设置为账号名,如果集群是由账号下的IAM用户创建的,$user_name需设置为

“IAM用户.账号名”。账号与IAM用户可以类比为父子关系。

● $access_key和$secret_key:请输入用户A自己的AK和SK。

步骤4 在一键部署HBase Shell成功后,用户A就可以进入HBase Shell,进行创表、插入数据 等操作。

HBase Shell命令的相关信息,请参见HBase Shell命令简介。

(39)

例如,执行以下命令查询HBase中所有的表:

list

步骤5 当您不想再允许用户A访问集群时,可以回收权限。

您可以在HBase Shell中执行以下命令回收权限:

revoke '用户A'

----结束

注意事项

● 对于未开启IAM认证的CloudTable集群,其他用户无需得到授权就可以访问此类 集群中的HBase。

● 对于账号下的IAM用户创建的IAM认证模式的CloudTable集群,该IAM用户所属的 账号无需得到授权就可以访问集群中的HBase,可以对HBase数据进行读、写、查 操作。账号用户使用自己的AK和SK连接IAM用户集群的“ZK链接地址”。

3.5 使用 OpenTSDB

3.5.1 OpenTSDB 概述

OpenTSDB是基于HBase的分布式、可伸缩的时间序列数据库。它存储的是时间序列数 据,时间序列数据是指在不同时间点上收集到的数据,这类数据反映了一个对象随时 间的变化状态或程度。

OpenTSDB 架构

OpenTSDB由时间序列守护进程(TSD)和一组命令行实用程序组成。与OpenTSDB的 交互主要通过运行一个或多个TSD来实现。每个TSD都是独立的。没有主服务器,没有 共享状态,因此您可以根据需要运行任意数量的TSD来处理您向其投入的任何负载。

每个TSD使用CloudTable集群中的HBase来存储和检索时间序列数据。数据模式经过高 度优化,可快速聚合相似的时间序列,从而最大限度地减少存储空间。TSD的用户不 需要直接访问底层存储。您可以通过HTTP API与TSD进行通信。所有通信都发生在同 一个端口上(TSD通过查看它收到的前几个字节来确定客户端的协议)。

(40)

3-25 OpenTSDB 架构

基本概念

data point:时间序列数据点,包括metric、timestamp、value和tag。表示某个 metric在某个时间点的数值。

metric:指标项。例如,在系统监控中的CPU使用率、内存、IO等指标。

timestamp:UNIX时间戳(自Epoch以来的秒或毫秒),即value产生的时间。

value:某个metric的值,是JSON格式的事件或直方图/摘要。

tag:标签,是由Tagk和Tagv组成的键值对。用于描述该点所属的时间序列。

标签允许您从不同的源或相关实体中分离出类似的数据点,因此您可以轻松地单 独或成组地绘制它们。标签的一个常见用法是使用生成数据点的机器名称以及机 器所属的集群或池的名称来注释数据点。这使您可以轻松地制作显示每个服务器 的服务状态的仪表盘,以及显示跨逻辑服务器池的聚合状态的仪表盘。

OpenTSDB 系统表简介

OpenTSDB是基于HBase存储时序列数据的,在集群中开启OpenTSDB后,系统会在集 群中创建4张HBase表。OpenTSDB系统表如表3-15所示。

说明

请不要人为去修改这4张HBase表,因为这可能会导致OpenTSDB不可用。

(41)

3-15 OpenTSDB 系统表

表名 说明

OPENTSDB.DATA 用于存储数据点,OpenTSDB的所有数据都存储在这个表中。

OpenTSDB按照salt进行分区,默认20个region,暂不支持设 置。

OPENTSDB.UID 用于存储UID映射,数据点中的每个metric,tag都会映射成 UID,同时每个UID反向映射为metric,tag,这些映射关系存储 在这个表中。

OPENTSDB.TREE 用于存储metric的结构信息,默认未开启该特性。

OPENTSDB.MET

A 用于存储时间序列索引和元数据,默认未开启该特性。

3.5.2 连接 OpenTSDB

创建CloudTable集群时,如果开启了OpenTSDB,等集群创建成功后,用户就可以在 弹性云服务器上通过OpenTSDB链接地址访问OpenTSDB,向资源路径发送HTTP请求 进行数据的读写。

如果在创建集群时没有开启OpenTSDB,可以在集群创建完成后,参考开启

OpenTSDB进行开启。

OpenTSDB 的 HTTP API 访问

OpenTSDB只支持通过HTTP API的方式进行访问。对于未开启IAM认证的集群,

OpenTSDB对外的访问是采用HTTP协议的方式实现,对于开启了IAM认证的集群,

OpenTSDB对外的访问是采用HTTPS协议的方式实现。

说明

HTTP协议本身有安全风险,HTTPS是安全协议,建议使用HTTPS连接方式。

CloudTable服务上的OpenTSDB使用的版本是OpenTSDB 2.3.0,它的接口与开源 OpenTSDB的接口是保持一致的。

有关OpenTSDB API的更多信息,请参考《表格存储服务开发指南》的OpenTSDB API

简介章节。

连接 OpenTSDB

步骤1 获取OpenTSDB链接地址。

请登录表格存储服务管理控制台,在左侧导航树单击“集群模式”,在集群列表中找 到所要查看的集群,单击集群名称进入集群基本信息页面,获取其中的“OpenTSDB 链接地址(内网)”。

3-26 OpenTSDB 链接地址

(42)

步骤2 准备客户端运行环境。

OpenTSDB链接地址是内网地址,您需要准备一台和CloudTable集群在相同区域、可 用区、虚拟私有云、子网和安全组的弹性云服务器才能访问OpenTSDB。

创建并登录弹性云服务器的具体操作,请参见准备弹性云服务器。

步骤3 在弹性云服务器上,访问OpenTSDB。

您可以通过以下两种方式访问OpenTSDB:

● 使用cURL命令行工具或Postman等REST客户端,发送HTTP请求访问 OpenTSDB。

例如,使用cURL命令行工具发送以下请求,如果返回200 OK,说明连接 OpenTSDB成功。{OpenTSDB URL}为步骤1中获取的OpenTSDB链接地址。

curl -i -X GET http://{OpenTSDB URL}/api/version

以下是一个写入数据和查询数据的示例:

a. 写入数据:

curl -i -X POST -d '{"metric":"money", "timestamp":1524900283, "value":1, "tags":

{"card":"card1"}}' http://{OpenTSDB URL}/api/put?sync -k -v

b. 查询数据:

curl -i -X POST -d '{"start": 1524900283,"end": 1524900289,"queries": [{"aggregator":

"sum","metric": "money"}]}' http://{OpenTSDB URL}/api/query -k -v

● 开发应用程序,调用HTTP API访问OpenTSDB进行数据的读写。

详细内容请参考《表格存储服务开发指南》中的以下章节:

开发OpenTSDB应用

OpenTSDB API简介

----结束

3.6 使用 GeoMesa

3.6.1 使用 GeoMesa 命令行工具

用户在弹性云服务器里可以通过一键部署客户端的方法,使用GeoMesa Shell和HBase Shell访问集群。

一键部署客户端

步骤1 准备Linux弹性云服务器。

使用一键部署客户端工具,建议Linux弹性云服务器的操作系统类型为EulerOS,

CentOS,Ubuntu和SUSE。具体操作请参见准备弹性云服务器章节。

步骤2 下载客户端一键部署工具。

执行如下命令,获取客户端一键部署工具:

curl -O -k "http://cloudtable-publish.obs.myhuaweicloud.com/quick_start_hbase_shell.sh"

步骤3 准备集群访问地址。

登录表格存储服务管理控制台,在左侧导航树单击“集群模式”,然后在集群列表中 找到所需要的集群,并获取相应的“ZK链接地址”。该参数值就是集群访问地址,如

图3-27所示。

(43)

3-27 ZK 链接地址

步骤4 使用工具部署客户端。

请将以下命令中的"$zookeeper_address"参数替换为步骤3获取的ZK链接地址,然后在 弹性云服务器命令行窗口,执行该命令一键部署客户端。

source quick_start_hbase_shell.sh $zookeeper_address

步骤5 进入GeoMesa客户端目录。

在上一步执行source命令自动部署客户端后,就已自动启动了HBase Shell。执行以下 命令退出HBase Shell客户端:

exit

进入GeoMesa客户端目录:

cd geomesa-hbase_2.11-1.3.4

----结束

3.6.2 GeoMesa 命令行简介

本节介绍常用的GeoMesa命令。更多的GeoMesa命令,请参见https://

www.geomesa.org/documentation/user/accumulo/commandline.html。

1. 查看classpath

执行“classpath”命令,将会返回当前命令行工具的所有classpath信息。

bin/geomesa-hbase classpath

2. 创建表

执行“create-schema”命令创建表,创建表时至少要指定目录名称与表名称,以 及表规格。

bin/geomesa-hbase create-schema -c geomesa -f test -s

Who:String,What:java.lang.Long,When:Date,*Where:Point:srid=4326,Why:String

3. 描述表

执行“describe-schema”命令获取表描述信息,描述表信息时必须要指定目录名 称与表名称。

bin/geomesa-hbase describe-schema -c geomesa -f test

4. 批量导入数据

执行“ingest”命令批量导入数据,导入时需要指定目录名称,表名称,表规格,

以及相应的数据转换器等。

数据(车牌号,车辆颜色,经度,维度,时间):data.csv,并将数据表放在data文 件夹中。

AAA,red,113.918417,22.505892,2017-04-09 18:03:46 BBB,white,113.960719,22.556511,2017-04-24 07:38:47 CCC,blue,114.088333,22.637222,2017-04-23 15:07:54 DDD,yellow,114.195456,22.596103,2017-04-21 21:27:06 EEE,black,113.897614,22.551331,2017-04-09 09:34:48

表结构定义:myschema.sft,并将myschema.sft放在geomesa命令行工具的conf 文件夹中。

geomesa.sfts.cars = { attributes = [

{ name = "carid", type = "String", index = true }

(44)

{ name = "color", type = "String", index = false } { name = "time", type = "Date", index = false }

{ name = "geom", type = "Point", index = true,srid = 4326,default = true } ]}

转换器定义:myconvertor.convert,并将myconvertor.convert放在geomesa命令 行工具的conf文件夹中。

geomesa.converters.cars= { type = "delimited-text", format = "CSV", id-field = "$fid", fields = [

{ name = "fid", transform = "concat($1,$5)" } { name = "carid", transform = "$1::string" } { name = "color", transform = "$2::string" } { name = "lon", transform = "$3::double" } { name = "lat", transform = "$4::double" } { name = "geom", transform = "point($lon,$lat)" }

{ name = "time", transform = "date('YYYY-MM-dd HH:mm:ss',$5)" } ]

}

执行命令导入数据:

bin/geomesa-hbase ingest -c geomesa -C conf/myconvertor.convert -s conf/myschema.sft data/

data.csv

数据导入其他参数具体说明请参见:https://www.geomesa.org/

documentation/user/accumulo/examples.html#ingesting-data

5. 解释查询

执行“explain”命令获取指定查询语句执行计划的解释说明,解释语句时必须指 定目录名称和表名称,以及给定查询语句。

bin/geomesa-hbase explain -c geomesa -f cars -q "carid = 'BBB'"

6. 统计分析

执行“stats-analyze”命令对数据表进行统计分析,同时还可以进一步执行

“stats-bounds”,“stats-count”,“stats-histogram”,“stats-top-k”命 令对数据表做更详细的统计。

bin/geomesa-hbase stats-analyze -c geomesa -f cars bin/geomesa-hbase stats-bounds -c geomesa -f cars bin/geomesa-hbase stats-count -c geomesa -f cars bin/geomesa-hbase stats-histogram -c geomesa -f cars bin/geomesa-hbase stats-top-k -c geomesa -f cars

7. 导出feature

执行“export”命令导出feature,导出时必须指定目录名称和表名称,同时还可 以根据指定的查询语句进行导出。

bin/geomesa-hbase export -c geomesa -f cars -q "carid = 'BBB'"

8. 删除feature

执行“delete-features”命令删除feature,删除时必须指定目录名称和表名称,

同时还可以根据指定的查询语句进行删除。

bin/geomesa-hbase delete-features -c geomesa -f cars -q "carid = 'BBB'"

9. 获取目录中的全部表的名称

执行“get-type-names”命令获取指定目录中的表名称。

bin/geomesa-hbase get-type-names -c geomesa

10. 删除表

执行“remove-schema”命令删除表,删除表示至少要指定表所在的目录与表名 称。

數據

表 3-11 集群信息 参数 参数说明 集群名称 集群的名称,创建集群时设置。 集群ID 集群的ID。 集群状态 集群状态信息。 已使用存储容 量(GB) 显示已经使用的存储容量。 RS单元数量 显示RegionServer单元的个数。 TSD单元数量 显示OpenTSDB的单元个数。 I/O类型 CloudTable使用的I/O类型。 计费模式 显示集群的计费模式。 CloudTable版 本 表格存储服务版本信息。 创建时间 显示集群创建的时间。 OpenTSDB链 接地址 OpenTSDB提供Web
表 3-13 HBase 参数说明 参数名 参数默 认值 参数范围 单位 参数描述 hbase.regions erver.thread.c ompaction.sm all 1 [1,20] -- HFile compaction线程数,在put高负载情况下可以适当调大。 hbase.regions erver.global.m emstore.size 0.4 (0,0.8) -- 建议设置为 “hbase.hregion.memstore.flush.size * 写活跃region数 / Regio
表 3-15 OpenTSDB 系统表 表名 说明 OPENTSDB.DATA 用于存储数据点,OpenTSDB的所有数据都存储在这个表中。 OpenTSDB按照salt进行分区,默认20个region,暂不支持设 置。 OPENTSDB.UID 用于存储UID映射,数据点中的每个metric,tag都会映射成 UID,同时每个UID反向映射为metric,tag,这些映射关系存储 在这个表中。 OPENTSDB.TREE 用于存储metric的结构信息,默认未开启该特性。 OPENTSDB.MET A 用
表 3-17 CloudTable 支持的监控指标 指标ID 指标名称 含义 取值范 围 测量对象&amp;维度 监控 周 期 ( 原 始 指 标 ) cmdForNu mberOfCpu s CPU个数 统计测量对象的CPU个数。 &gt; 0 测量对象: CloudTable实例 测量维度: instance_id 1分钟 cmdProcess
+2

參考文獻

相關文件

[r]

A) the approximate atomic number of each kind of atom in a molecule B) the approximate number of protons in a molecule. C) the actual number of chemical bonds in a molecule D)

近年來,大蒜對人體保健及疾病治療的研究陸續發表,許多人開始重視大蒜在醫療上,以及保健方面

Retarded Green’s functions in NHEK/CFT correspondence Hidden conformal symmetry and real-time correlators Hidden conformal symmetry and quasi-normal modes Conclusion and

The main hypothesis that we are most interested in is the research hypothesis, denoted H 1 , that the mean birth weight of Australian babies is greater than 3000g.. The other

Jyh-Bin Yang, Pi-Chuan, Yin and Chih-Kuei Kao, 2007.09, “Comparison of various delay analysis methodologies for construction projects,” Forth International Structural Engineering

(一)本小組置召集人 1 人,由校長擔任,委員 17 人,其中行政代表 6 人(教 務主任、學務主任、總務主任、實習主任、進校主任、會計主任) ,員生消 費合作社教師代表

時間:30 分鐘