确定哪个默认名称节点和 namenode_port "hadoop fs -ls" 正在使用
determine which default namenode and namenode_port "hadoop fs -ls" is using
我是运行以下命令:
hadoop fs -ls
我知道这个命令确实对应于如下内容:
hadoop fs -ls hdfs://<namenode>:<namenode_port>
如何确定 namenode
和 namenode_port
的这些值?
我已经尝试检查环境变量并查看文档,但我找不到任何东西可以做到这一点。
您需要参考 hadoop 配置文件 core-site.xml
以获得 <namenode>
和 <namenode_port>
值。搜索配置 属性 fs.defaultFS
(最新)或 fs.default.name
(已删除)。
core-site.xml 文件可以位于 /etc/hadoop/conf
或 $HADOOP_HOME/etc/hadoop/conf
位置。
编辑
有一种动态的方法可以做到这一点。下面的 hadoop 命令将给出 HDFS URI。
hdfs getconf -confKey "fs.defaultFS"
但是,每次执行 hadoop 命令时,hadoop 都会加载客户端配置 xml 文件。如果您想对此进行测试,请通过将 /etc/hadoop/conf 的内容复制到新目录(假设 /home//hadoop-conf,它应该包含 core-site.xml 来在其他一些目录中创建单独的客户端配置, hdfs-site.xml, mapred-site.xml), 使用命令 export HADOOP_CONF_DIR=/home/<USER>/hadoop-conf
覆盖环境变量,更新 core-site.xml 文件,然后使用 hadoop 命令进行测试。请记住,这仅用于测试目的,一旦完成测试,请取消设置环境变量 (unset HADOOP_CONF_DIR
)。
我是运行以下命令:
hadoop fs -ls
我知道这个命令确实对应于如下内容:
hadoop fs -ls hdfs://<namenode>:<namenode_port>
如何确定 namenode
和 namenode_port
的这些值?
我已经尝试检查环境变量并查看文档,但我找不到任何东西可以做到这一点。
您需要参考 hadoop 配置文件 core-site.xml
以获得 <namenode>
和 <namenode_port>
值。搜索配置 属性 fs.defaultFS
(最新)或 fs.default.name
(已删除)。
core-site.xml 文件可以位于 /etc/hadoop/conf
或 $HADOOP_HOME/etc/hadoop/conf
位置。
编辑
有一种动态的方法可以做到这一点。下面的 hadoop 命令将给出 HDFS URI。
hdfs getconf -confKey "fs.defaultFS"
但是,每次执行 hadoop 命令时,hadoop 都会加载客户端配置 xml 文件。如果您想对此进行测试,请通过将 /etc/hadoop/conf 的内容复制到新目录(假设 /home//hadoop-conf,它应该包含 core-site.xml 来在其他一些目录中创建单独的客户端配置, hdfs-site.xml, mapred-site.xml), 使用命令 export HADOOP_CONF_DIR=/home/<USER>/hadoop-conf
覆盖环境变量,更新 core-site.xml 文件,然后使用 hadoop 命令进行测试。请记住,这仅用于测试目的,一旦完成测试,请取消设置环境变量 (unset HADOOP_CONF_DIR
)。