NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(三)
Precondition:
hadoop 2.7.1
hbase 0.98.13
solr 5.2.1 / Apache Solr 4.8.1
http://archive.apache.org/dist/lucene/solr/4.8.1/
gora 0.6.1
gora编译和Nutch编译部署
1. Gora下载
最新版本号呢gora是0.6.1,下载或者直接通过git获取 git clonehttps://github.com/apache/gora.git
2. 改动gora pom.xml
下面可能是Nutch2.3能终于执行的关键。没有1.0.1.1-hadoop2:)
<hadoop-1.version>1.2.1</hadoop-1.version>
<hadoop-2.version>2.7.1</hadoop-2.version>
<hadoop-1.test.version>1.2.1</hadoop-1.test.version>
<hadoop-2.test.version>2.7.1</hadoop-2.test.version>
<hbase.version>0.98.13-hadoop2</hbase.version>
<hbase.test.version>0.98.13-hadoop2</hbase.test.version>
3. 编译gora
mvn clean install -DskipTests
mvn install -DskipTests
4. 改动$NUTCH_HOME/conf/nutch-site.xml
<configuration>
<property>
<name>storage.data.store.class</name>
<value>org.apache.gora.hbase.store.HBaseStore</value>
<description>Default class for storing data</description>
</property>
<property>
<name>http.agent.name</name>
<value>My Nutch Spider</value>
</property>
<property>
<name>plugin.includes</name>
<value>protocol-httpclient|urlfilter-regex|parse-(html|tika)|index-(basic|anchor)|indexer-solr|scoring-opic|urlnormalizer-(pass|regex|basic)</value>
</property>
</configuration>
5. 改动$NUTCH_HOME/ivy/ivy.xml
全部"org.apache.gora"涉及到的rev改动为0.6。比如:
<dependency org="org.apache.gora" name="gora-hbase" rev="0.5" conf="*->default" /> =>
<dependency org="org.apache.gora" name="gora-hbase" rev="0.6" conf="*->default" />
删除"org.apache.hadoop"。加入:
<dependency org="org.apache.hadoop" name="hadoop-client" rev="2.7.1" conf="*->default"/>
6.改动$NUTCH_HOME/ivy/ivysettings.xml
<ivysettings>
<settings defaultResolver="default"/>
<property name="m2-pattern" value="${user.home}/.m2/repository/[organisation]/[module]/[revision]/[module]-[revision](-[classifier]).[ext]" override="false" />
<resolvers>
<chain name="default">
<filesystem name="local-maven2" m2compatible="true" >
<artifact pattern="${m2-pattern}"/>
<ivy pattern="${m2-pattern}"/>
</filesystem>
<ibiblio name="central" m2compatible="true"/>
</chain>
</resolvers>
</ivysettings>
7. $NUTCH_HOME/conf/gora.properties 加入
gora.datastore.default=org.apache.gora.hbase.store.HBaseStore
8. 依据须要改动 $NUTCH_HOME/conf/regex-urlfilter.txt $NUTCH_HOME/conf/nutch-default.xml
能够不用改
9. 编译。要非常长时间
ant runtime
10. 将gora以下的hadoop*.jar复制到runtime/local/lib/
cp /disk/gora/gora-core/lib/hadoop* /disk2/nutch/nutch-2.3/runtime/local/lib/
11. 建立搜索url
mkdir urls
echo http://nutch.apache.org/ >> urls/seek.txt
12. 測试执行
cd runtime/local/
bin/nutch inject urls/seek.txt
solr5.2.1 部署执行
1. 下载解压
2. example/example-DIH 包括了完整的solr home配置,复制到server/solr
cp -rf /disk2/solr/solr-5.2.1/example/example-DIH/solr/* /disk2/solr/solr-5.2.1/server/solr/
3. 解决Nutch执行中可能遇到的Error
404: Prob accessing /solr/solr/update. Reason: Not Found
cd /disk2/solr/solr-5.2.1/server/solr
cp /disk2/solr/solr-5.2.1/example/exampledocs/monitor.xml .
curl http://127.0.0.1:8983/solr/solr/update --data-binary
@monitor.xml -H 'Content-type:application/xml'
3. 为nutch crawl执行。还要改动/disk2/solr/solr-5.2.1/server/solr/solr/conf/schema.xml。加上:
<field name="host" type="string" stored="false" indexed="true"/>
<field name="site" type="string" stored="false" indexed="true"/>
<field name="cache" type="string" stored="true" indexed="false"/>
<field name="digest" type="string" stored="true" indexed="false"/>
<field name="segment" type="string" stored="true" indexed="false"/>
<field name="boost" type="float" stored="true" indexed="false"/>
<field name="tstamp" type="date" stored="true" indexed="false"/>
<field name="stamp" type="date" stored="true" indexed="false"/>
<field name="anchor" type="string" stored="true" indexed="true" multiValued="true"/>
4. bin/solr start
5. http://192.168.1.106:8983/solr
6. bin/crawl urls/seek.txt TestCrawl http://192.168.1.106:8983/solr/solr
2
FAQ
以下是过程中遇到的让人愤慨的。。。
1. 错误: 找不到或无法载入主类 org.apache.nutch.crawl.InjectorJob:
没有ant runtime
2. Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguration
nutch2.3 须要使用hbase 0.98.13 的几个hbase-comm*.jar / hbase-client*.jar / hbase-protocol*.jar。千万不要用hbase1.0.1.1的。
cd /disk2/hbase/hbase-0.98.13-hadoop2/lib
cp hbase-common* /disk2/nutch/nutch-2.3/runtime/local/lib/
cp hbase-client-0.98.13-hadoop2.jar /disk2/nutch/nutch-2.3/runtime/local/lib/
cp hbase-protocol* /disk2/nutch/nutch-2.3/runtime/local/lib/
3. Exception in thread "main" java.lang.NoSuchFieldError: HBASE_CLIENT_PREFETCH_LIMIT
原因同上。hbase 和 nutch不匹配
4. 2015-07-21 13:53:53,238 WARN util.NativeCodeLoader - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
就让他native好了
mkdir -p /disk2/nutch/nutch-2.3/runtime/local/lib/native/Linux-amd64-64/
cd /disk2/hadoop/hadoop-2.7.1/lib/native/
cp * /disk2/nutch/nutch-2.3/runtime/local/lib/native/Linux-amd64-64/
cp * /disk2/nutch/nutch-2.3/runtime/local/lib/native/
NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(三)的更多相关文章
- NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(二)
Precondition: hadoop 2.7.1 hbase 1.0.1.1 / hbase 0.98.13 192.168.1.106 ->master 192.168.1.105 ...
- NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(一)
Precondition: hadoop 2.7.1 Nutch 2.3 hbase 1.0.1.1 / hbase 0.98.13 solr 4.8.1 Linux version 3.16. ...
- hadoop2.6.0 + hbase-1.0.0 伪分布配置
1 基本配置 主机名: 192.168.145.154 hadoop2 ======= 2 etc/hadoop下文件配置 1)core-site.xml <configuration> ...
- Hadoop2.7.5+Hbase1.4.0完全分布式
Hadoop2.7.5+Hbase1.4.0完全分布式一.在介绍完全分布式之前先给初学者推荐两本书:<Hbase权威指南>偏理论<Hbase实战>实战多一些 二.在安装完全分布 ...
- Ubuntu 14.10 下ZooKeeper+Hadoop2.6.0+HBase1.0.0 的HA机群高可用配置
1 硬件环境 Ubuntu 14.10 64位 2 软件环境 openjdk-7-jdk hadoop 2.6.0 zookeeper-3.4.6 hbase-1.0.0 3 机群规划 3.1 zoo ...
- mac下安装伪分布hadoop2.6.0和hbase1.0.1.1
1.安装JDK,我安装的是java1.7 2.创建管理员账户 3.安装ssh服务(如果已有跳过此步) 4.ssh无密码验证登陆 以上过程略,可参考ubuntu下安装hadoop一文. 5.下载并解压h ...
- Hadoop2.7.3+HBase1.2.5+ZooKeeper3.4.6搭建分布式集群环境
Hadoop2.7.3+HBase1.2.5+ZooKeeper3.4.6搭建分布式集群环境 一.环境说明 个人理解:zookeeper可以独立搭建集群,hbase本身不能独立搭建集群需要和hadoo ...
- hadoop: hbase1.0.1.1 伪分布安装
环境:hadoop 2.6.0 + hbase 1.0.1.1 + mac OS X yosemite 10.10.3 安装步骤: 一.下载解压 到官网 http://hbase.apache.org ...
- HBase1.0以上版本的API改变
HBase1.0以上版本已经废弃了 HTableInterface,HTable,HBaseAdmin等API的使用,新增了一些API来实现之前的功能: Connectioninterface: Co ...
随机推荐
- git从远程仓库中更新代码到本地仓库
git从远程仓库中更新代码到本地仓库 有时候在使用git pull的时候,会莫名才报错.查了很多资料,尝试过git的很多命令.包括git fetch命令,都会报同样的错.最后终于发现了一条捷径,由网友 ...
- DP【p2051(bzoj 1801)】 [AHOI2009]中国象棋.
题目描述 这次小可可想解决的难题和中国象棋有关,在一个N行M列的棋盘上,让你放若干个炮(可以是0个),使得没有一个炮可以攻击到另一个炮,请问有多少种放置方法.大家肯定很清楚,在中国象棋中炮的行走方式是 ...
- First Missing Positive -- LeetCode
Given an unsorted integer array, find the first missing positive integer. For example,Given [1,2,0] ...
- JDK内置性能监测工具使用
Java自带的性能监测工具用法简介——jstack.jconsole.jinfo.jmap.jdb.jsta.jvisualvmJDK内置工具使用 一.javah命令(C Header and Stu ...
- Java 继承问题 -- 子类是否继承父类的私有属性
理解一: 子类会继承父类的所有属性和方法,至于能不能直接访问,那就是访问权限的问题了. 例如:父类有个private String name; 属性.子类会继承下来,但子类访问不了,因为是privat ...
- 墨卡托投影、高斯-克吕格投影、UTM投影及我国分带方法
转自原文 墨卡托投影.高斯-克吕格投影.UTM投影及我国分带方法 一.墨卡托投影.高斯-克吕格投影.UTM投影 1. 墨卡托(Mercator)投影 墨卡托(Mercator)投影,是一种" ...
- Ubuntu 16.04 -- 同时配置Nginx(转发)和frp(内网映射)和HTTPS(ca加密) - 端口转发
Ubuntu16.04下: sudo apt -get nginx 用这条命令安装完nginx之后, nginx在该目录下: 然后配置nginx: 如下: 红圈圈住的地方多写几个可以做负载均衡. 端口 ...
- Android AIDL实例解析
AIDL这项技术在我们的开发中一般来说并不是很常用,虽然自己也使用新浪微博的SSO登录,其原理就是使用AIDL,但是自己一直没有动手完整的写过AIDL的例子,所以就有了这篇简单的文章. AIDL(An ...
- SpannableString 转换局部字体大小,但在EditText测量之前设置内容,测量高度为,字体变小之前的高度
public void setHint(@NonNull String hint, @Nullable CharSequence subHint) { this.hint = hint; if (su ...
- 控制面板cpl大全
ALSNDMGR.CPL AC97 Audio组态设定appwiz.cpl 添加和删除程序bthprops.cpldesk.cpl 显示属性firewall.cpl Windows防火墙hdwwi ...