nutch1.3+hadoop0.20.2+solr3.2搭建
2011-08-20 21:20
288 查看
一 简介
1 Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。Nutch 致力于让每个人能很容易, 同时花费很少就可以配置世界一流的Web搜索引擎. Nutch必须能够做到:
* 每个月取几十亿网页
* 为这些网页维护一个索引
* 对索引文件进行每秒上千次的搜索
* 提供高质量的搜索结果
* 以最小的成本运作
2 Hadoop 一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high
throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以流的形式访问(streaming access)文件系统中的数据。
Hadoop是项目的总称,起源于作者儿子的一只玩具大象的名字。主要是由HDFS、MapReduce和Hbase组成。
HDFS是Google File System(GFS)的开源实现。
MapReduce是Google MapReduce的开源实现。
HBase是Google BigTable的开源实现。
3 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到xml格式的查询结果。
二 hadoop0.20.2安装
1、选好机器,建好用户,打通各机器用户之间ssh免密码登入通道2、在选择的所有机器上的 /etc/hosts上写好所有选择的机器的ip 主机名,
3、在所有机器上,安装好java1.6,配置好java环境变量
4、在namenode机器上,获取hadoop0.20.2安装包,解压安装到~/hadoop目录,
5、~/hadoop/conf配置参数设置:
masters:备namenode机器ip或主机名
slaves:datanode机器ip或主机名列表,一行一个
hdfs-site.xml:
<property>
<name>dfs.http.address</name>
<value>ip:port1</value>
<description>
The address and the base port where the dfs namenode web ui will listen on.
If the port is 0 then the server will start on a free port.
</description>
</property>
mapred-site.xml:
<property>
<name>mapred.job.tracker.http.address</name>
<value>ip:port2</value>
<description>
The job tracker http server address and port the server will listen on.
If the port is 0 then the server will start on a free port.
</description>
</property>
6 hadoop-env.sh设置好java安装目录,
7 确保配置的相关端口没被占用
8 将hadoop目录拷贝到所有选择的其他机器的用户目录中
9 ./bin/stop-all.sh
10 hdfs-site.xml
<property>
<name>dfs.data.dir</name>
<value>${hadoop.tmp.dir}/dfs/data</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>${hadoop.tmp.dir}/yl_dfs/</value>
</property>
每次重启前删掉对应目录
11 ./bin/hadoop namenode -format
12 ./bin/start-all.sh
13 遇到问题,看log日志,google解决
三 nutch1.3安装
1、在namenode机器的用户目录下,从nutch1.3分支直接拉:svn co http://svn.apache.org/repos/asf/nutch/branches/branch-1.3/ ~/nutch
[b]2、重新编译:
[/b]
修改~/nuch/ivy/nutch-site.xml 可用的maven地址
<property name="repo.maven.org"
value="http://mirrors.ibiblio.org/pub/mirrors/maven2/"
override="false"/>
3、切换到~/nuch/conf,设置nutch-site.xml
<property>
<name>http.agent.name</name>
<value>nutchspider_yl</value>
</property>
<property>
<name>http.robots.agents</name>
<value>nutchspider_yl,*</value>
<description>The agent strings we'll look for in robots.txt files,
comma-separated, in decreasing order of precedence. You should
put the value of http.agent.name as the first agent name, and keep the
default * at the end of the list. E.g.: BlurflDev,Blurfl,*
</description>
</property>
<property>
<name>mapreduce.job.jar.unpack.pattern</name>
<value>(?:classes/|lib/|plugins/).*</value>
</property>
<property>
<name>plugin.folders</name>
<value>${job.local.dir}/../jars/plugins</value>
</property>
4、将nutch目录拷贝到所有选择的机器用户目录中
5、统一配置文件管理:
在所有选择的机器上,将hadoop/conf下的配置拷贝到nutch/conf下,mv hadoop/conf hadoop/conf_bak,
ln -s hadoop/conf nuch/conf
四 sorl3.2安装
1、比较简单 ,namenode上获取软件包,解压安装到~/solr目录下2、切换到~/solr/example下,启动服务 java -jar start.jar,默认启动端口是8983
五 网页抓取和建立索引
1、在本地磁盘中新建一个文件,写入一个入口 url ,然后将其复制到 HDFS 中 :~/hadoop/bin/hadoop fs -copyFromLocal urls hdfs_path/urls.txt
2、配置相关爬取过滤匹配规则
根据需求设置~/nucht/conf下的automaton-urlfilter.txt domain-urlfilter.txt
prefix-urlfilter.txt regex-urlfilter.txt suffix-urlfilter.txt
3、网页爬取
~/nutch/src/bin/nutch crawl hdfs_path/urls.txt -solr http://ip:8983/solr/ -dir hdfs_path/crawled -depth 3 -topN 10
4、建立索引
~/nutch/src/bin/nutch solrindex http://ip:8983/solr/ hdfs_path/crawled/crawldb/ hdfs_path/crawled/linkdb/ -dir hdfs_path/crawled/segments/
生成的index在~/solr/example/solr/data/index/下面
5、通过页面http://ip:8983/solr/admin/可以进行查询搜索
参考
http://blog.csdn.net/Mylady58/article/details/5891190
http://wenku.baidu.com/view/f12c4e94dd88d0d233d46ac2.html
http://blog.building-blocks.com/2011/01/building-a-search-engine-with-nutch-and-solr-in-10-minutes
相关文章推荐
- 基于hadoop+nutch+solr的搜索引擎环境搭载<一>hadoop完全分布式环境搭建
- Nutch + Solr + Hadoop 搭建分布式搜索引擎详细教程
- 使用 Hadoop,Nutch ,Hbase,Solr 搭建搜索引擎之Hadoop1.2.1搭建
- [Nutch]Nutch2.3+Hadoop+HBase+Solr在Ubuntu环境搭建
- 使用 Hadoop,Nutch ,Hbase,Solr 搭建搜索引擎之搭建solr4.9.1
- 使用 Hadoop,Nutch ,Hbase,Solr 搭建搜索引擎抓取并测试搜索结果
- 使用 Hadoop,Nutch ,Hbase,Solr 搭建搜索引擎之Nutch2.2.1
- Linux上 Nutch 1.3 + Solr 3.4.0 + Tomcat6.0 搜索引擎单节点搭建笔记
- Linux上 Nutch 1.3 + Solr 3.4.0 + Tomcat6.0 搜索引擎单节点搭建笔记
- 使用 Hadoop,Nutch ,Hbase,Solr 搭建搜索引擎之Hbase-0.94.27.搭建
- Hadoop-0.20.2+ Nutch-1.2+Tomcat-7——分布式搜索配置
- NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(一)
- Nutch1.3和Hadoop0.20.203.0的整合
- 基于hadoop+nutch+solr的搜索引擎环境搭载<三>hadoop,nutch,solr整合到eclipse上开发
- 搭建Hadoop0.20.2源码学习环境
- [Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(一)
- [Linux] Nutch 2.3.1+ Hbase0.98 + Hadoop2.5 + Solr4.10
- hadoop+nutch+solr搜索引擎配
- Nutch1.8+Hadoop1.2+Solr4.3分布式集群配置
- [Linux] Nutch 2.3.1+ Hbase + Hadoop + Solr 单机指南(二)