Java 为hadoop启用UseNUMA标志?
我希望为使用java的hadoop框架启用UseNUMA标志 问题是我不知道hadoop框架调用了哪个all places java命令 因此,我在Java 为hadoop启用UseNUMA标志?,java,bash,hadoop,flags,numa,Java,Bash,Hadoop,Flags,Numa,我希望为使用java的hadoop框架启用UseNUMA标志 问题是我不知道hadoop框架调用了哪个all places java命令 因此,我在/etc/bash.bashrc中为java命令编写了别名 alias java='java -XX:+UseNUMA' 这样做对吗 我怎么知道旗子是否打开了?我的意思是你可以用下面的命令来检查 # java -XX:+PrintFlagsFinal | grep UseNUMA 但是,如何检查hadoop是否正在使用它呢?在bashrc中创建别
/etc/bash.bashrc
中为java命令编写了别名
alias java='java -XX:+UseNUMA'
这样做对吗
我怎么知道旗子是否打开了?我的意思是你可以用下面的命令来检查
# java -XX:+PrintFlagsFinal | grep UseNUMA
但是,如何检查hadoop是否正在使用它呢?在bashrc中创建别名是没有用的。Hadoop使用环境变量JAVA_HOME来定位JAVA HOME,JAVA命令取自路径${JAVA_HOME}/bin/JAVA。因此,即使您在.bashrc中创建了一个别名,也将毫无用处 要在hadoop守护进程启动期间指定JVM标志,请使用配置文件/hadoop-env.sh在环境变量中指定标志
export HADOOP_NAMENODE_OPTS="-XX:+UseNUMA -Dcom.sun.management.jmxremote $HADOOP_NAMENODE_OPTS"
export HADOOP_SECONDARYNAMENODE_OPTS="-XX:+UseNUMA -Dcom.sun.management.jmxremote $HADOOP_SECONDARYNAMENODE_OPTS"
export HADOOP_DATANODE_OPTS="-XX:+UseNUMA -Dcom.sun.management.jmxremote $HADOOP_DATANODE_OPTS"
export HADOOP_BALANCER_OPTS="-XX:+UseNUMA -Dcom.sun.management.jmxremote $HADOOP_BALANCER_OPTS"
export HADOOP_JOBTRACKER_OPTS="-XX:+UseNUMA -Dcom.sun.management.jmxremote $HADOOP_JOBTRACKER_OPTS"
在客户端执行类似于hadoop、Thread、mapred的co时,使用以下环境变量启用相同的功能
export HADOOP_OPTS="-XX:+UseNUMA"
要检查标志是否启用,可以使用以下命令
ps aux | grep hadoop