Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-20159

Support using separate ZK quorums for client

    XMLWordPrintableJSON

    Details

    • Hadoop Flags:
      Incompatible change, Reviewed
    • Release Note:
      Hide
      After HBASE-20159 we allow client to use different ZK quorums by introducing three new properties: hbase.client.zookeeper.quorum and hbase.client.zookeeper.property.clientPort to specify client zookeeper properties (note that the combination of these two properties should be different from the server ZK quorums), and hbase.client.zookeeper.observer.mode to indicate whether the client ZK nodes are in observer mode (false by default)

      HConstants.DEFAULT_ZOOKEPER_CLIENT_PORT has been removed in HBase 3.0 and replaced by the correctly spelled DEFAULT_ZOOKEEPER_CLIENT_PORT.
      Show
      After HBASE-20159 we allow client to use different ZK quorums by introducing three new properties: hbase.client.zookeeper.quorum and hbase.client.zookeeper.property.clientPort to specify client zookeeper properties (note that the combination of these two properties should be different from the server ZK quorums), and hbase.client.zookeeper.observer.mode to indicate whether the client ZK nodes are in observer mode (false by default) HConstants.DEFAULT_ZOOKEPER_CLIENT_PORT has been removed in HBase 3.0 and replaced by the correctly spelled DEFAULT_ZOOKEEPER_CLIENT_PORT.

      Description

      Currently we are using the same zookeeper quorums for client and server, which makes us under risk that if some client connection boost exhausted zookeeper, RegionServer might abort due to zookeeper session loss. Actually we have suffered from this many times in production.

      Here we propose to allow client to use different ZK quorums, through below settings:

      hbase.client.zookeeper.quorum
      hbase.client.zookeeper.property.clientPort
      hbase.client.zookeeper.observer.mode
      

      The first two are for specifying client zookeeper properties, and the third one indicating whether the client ZK nodes are in observer mode. If the client ZK are not observer nodes, HMaster will take responsibility to synchronize necessary meta information (such as meta location and master address, etc.) from server to client ZK

        Attachments

        1. 20159.addendum
          2 kB
          Ted Yu
        2. 20159.addendum2.patch
          2 kB
          Ted Yu
        3. HBASE-20159.branch-2.addendum.v2.patch
          1 kB
          Mike Drob
        4. HBASE-20159.branch-2.patch
          1 kB
          Mike Drob
        5. HBASE-20159.patch
          40 kB
          Yu Li
        6. HBASE-20159.v2.patch
          44 kB
          Yu Li
        7. HBASE-20159.v3.patch
          44 kB
          Yu Li

          Issue Links

            Activity

              People

              • Assignee:
                liyu Yu Li
                Reporter:
                liyu Yu Li
              • Votes:
                0 Vote for this issue
                Watchers:
                13 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: