我正在尝试创建一个双节点 Hadoop 集群,如下所示指导。一个节点是我的 Ubuntu 笔记本电脑,从属节点(第二个节点)是也运行 Ubuntu 的虚拟机。
我正在做掌握节点:
gsamaras@gsamaras:/home/hadoopuser/hadoop/sbin$ sudo ./start-dfs.sh
16/01/23 04:46:16 WARN hdfs.DFSUtil: Namenode for null remains unresolved for ID null. Check your hdfs-site.xml file to ensure namenodes are configured properly.
Starting namenodes on [master]
master: ssh: Could not resolve hostname master: Name or service not known
root@localhost's password:
root@localhost's password: localhost: Permission denied, please try again.
如果现在我将/etc/hosts/
文件编辑如下:
127.0.0.1 localhost
127.0.1.1 gsamaras
127.0.1.1 slave-1
127.0.1.1 master // should I have this?
警告将会消失,但我仍然会收到“权限被拒绝”的提示。这问题和我的情况完全一样,但答案没有多大帮助。有什么想法请?
答案1
我能够使用以下命令解决该问题。
以下命令用于使用 SSH 生成密钥值对。将公钥从 id_rsa.pub 复制到 authorized_keys,并分别向所有者提供对 authorized_keys 文件的读写权限。
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
答案2
尝试授予您的脚本文件权限:
$ sudo chmod +x start-dfs.sh
然后执行。
$ sudo bash start-dfs.sh