Optimizing HBase JVM Parameters¶
Scenario¶
When the number of clusters reaches a certain scale, the default settings of the Java virtual machine (JVM) cannot meet the cluster requirements. In this case, the cluster performance deteriorates or the clusters may be unavailable. Therefore, JVM parameters must be properly configured based on actual service conditions to improve the cluster performance.
Procedure¶
Navigation path for setting parameters:
The JVM parameters related to the HBase role must be configured in the hbase-env.sh file in the ${BIGDATA_HOME}/FusionInsight_HD_*/install/FusionInsight-HBase-2.2.3/hbase/conf/ directory.
Each role has JVM parameter configuration variables, as shown in Table 1.
Variable | Affected Role |
---|---|
HBASE_OPTS | All roles of HBase |
SERVER_GC_OPTS | All roles on the HBase server, such as Master and RegionServer |
CLIENT_GC_OPTS | Client process of HBase |
HBASE_MASTER_OPTS | Master of HBase |
HBASE_REGIONSERVER_OPTS | RegionServer of HBase |
HBASE_THRIFT_OPTS | Thrift of HBase |
Configuration example:
export HADOOP_NAMENODE_OPTS="-Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_NAMENODE_OPTS"