1

独自の Zookeeper を持つ開発クラスターから、別のクラスターまたは環境 (ステージングなど) で実行されている Zookeeper に接続しようとしています。

これを分散モードで実行すると、別の hbase インスタンスに接続できませんが、疑似モードまたはスタンドアロン モードで実行すると、別の hbase 環境に接続できます。

    Configuration cloneConfig = HBaseConfiguration.create();
    cloneConfig.clear();
    cloneConfig.set("hbase.zookeeper.quorum", "shost3,shost2,shost1");
    cloneConfig.set("hbase.zookeeper.property.clientPort", "2181");
    HBaseAdmin.checkHBaseAvailable(cloneConfig); 
  destinationTable = new HTable(cloneConfig, destinationTableName);

実行中のオープンとは異なる飼育係に接続する方法はありますか? たとえば、デフォルトの構成を使用して hbase サーバーに接続する場合

Configuration conf = HBaseConfiguration.create();
new HTable(conf, destinationTableName);

ログでデフォルトの飼育係に接続していることがわかります。

zookeeper.ZooKeeper: Initiating client connection, connectString=host1:2181,host2:2181,

ただし、hbase.zookeeper.quorum プロパティを設定しても接続文字列は変更されず、引き続きデフォルトの Zookeeper に接続されます。

4

0 に答える 0