介绍
这篇博客文章是CDP中Cloudera的运营数据库(OpDB)系列文章的一部分。每篇文章都会详细介绍新功能。从该系列的开头开始,请参阅<CDP中的运营数据库>,<运营数据库系列之可访问性>。
这篇博客文章概述了Cloudera Data Platform中的运营数据库(OpDB)管理工具和功能。如今,它有两种形式可供使用:作为CDP公共云版本–Data Hub中的完全安全、半托管的产品,以及作为CDP数据中心版本中的完全可定制的产品(类似于CDH和HDP中提供的产品)。有关Data Hub的更多信息,请参阅Cloudera Data Hub。
图1:OpDB数据中心群集。
您可以使用本文中的链接来获取更多信息和使用这些功能的说明。
数据库创建和控制
Apache HBase命名空间是表的逻辑组,类似于传统的关系数据库系统中的数据库。可以通过Apache HBase Shell创建或管理命名空间。有关使用Apache HBase shell的更多信息,请参阅Apache HBase shell 概述 。
使用带有Replication Manager和Ranger的CDP,您只能在HBase Shell中创建名称空间并对其进行管理。但是权限是通过Ranger进行的,复制是通过Replication Manager进行的。
就像在关系数据库中一样,名称空间包含表和权限,复制设置和资源隔离的集合。您可以在名称空间级别设置这些配置。在CDP中,您可以创建名称空间并使用HBase Shell对其进行管理。您可以使用Apache Ranger进行细粒度的授权策略和审计。有关如何在CDP中设置安全性的更多信息,请参阅《使用 Ranger 进行安全性》 。
Replication Manager可帮助您创建HBase复制策略。您可以使用Replication Manager来设置CDH / HDP或Apache HBase与CDP数据中心之间的复制。
图2:创建复制策略用户界面
图形化的DDL和DCL功能
为此提供了一些工具,包括用于以下目的的插件:
• Cloudera机器学习(CML):CML帮助您使用HBase客户端和Phoenix来查询数据,并帮助您进行交互式数据探索、可视化、共享和协作。OpDB可用于存储会话/作业/模型预测结果,以供多个不同用户稍后查询。
图3:Cloudera Machine Learning用户界面
• Hue:Hue是基于Web的交互式查询编辑器,使您可以与数据仓库进行交互。您可以使用Hue中的HBase浏览器应用程序来创建和浏览HBase表。
图4:Hue界面支持针对HBase的搜索,插入,更新,删除,DDL
您可以将使用Impala或Hive的SQL接口用于Hue中的查询处理。
图5:使用Impala的SQL接口
这是使用Hue在HBase中创建示例表的教程:https : //gethue.com/hadoop-tutorial-how-to-create-example-tables-in-hbase/
• Eclipse:在Eclipse中编辑HBase代码时,用于Eclipse的HBase代码格式非常有用。有关更多信息,请参见构建和开发 Apache HBase 。
• 开箱即用的工具包括Zeppelin和Hue等工具及其插件。但是,您也可以使用第三方的SQL实用程序,例如Toad 。
运营数据库版本升级工具
您可以使用Cloudera Manager在CDP-数据中心版本(CDP-DC)中自动化升级运营数据库的过程。升级是通过发行版或维护补丁程序提供的。Cloudera Manager将安装发行版和/或补丁,并管理配置以及重新启动过程。
如果您在诸如Amazon AWS之类的公共云上使用CDP,则必须创建一个新的数据中心集群以升级到各种组件的新版本。有关创建新的运营数据库数据中心集群的更多信息,请参阅CDP 上的 “ 运营数据库 入门 ” 。
Cloudera的产品是基于集群的产品。所有升级和修补程序都跨越多个节点(服务器),安装,配置,重新启动均自动进行,包括在适用情况下进行滚动重新启动。
跨多个服务器的补丁程序管理工具
在CDP数据中心中,Cloudera Manager安装发行版并管理配置。Cloudera Manager还会对每个受影响的组件执行重启过程。
零停机补丁程序
在CDP数据中心中,Cloudera Manager允许您以零停机时间应用补丁。
7. 跨多台服务器的变更管理
您可以跨多个实例对数据库架构执行更改管理。例如,您可以在测试/开发,登台或生产环境中执行此操作。
您可以使用HBase Shell对所需的更改进行脚本编写,然后将其传播到其他实例。
有关使用HBase shell的更多信息,请参见Apache HBase shell 。
工作负载分区
您可以使用多种工具在OpDB中进行工作负载/应用程序分区,具体取决于工作负载集的性质及其数据需求。
如果应用程序均访问单独的表,则可以使用区域服务器组为一组定义的表或名称空间指定一组节点,从而创建硬件分区方法。有关区域服务器组的更多信息,请参见使用 RegionServer 分组 。
对于使用同一组表的应用程序,可以使用RPC限制,用户配额和空间配额来管理嘈杂的邻居问题。有关更多技术细节,请参见HBase报价管理。
您也可以将这两套选项组合在一起,以使用更复杂的分区方案。 使用Cloudera Manager确保特定服务在群集的不同节点之间适当地分区;例如,您可以决定应将哪些节点用于SOLR搜索等。
硬件分区
Cloudera Manager和YARN都利用Linux cgroup和活动内存管理来对硬件资源进行静态和动态分区。
首先,可以使用Cloudera Manager设置的cgroup对在所有主机上运行的所有进程进行硬分区。其次,向导允许用户通过设置百分比,自动转换基于cgroup的CPU和I / O隔离来定义服务的静态分区的布局,并通过自己配置服务来设置内存限制。
最后,本机资源管理器为工作负载提供了一个容器模型,该模型使用cgroup和活动内存管理(设置,监视和销毁)来隔离应用程序,从而将每个离散的工作单元放入容器中。
软件管理程序
支持以下软件管理程序
• 本地环境支持VMware
• 微软的Azure的虚拟环境(Azure堆栈)
• 云上支持Amazon Web Services,Google Compute Platform的虚拟化和Microsoft Azure。
容器和业务流程支持
Cloudera提供了一个Docker映像,该映像上安装了Apache HBase、Apache ZooKeeper和Cloudera Manager。您可以配置YARN来管理您的Docker容器,并在同一容器上将Apache HBase作业提交到YARN或从另一个容器将作业提交到YARN。
有关更多信息,请参阅在 YARN 上管理 Docker 容器 。
回滚补丁或版本升级
Cloudera Manager为某些回滚过程提供了自动化。升级有时可能会涉及数据格式的更改。不支持用于撤消格式更改的工具,您必须触发备份中的数据还原,以便回滚可以使用旧数据。
跨OS平台迁移
Cloudera的标准备份/还原/数据恢复工具可用于支持OpDB在不同操作系统之间的迁移。
HBase备份和灾难恢复策略可确保备份数据,以防止数据丢失。HBase快照使您可以对表进行快照,而对RegionServers的影响不大。也因为快照,克隆和还原操作不涉及数据复制。
有关HBase备份和灾难的更多信息,请参阅《HBase 备份和灾难恢复策略》 。
数据库管理员(DBA)工具
包含许多支持管理数据库的工具,包括:
• Cloudera Manager
• HBase shell
• Hue
• HBCK2
• hbtop
• Ranger
• Atlas
• FreeIPA
• navencrypt
• HDFS tools
• YARN
这些工具提供指标和监视,群集重新启动,添加接收,生命周期管理,升级,安全性,Kerberos设置和其他功能。
图6:Cloudera Manager HBase界面
图7:Cloudera Manager中的指标和监控:
图8:在Cloudera Manager中重启集群
除了这些工具之外,您还可以使用以下第三方和开源管理工具:
• Hrider
• HADMIN
为第三方管理工具提供的开放式文档化接口
我们还提供开放的API,以使其他工具可用于管理OpDB。例如,JMX接口可用于与第三方监视工具(例如Grafana)集成。
结论
在此博客文章中,我们研究了如何利用CDP中OpDB提供的各种管理工具和功能。在下一篇文章中,我们将介绍如何利用OpDB中的管理功能。
原文链接:https://blog.cloudera.com/operational-database-administration/
原文作者:Gokul Kamaraj