前面的格式化 没有问题
sudo bin/start-all.sh 时显示 command not found,bin下没有start-all.sh,
但是 在sbin下就有,sudo sbin/start-all.sh没有问题。
后面启动时显示starting namenode,Starting secondary namenodes,
0.0.0.0: secondarynamenode running as process 19072. Stop it first.
似乎没有启动成功。
请问什么问题?
你看的教程是旧的,新版的hadoop启动脚本放在sbin下。start-all.sh已经逐渐被废弃,采用新的启动脚本:
sbin/hadoop-daemon.sh --script hdfs start datanode【注意1】.不要随意执行上述命令,需要你规划好那几个节点是namenode, 哪些节点是datanode, 哪个节点是resourcemanager, proxyserver, 以及historyserver
【注意2】.sbin/hadoop-daemon.sh --script hdfs start datanode 执行后只能只能启动当前节点;
可以启动etc/hadoop/slaves中指定的datanode
【注意3】. 最新版本(hadoop2.2.0)的启动脚本libexec/hadoop-config.sh有bug, 若想用
sbin/hadoop-daemons.sh --hosts your_host_files --script hdfs start datanode启动节点,注意修改libexec/hadoop-config.sh第98行为:
98 elif [ "--hostnames" = "$1" ]同时要小心--hosts your_host_files option, 用户指定的your_host_files一定放在etc/hadoop/下面,但是启动时只指定该文件名,不包含任何路径名,这也是该启动脚本的一个缺陷。
【注意4】. 也可以采用
启动某个节点
祝好运,还有不懂得可以问我。
追问非常感谢,请问后面三种启动,resourcemanager,proxyserver, historyserver是什么,有什么作用?
另外,我只有一台机器,想学习hadoop,是不是只能是单机模式呢,有没有好的教程推荐?谢谢!
resourcemanager是MRv2计算框架(也叫YARN)里的一个名词,就像你所了解的namenode。 你慢慢看资料吧,一时半会说不清楚。一台机子那就搭单机,记得设置ssh免登陆。