我对 HBase 或 Hadoop 比较陌生,这听起来可能很幼稚。然而..
我在将 Hbase 与现有 hadoop 集群集成时遇到问题。出于学习的目的,我配置了一个 2 节点 Hadoop 1.1.1 集群。让我们说主人和奴隶。我什至可以毫无问题地运行 map reduce 示例。
在 Master --- 1. Namenode 2. Secondary Namenode 3. Job Tracker + 4. Datanode 5. Task tracker
On Salve --- 1. Datanode 2. Task Tracker
现在,我想在这个 hadoop 集群上运行 HBase 0.90.6。问题是这个版本的 HBase 与 Hadoop-code-append jar 捆绑在一起。现在要将 HBase 0.90.6 与 Hadoop 1.1.1 集成,我已将 hbase lib 目录中的 hadoop core jar 替换为 hadoop-core-1.1.1 jar。我还必须将 commons-configuration jar 放在 hbase lib 文件夹下。然后通过 hbase-site.xml 下的 hbase.rootdir 属性使 HBase 指向 hadoop 集群这工作得很好。
当我启动 HBase 主 Web UI 时出现问题,它说
“您当前正在运行未启用 HDFS 附加支持的 HMaster。这可能会导致数据丢失。有关详细信息,请参阅 HBase wiki。”
当我搜索同步支持时,似乎并非所有版本的 Hadoop 都支持这一点。
现在的问题是,如何获得 Hbase 0.90.6 和 hadoop 1.1.1 组合的同步支持?