配置内存管理
配置场景
在HDFS中,每个文件对象都需要在NameNode中注册相应的信息,并占用一定的存储空间。随着文件数的增加,当原有的内存空间无法存储相应的信息时,需要修改内存大小的设置。
配置参数 |
说明 |
默认值 |
---|---|---|
GC_PROFILE |
NameNode所占内存主要由FsImage大小决定。FsImage Size = 文件数 * 900 Bytes,根据计算结果可估算hdfs的NameNode应设内存大小。 该参数项的内存大小取值如下:
|
custom |
GC_OPTS |
JVM用于gc的参数。仅当GC_PROFILE设置为custom时该配置才会生效。需确保GC_OPT参数设置正确,否则进程启动会失败。
须知:
请谨慎修改该项。如果配置不当,将造成服务不可用。 |
-Xms2G -Xmx4G -XX:NewSize=128M -XX:MaxNewSize=256M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=128M -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=65 -XX:+PrintGCDetails -Dsun.rmi.dgc.client.gcInterval=0x7FFFFFFFFFFFFFE -Dsun.rmi.dgc.server.gcInterval=0x7FFFFFFFFFFFFFE -XX:-OmitStackTraceInFastThrow -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=1M -Djdk.tls.ephemeralDHKeySize=2048 |