当我从我的主节点运行 start-all.sh 脚本时,我的一些 DataNodes 无法启动;日志文件报告 Java IOException:/tmp/$MY_USER_NAME 中不兼容的命名空间 ID。
ILikeFood's questions
我正在尝试使用 SSH 连接到我自己的 CentOS 服务器;我可以通过密码正常连接;我正在尝试使用我的公钥进行连接,但服务器并未尝试进行公钥身份验证。我已按照CentOS wiki 中此页面上的所有说明进行操作,并验证了以下内容:
我正在运行 CentOS 6.0 或更高版本
我的 sshd_config 具有以下内容:
PermitRootLogin no PubkeyAuthentication Yes RSAAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
我在客户端主目录的 .ssh/ 文件夹中创建了私钥
- 公钥的全文(由 生成
ssh-keygen
)在服务器上我的主目录中的 .ssh/authorized_keys 文件中占据一行。 我在客户端和服务器上都设置了以下权限模式:
chmod 700 .ssh chmod 600 .ssh/*
我目前正在尝试在我的网络上设置一个 Hadoop 分布式计算集群。目前。我的集群节点在与我的主服务器通信时遇到问题。
现在我正在两台计算机上工作,客户端和服务器。
在服务器上:
$ nmap SERVER -p 9000
Starting Nmap 5.21 ( http://nmap.org ) at 2012-05-29 13:16 PDT
Nmap scan report for ncoiasi1 (127.0.0.1)
Host is up (0.000032s latency).
Hostname ncoiasi1 resolves to 2 IPs. Only scanned 127.0.0.1
rDNS record for 127.0.0.1: localhost
PORT STATE SERVICE
9000/tcp open cslistener
在客户端:
$ nmap SERVER -p 9000
Starting Nmap 5.21 ( http://nmap.org ) at 2012-05-29 13:16 PDT
Nmap scan report for ncoiasi1 (10.23.95.197)
Host is up (0.00020s latency).
rDNS record for 10.23.95.197: NCOIASI1
PORT STATE SERVICE
9000/tcp closed cslistener
我做了以下事情:
- 确保两台机器在 /etc/hosts 中都有一个条目,并在两台机器上将 ALL:ALL 放入 /etc/hosts.allow
- 禁用两台机器上的防火墙(安全操作,因为我在严格的公司防火墙后面)
- 用于
lsof
验证正确的进程正在侦听 9000。
任何帮助,将不胜感激; 我知道这只是我忘记在某处的一些配置,但我找不到在哪里。
我一直在尝试建立一个 Hadoop 集群;我设法让它以伪分布式模式运行,我的一台机器在大约 30 秒内完成了托尔斯泰的《战争与和平》字数统计。
我现在正在尝试将第二台机器添加到我的集群中;为了帮助设置它,我创建了一个 Hadoop 用户组,该组具有在 Hadoop 服务器上启动、停止和运行作业的权限(尽管我只让 root 编辑配置文件)。我确保 hadoop 组的所有成员都可以使用他们的公钥从主节点到从节点进行 ssh。我使用 dpkg 安装了 hadoop 1.0.0.3。我在主节点和从节点上正确编辑了主从文件,并更改了配置以指向正确的 NameNode 和 JobTracker:
在 core-site.xml 中:
fs.default.name=hdfs://$MASTER:9000
在 mapred-site.xml 中:
mapred.job.tracker=$MASTER:9001
其中 $MASTER 是我的主机的主机名。
我的 NN、SNN 和 JobTracker 启动正确;但是,我的从节点无法连接到我的主节点!这是我在 DataNode 日志中看到的行为:
2012-05-25 09:36:23,390 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: $MASTER/10.23.95.197:9000. Already tried 0 time(s).
2012-05-25 09:36:23,390 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: $MASTER/10.23.95.197:9000. Already tried 1 time(s).
...
...
connect to server: $MASTER/10.23.95.197:9000. Already tried 9 time(s).
2012-05-25 09:36:31,394 INFO org.apache.hadoop.ipc.RPC: Server at $MASTER/10.23.95.197:9000 not available yet, Zzzzz...
一而再,再而三。我在 TaskTracker 日志中看到了同样的内容,除了那里列出的端口号是 9001。lsof 告诉我正确的进程正在两个端口上侦听。出了什么问题???
来自 $MASTER 的所有日志都可以在http://pastebin.com/ZzyKBQVJ找到
谢谢; 如果您有任何问题,请告诉我。