问题描述
我在五台机器上以分布式模式使用 Hadoop 3.1.1。我使用 start-balancer.sh
目录中的默认脚本 sbin
运行脚本以平衡节点上的磁盘空间。我很确定平衡器正在运行,因为我的名称节点处于安全模式,当我输入 hdfs dfs -df
时,我得到以下信息:
Filesystem Size Used Available Use%
hdfs://<mynamenode>:<port> 0 0 0 NaN%
现在已经有一段时间了,我怎么知道平衡器是否仍在运行以及预计到达时间是多少?我在 grep
上尝试了 ps aux
,但仍然不清楚。
供参考:start-balancer.sh
的内容:
MYNAME="${BASH_SOURCE-$0}"
function hadoop_usage
{
hadoop_add_option "--buildpaths" "attempt to add class files from build tree"
hadoop_add_option "--loglevel level" "set the log4j level for this command"
hadoop_add_option "-policy <policy>" "set the balancer's policy"
hadoop_add_option "-threshold <threshold>" "set the threshold for balancing"
hadoop_generate_usage "${MYNAME}" false
}
bin=$(cd -P -- "$(dirname -- "${MYNAME}")" >/dev/null && pwd -P)
# let's locate libexec...
if [[ -n "${HADOOP_HOME}" ]]; then
HADOOP_DEFAULT_LIBEXEC_DIR="${HADOOP_HOME}/libexec"
else
HADOOP_DEFAULT_LIBEXEC_DIR="${bin}/../libexec"
fi
HADOOP_LIBEXEC_DIR="${HADOOP_LIBEXEC_DIR:-$HADOOP_DEFAULT_LIBEXEC_DIR}"
# shellcheck disable=SC2034
HADOOP_NEW_CONfig=true
if [[ -f "${HADOOP_LIBEXEC_DIR}/hdfs-config.sh" ]]; then
. "${HADOOP_LIBEXEC_DIR}/hdfs-config.sh"
else
echo "ERROR: Cannot execute ${HADOOP_LIBEXEC_DIR}/hdfs-config.sh." 2>&1
exit 1
fi
# Start balancer daemon.
exec "${HADOOP_HDFS_HOME}/bin/hdfs" --config "${HADOOP_CONF_DIR}" --daemon start balancer "$@"
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)