发布于 2015-05-26 01:47:23 | 172 次阅读 | 评论: 0 | 来源: 网友投递
HBase分布式面向列的开源数据库
HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。
Apache HBase 因为远程拒绝服务、发现信息泄露漏洞和信息完整性出现问题。
受影响的版本有:
HBase 0.98.0 - 0.98.12
HBase 1.0.0 - 1.0.1
HBase 1.1.0
HBase 0.96(受波及了)
逻辑错误导致 HBase 最安全的配置部署到 ZooKeeper 上处理其协调状态 不安全的 ACLs。任何人都可以通过远程访问登录 ZooKeeper,与此相关的有 HBase 客户端将降低甚至是完全不可用。任何连接到 HBase 集群的授权用户都可以修改参数和看到他们本没有权限看到的 HBase 数据信息。
我们建议 HBase 用户升级更新他们相对应的修补程序版本 (e.g. 0.98.12.1, 1.0.1.1, 1.1.0.1) 以确保能够写入正确的 ACLs 信息。任何这些修补程序都可以升级且为零停机时间升级 [1] 。因为这个逻辑 bug 能掩盖一些配置错误,我们鼓励用户在开始升级过程 [2] 之前验证部署。
一旦用户升级到合适的版本,那么用户必须在 ZooKeeper 客户端上执行一系列的 ZooKeeper 指令。更多关于使用ZooKeeper 客户端安全设置的信息请参考 ZooKeeper 文件[3]。
setAcl /hbase world:anyone:r,sasl:hbase:cdrwa
setAcl /hbase/backup-masters sasl:hbase:cdrwa
setAcl /hbase/draining sasl:hbase:cdrwa
setAcl /hbase/flush-table-proc sasl:hbase:cdrwa
setAcl /hbase/hbaseid world:anyone:r,sasl:hbase:cdrwa
setAcl /hbase/master world:anyone:r,sasl:hbase:cdrwa
setAcl /hbase/meta-region-server world:anyone:r,sasl:hbase:cdrwa
setAcl /hbase/namespace sasl:hbase:cdrwa
setAcl /hbase/online-snapshot sasl:hbase:cdrwa
setAcl /hbase/region-in-transition sasl:hbase:cdrwa
setAcl /hbase/recovering-regions sasl:hbase:cdrwa
setAcl /hbase/replication sasl:hbase:cdrwa
setAcl /hbase/rs sasl:hbase:cdrwa
setAcl /hbase/running sasl:hbase:cdrwa
setAcl /hbase/splitWAL sasl:hbase:cdrwa
setAcl /hbase/table sasl:hbase:cdrwa
setAcl /hbase/table-lock sasl:hbase:cdrwa
setAcl /hbase/tokenauth sasl:hbase:cdrwa
参考:
1: http://hbase.apache.org/book.html#hbase.rolling.upgrade
2: http://hbase.apache.org/book.html#_external_zookeeper_configuration
3: http://s.apache.org/Rgo
via:apache.org
HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。