Я пытаюсь настроить Apache Nutch 1.15 с Apache Solr 7.6.0 в облачном режиме. Скрипт сканирования (nutch/bin/crawl
) работает до тех пор, пока не будет запущено задание очистки (CleaningJob.java
). Тогда это терпит неудачу без причины (reason: NA
).
Я успешно установил те же версии Nutch и Solr, но с Sorl в автономном режиме.
Я запускаю Solr в облачном режиме с помощью следующих команд:
solr/bin/solr start -cloud -p 8983 -s "solr/cloud/node1/solr"
solr/bin/solr start -cloud -p 7574 -s "solr/cloud/node2/solr" -z localhost:9983
И я запускаю процесс сканирования следующей командой:
nutch/bin/crawl -i -s nutch/urls/ --num-threads 400 --hostdbupdate --hostdbgenerate --num-tasks 16 --sitemaps-from-hostdb once niche-crawl 8
Не удалось выполнить очистку. :
nutch/bin/nutch clean niche-crawl/crawldb
За исключением:
No exchange was configured. The documents will be routed to all index writers.
SolrIndexer: deleting 1000/1000 documents
SolrIndexer: deleting 1000/1000 documents
ERROR CleaningJob: java.lang.RuntimeException: CleaningJob did not succeed, job status:FAILED, reason: NA
at org.apache.nutch.indexer.CleaningJob.delete(CleaningJob.java:169)
at org.apache.nutch.indexer.CleaningJob.run(CleaningJob.java:197)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.nutch.indexer.CleaningJob.main(CleaningJob.java:208)
Вот мой index-writers.xml
для Solr в облачном режиме:
<writer id="indexer_solr_1" class="org.apache.nutch.indexwriter.solr.SolrIndexWriter">
<parameters>
<param name="type" value="cloud"/>
<param name="url" value="http://localhost:8983/solr"/>
<param name="collection" value="nutch"/>
<param name="weight.field" value=""/>
<param name="commitSize" value="1000"/>
<param name="auth" value="true"/>
<param name="username" value="solr"/>
<param name="password" value="password"/>
</parameters>
<mapping>
<copy>
<!-- <field source="content" dest="search"/> -->
<!-- <field source="title" dest="title,search"/> -->
</copy>
<rename>
<field source="metatag.description" dest="description"/>
<field source="metatag.keywords" dest="keywords"/>
</rename>
<remove>
<field source="segment"/>
</remove>
</mapping>
</writer>