据我所知hadoop-env.sh是hadoop守护进程的设置环境的配置文件.在此文件中,如何定义HADOOP_HEAPSIZE是为守护进程定义堆大小的属性.是否意味着它适用于所有守护进程,如namenode,datanode,任务跟踪器,作业跟踪器和辅助名称节点,每台机器上都需要1000 MB的内存.如果是,那么我怎样才能为每一个做出不同的决定.
我在hadoop-env.sh中看了几个条目
export HADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_NAMENODE_OPTS" export HADOOP_SECONDARYNAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_SECONDARYNAMENODE_OPTS" export HADOOP_DATANODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_DATANODE_OPTS" export HADOOP_BALANCER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_BALANCER_OPTS" export HADOOP_JOBTRACKER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_JOBTRACKER_OPTS"
这些条目是否为每个守护进程单独分配内存,如果是,那么什么是-Dcom.sub.management.jmxremote我知道java堆内存分配的语法就像-Xmx
此外,在这里是任务跟踪器.什么是Balancer.