Class StartTestingClusterOption


@LimitedPrivate("Phoenix") @Evolving public final class StartTestingClusterOption extends Object
Options for starting up a testing cluster (including an hbase, dfs and zookeeper clusters) in test. The options include HDFS options to build mini dfs cluster, Zookeeper options to build mini zk cluster, and mostly HBase options to build mini hbase cluster.

To create an object, use a StartTestingClusterOption.Builder.

Example usage:

    StartTestingClusterOption option = StartTestingClusterOption.builder().
Default values can be found in StartTestingClusterOption.Builder.
  • Field Details

    • numMasters

      private final int numMasters
      Number of masters to start up. We'll start this many hbase masters. If numMasters > 1, you can find the active/primary master with SingleProcessHBaseCluster.getMaster().
    • numAlwaysStandByMasters

      private final int numAlwaysStandByMasters
      Number of masters that always remain standby. These set of masters never transition to active even if an active master does not exist. These are needed for testing scenarios where there are no active masters in the cluster but the cluster connection (backed by master registry) should still work.
    • masterClass

      private final Class<? extends org.apache.hadoop.hbase.master.HMaster> masterClass
      The class to use as HMaster, or null for default.
    • numRegionServers

      private final int numRegionServers
      Number of region servers to start up. If this value is > 1, then make sure config "" is -1 (i.e. no ui per regionserver) otherwise bind errors.
    • rsPorts

      private final List<Integer> rsPorts
      Ports that RegionServer should use. Pass ports if you want to test cluster restart where for sure the regionservers come up on same address+port (but just with different startcode); by default mini hbase clusters choose new arbitrary ports on each cluster start.
    • rsClass

      The class to use as HRegionServer, or null for default.
    • numDataNodes

      private final int numDataNodes
      Number of datanodes. Used to create mini DSF cluster. Surpassed by dataNodeHosts size.
    • dataNodeHosts

      private final String[] dataNodeHosts
      The hostnames of DataNodes to run on. This is useful if you want to run datanode on distinct hosts for things like HDFS block location verification. If you start MiniDFSCluster without host names, all instances of the datanodes will have the same host name.
    • numZkServers

      private final int numZkServers
      Number of Zookeeper servers.
    • createRootDir

      private final boolean createRootDir
      Whether to create a new root or data directory path. If true, the newly created data directory will be configured as HBase rootdir. This will overwrite existing root directory config.
    • createWALDir

      private final boolean createWALDir
      Whether to create a new WAL directory. If true, the newly created directory will be configured as HBase wal.dir which is separate from HBase rootdir.
  • Constructor Details

  • Method Details