복붙노트

[HADOOP] Hadoop : start-dfs.sh 연결이 거부되었습니다.

HADOOP

Hadoop : start-dfs.sh 연결이 거부되었습니다.

나는 debian / stretch64에 방미제 상자가 있습니다. 문서와 함께 Hadoop3을 설치하려고합니다. http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.htm

start-dfs.sh를 실행할 때 나는이 메시지를 가지고있다.

vagrant@stretch:/opt/hadoop$ sudo sbin/start-dfs.sh
Starting namenodes on [localhost]
pdsh@stretch: localhost: connect: Connection refused
Starting datanodes
pdsh@stretch: localhost: connect: Connection refused
Starting secondary namenodes [stretch]
pdsh@stretch: stretch: connect: Connection refused
vagrant@stretch:/opt/hadoop$

물론 hadoop-env.sh를 다음과 같이 업데이트하려고했습니다. export HADOOP_SSH_OPTS = "- p 22"

ssh localhost work (암호없이)

나는이 문제를 해결하기 위해 내가 바꿀 수있는 아이디어가 없다.

해결법

  1. ==============================

    1.pdsh가 기본적으로 작동하는 방식에 문제가 있습니다 (편집 참조).하지만 Hadoop 없이는이 문제를 해결할 수 있습니다. Hadoop은 시스템에 / usr / bin / pdsh에 pdsh가 있는지 확인한 후 pdsh를 사용합니다. pdsh 사용을 피하는 쉬운 방법은 $ HADOOP_HOME / libexec / hadoop-functions.sh를 편집하는 것입니다.

    pdsh가 기본적으로 작동하는 방식에 문제가 있습니다 (편집 참조).하지만 Hadoop 없이는이 문제를 해결할 수 있습니다. Hadoop은 시스템에 / usr / bin / pdsh에 pdsh가 있는지 확인한 후 pdsh를 사용합니다. pdsh 사용을 피하는 쉬운 방법은 $ HADOOP_HOME / libexec / hadoop-functions.sh를 편집하는 것입니다.

    라인을 교체하다

    if [[ -e '/usr/bin/pdsh' ]]; then
    

    으로

    if [[ ! -e '/usr/bin/pdsh' ]]; then
    

    hadoop은 pdsh없이 작동하고 모든 것이 작동합니다.

    편집하다:

    더 나은 해결책은 pdsh를 사용하는 것이지만 여기서는 ssh 대신 rsh를 사용하므로 $ HADOOP_HOME / libexec / hadoop-functions.sh의 줄을 바꾸십시오.

    PDSH_SSH_ARGS_APPEND="${HADOOP_SSH_OPTS}" pdsh \
    

    으로

    PDSH_RCMD_TYPE=ssh PDSH_SSH_ARGS_APPEND="${HADOOP_SSH_OPTS}" pdsh \
    

    Obs : 내가 언급 한 것처럼 PDSH_RCMD_TYPE = ssh 만 내보내기가 작동하지 않습니다. 왜 그런지 모르겠다.

    또한 문제를 열어이 문제에 대한 패치를 제출했습니다. HADOOP-15219

  2. ==============================

    2.방글라데시 상자에서 방화벽이 실행되고 있는지 확인하십시오.

    방글라데시 상자에서 방화벽이 실행되고 있는지 확인하십시오.

    chkconfig iptables off
    /etc/init.d/iptables stop
    

    그렇지 않다면 기본 로그 / var / log /를 살펴보십시오.

  3. ==============================

    3.나는이 문제를 hadoop 3.1.0에 추가하여 수정했다.

    나는이 문제를 hadoop 3.1.0에 추가하여 수정했다.

    PDSH_RCMD_TYPE = ssh

    내 .bashrc뿐만 아니라 $ HADOOP_HOME / etc / hadoop / hadoop-env.sh.

  4. from https://stackoverflow.com/questions/48189954/hadoop-start-dfs-sh-connection-refused by cc-by-sa and MIT license