我正在运行一个由五个Cubieboard组成的群集,类似RaspberryPi的ARM主板(因为32位)安装了Hadoop 1.2.1。有一个名称节点和四个从节点。
对于我的最终论文,我想安装Apache Nutch 1.9和Solr进行大数据分析。 我按照这样解释了设置:http://wiki.apache.org/nutch/NutchHadoopTutorial#Deploy_Nutch_to_Multiple_Machines
当启动Jar Job-File以在整个集群上部署Nutch时,有一个Class not found异常,因为自nutch 1.7后不再有Crawl类:http://wiki.apache.org/nutch/bin/nutch%20crawl 即使在源文件中,它也会被删除。
然后显示以下错误:
hadoop jar apache-nutch-1.9.job org.apache.nutch.crawl.Crawl urls -dir crawl -depth 3 -topN 5 警告:不推荐使用$ HADOOP_HOME。
线程“main”中的异常java.lang.ClassNotFoundException:org.apache.nutch.crawl.Crawl 在java.net.URLClassLoader $ 1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) 在java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at java.lang.Class.forName0(Native Method) 在java.lang.Class.forName(Class.java:266)
我在包中找到的其他类似乎工作,环境设置应该没有问题。
您需要使用哪些替代方法对整个群集执行爬网操作。 从Nutch 2.0版开始,就有了一个Crawler类。但不是1.9 :(
非常感谢任何帮助。谢谢。
答案 0 :(得分:1)
我相信您应该使用bin / crawl脚本而不是将自己的nutch作业提交给hadoop。为此,您需要执行以下操作:
导航到ntuch-1.9并运行:
ant build
构建完成后,运行
cd runtime/deploy
hadoop fs -put yourseed yourseedlist
bin/crawl seed.txt crawl http://yoursolrip/solr/yoursolrcore
我希望这会有所帮助。