web-dev-qa-db-ja.com

Hadoop:「start-all.sh」と入力した後にrootのパスワードを要求する

ラップトップにHadoopとSSHをインストールしました。 「sshlocalhost」は正常に機能します。 HDFSをフォーマットした後、hadoopを起動しようとしました。

munichong@GrindPad:~$ Sudo /usr/sbin/start-all.sh
starting namenode, logging to /var/log/hadoop/root/hadoop-root-namenode-GrindPad.out
root@localhost's password: 
root@localhost's password: localhost: Permission denied, please try again.

localhost: Permission denied (publickey,password).

パスワードが必要です。私の役割は「munichong」です。ただし、munichongのパスワードはここでは機能しません。ここで、私の役割は「ルート」に変わりました。ここで何かを逃したかどうかはわかりません。

誰か助けてくれる人はいますか?

ありがとう!

13
Munichong

解決:

1)パスワードなしでsshキーを生成する

$ ssh-keygen -t rsa -P ""

2)id_rsa.pubを許可されたキーにコピーします

$  cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys

3)sshlocalhostを起動します

$ ssh localhost

4)hadoop sbinディレクトリに移動し、hadoopを開始します

$./start-all.sh 
./start-all.sh
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
Starting namenodes on [localhost]
localhost: starting namenode, logging to /home/amtex/Documents/installed/hadoop/logs/hadoop-amtex-namenode-amtex-desktop.out
localhost: starting datanode, logging to /home/amtex/Documents/installed/hadoop/logs/hadoop-amtex-datanode-amtex-desktop.out
Starting secondary namenodes [0.0.0.0]
0.0.0.0: starting secondarynamenode, logging to /home/amtex/Documents/installed/hadoop/logs/hadoop-amtex-secondarynamenode-amtex-desktop.out
starting yarn daemons
starting resourcemanager, logging to /home/amtex/Documents/installed/hadoop/logs/yarn-amtex-resourcemanager-amtex-desktop.out
localhost: starting nodemanager, logging to /home/amtex/Documents/installed/hadoop/logs/yarn-amtex-nodemanager-amtex-desktop.out

5)パスワードを要求しない

$ jps 
12373 Jps
11823 SecondaryNameNode
11643 DataNode
12278 NodeManager
11974 ResourceManager
11499 NameNode
17
KARTHIKEYAN.A

上記の場合のように、munichongはユーザーです(munichong @ GrindPad)

  1. 私の場合:hduserとしてログインします

  2. まず、directorySudo rm -rf ~/.sshを削除します

  3. デフォルト設定で/.sshディレクトリを再生成するために使用します。

    [hduser@localhost ~]$ ssh-keygen
    
  4. ここでは、id_rsa.pubのコンテンツをコピーして、上記のコマンドを使用して作成されたauthorized_keysファイルに貼り付けます)

    [hduser@localhost ~]$ Sudo cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
  5. [hduser @ localhost〜] $ chmod -R 750 ~/.ssh/authorized_keys

  6. [hduser @ localhost〜] $ ssh localhost

    ホスト「localhost(127.0.0.1)」の信頼性を確立できません。 RSAキーのフィンガープリントは04:e8:80:64:dc:71:b5:2f:c0:d9:28:86:1f:61:60:8aです。接続を続行してもよろしいですか(はい/いいえ)?はい

    警告:既知のホストのリストに「localhost」(RSA)を恒久的に追加しました。最終ログイン:2016年1月4日月曜日14:31:05localhost.localdomainから

  7. [hduser @ localhost〜] $ jps
    18531 Jps

  8. [hduser @ localhost〜] $ start-all.sh

  9. すべてのデーモンが起動します

注:ログファイルが原因で他の問題が発生する場合があります。その場合は、/ usr/local/hadoop/logs /からドットアウト(.out)ファイルのみを削除してください。

7

私は同じ問題に遭遇しました。 Amarが言ったように、Sudo hadoopとして実行している場合は、rootパスワードを要求されます。 rootパスワードをお持ちでない場合は、を使用して設定できます。

 Sudo passwd

以下のURLは、ユーザー管理の詳細を示しています。

https://help.ubuntu.com/12.04/serverguide/user-management.html

3
javamak

SSH証明書の作成とセットアップHadoopでは、ノード、つまりリモートマシンとローカルマシンを管理するためにSSHアクセスが必要です。したがって、Hadoopの単一ノード設定では、ローカルホストへのSSHアクセスを構成する必要があります。

そのため、マシンでSSHを起動して実行し、SSH公開鍵認証を許可するように構成する必要があります。

HadoopはSSHを使用して(ノードにアクセスするため)、通常はユーザーがパスワードを入力する必要があります。ただし、次のコマンドを使用してSSH証明書を作成および設定することにより、この要件を排除できます。ファイル名の入力を求められた場合は、空白のままにして、Enterキーを押して続行します。

チェック このサイト

0
bun

Rootとしてログインし、start-all.shを呼び出したようです。

代わりに、ディレクトリ$ SPARK_HOMEの所有者としてログインし、sparkを呼び出します。
start-all.sh.

(または)

ユーザーhadoopをディレクトリ$ SPARK_HOMEの所有者とし、現在rootとしてログインしている場合、コマンドは次のようになります。

Sudo -u hadoop -c start-all.sh

仮定:
a)PATHにディレクトリ$ SPARK_HOME/binへの参照があります
b)証明書ベースの認証がユーザーhadoop用に構成されている

0
AVA