HBase
  1. HBase
  2. HBASE-2817

Allow separate HBASE_REGIONSERVER_HEAPSIZE and HBASE_MASTER_HEAPSIZE

    Details

    • Type: Improvement Improvement
    • Status: Open
    • Priority: Minor Minor
    • Resolution: Unresolved
    • Affects Version/s: 0.90.0
    • Fix Version/s: None
    • Component/s: scripts
    • Labels:
      None

      Description

      Right now we have a single HBASE_HEAPSIZE configuration. This isn't that great, since the HMaster doesn't really need much ram compared to the region servers. We should allow different java options and heapsize for the different daemon types.

      Probably worth breaking out THRIFT, REST, AVRO, etc, as well.

        Activity

        Hide
        stack added a comment -

        @Adrian So, IIRC, doesn't the first -Xmx win so if you pass it in as an *_OPTS, will that give you want you need? Else, want to make a patch w/ what you want in it? Thanks.

        Show
        stack added a comment - @Adrian So, IIRC, doesn't the first -Xmx win so if you pass it in as an *_OPTS, will that give you want you need? Else, want to make a patch w/ what you want in it? Thanks.
        Hide
        Adrian Muraru added a comment -

        This is related to HBASE-1687 - I see it fixed but the HEAPSIZE per service is not sorted out

        Show
        Adrian Muraru added a comment - This is related to HBASE-1687 - I see it fixed but the HEAPSIZE per service is not sorted out
        Hide
        Adrian Muraru added a comment -

        The problem here is that we cannot set different value for HEAPSIZE on hbase services as HBASE_HEAPSIZE is used in bin/hbase to set Xmx value

        Show
        Adrian Muraru added a comment - The problem here is that we cannot set different value for HEAPSIZE on hbase services as HBASE_HEAPSIZE is used in bin/hbase to set Xmx value
        Hide
        Jean-Daniel Cryans added a comment -

        In hbase-env.sh we have this which looks like what Hadoop has:

        
        # export HBASE_JMX_BASE="-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
        # export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10101"
        # export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10102"
        # export HBASE_THRIFT_OPTS="$HBASE_THRIFT_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10103"
        # export HBASE_ZOOKEEPER_OPTS="$HBASE_ZOOKEEPER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10104"
        
        

        The -Xmx's kinda already easy to add this way. You want to break it out even more?

        Show
        Jean-Daniel Cryans added a comment - In hbase-env.sh we have this which looks like what Hadoop has: # export HBASE_JMX_BASE= "-Dcom.sun.management.jmxremote.ssl= false -Dcom.sun.management.jmxremote.authenticate= false " # export HBASE_MASTER_OPTS= "$HBASE_MASTER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10101" # export HBASE_REGIONSERVER_OPTS= "$HBASE_REGIONSERVER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10102" # export HBASE_THRIFT_OPTS= "$HBASE_THRIFT_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10103" # export HBASE_ZOOKEEPER_OPTS= "$HBASE_ZOOKEEPER_OPTS $HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10104" The -Xmx's kinda already easy to add this way. You want to break it out even more?
        Hide
        Jonathan Gray added a comment -

        +1

        Show
        Jonathan Gray added a comment - +1

          People

          • Assignee:
            Unassigned
            Reporter:
            Todd Lipcon
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Development