Я установил один кластерный узел на свой персональный ноутбук. Он успешно установлен, и jps отображает все 5 демонов, но когда я пытаюсь войти поверх hdfs с помощью команды hadoop fs
, отображается «команда не найдена».
Может кто-нибудь объяснить, в чем проблема и что мы должны сделать, чтобы запускать команды hdfs?
перейдите в каталог установки hadoop
и введите
bin/hadoop fs -ls /
, он вернется с каталогами и файлами, доступными на HDFS
Я надеюсь, что стандартный блог, за которым вы следили, установил здесь hadoop: / usr / local / hadoop / bin
ls -l /usr/local/hadoop/bin
root@ashu-700-430qe:/usr/local/hadoop/bin# ls -lrt
total 440
-rwxr-xr-x 1 hduser hadoop 1776 Dec 17 18:52 rcc
-rwxr-xr-x 1 hduser hadoop 7072 Dec 17 18:52 hdfs.cmd
-rwxr-xr-x 1 hduser hadoop 11142 Dec 17 18:52 hdfs
-rwxr-xr-x 1 hduser hadoop 8298 Dec 17 18:52 hadoop.cmd
-rwxr-xr-x 1 hduser hadoop 5479 Dec 17 18:52 hadoop
-rwxr-xr-x 1 hduser hadoop 10895 Dec 17 18:52 yarn.cmd
-rwxr-xr-x 1 hduser hadoop 11380 Dec 17 18:52 yarn
-rwxr-xr-x 1 hduser hadoop 201707 Dec 17 18:52 test-container-executor
-rwxr-xr-x 1 hduser hadoop 5949 Dec 17 18:52 mapred.cmd
-rwxr-xr-x 1 hduser hadoop 5205 Dec 17 18:52 mapred
-rwxr-xr-x 1 hduser hadoop 159223 Dec 17 18:52 container-executor
Если это не так, выясните, где он установлен. Как только вы найдете его.
Then sudo vi /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/gradle/bin:/usr/local/hadoop/bin"
JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JAVA_HOME
GRADLE_HOME=/opt/gradle-2.10
export GRADLE_HOME
Затем просто добавьте в этот файл hadoop-folder-till-bin-directory.
then source /etc/environment
echo $PATH
эта команда также должна указывать путь к каталогу hadoop bin. Теперь вы можете запускать ваши обычные команды hadoop fs. Надеюсь, это поможет.
Может потребоваться следующая команда:
sudo su hduser
, затем
hadoop fs -ls /