[Nutch]Nutch2.3+Hadoop+HBase+Solr在Ubuntu环境搭建

Posted kandy_ye

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Nutch]Nutch2.3+Hadoop+HBase+Solr在Ubuntu环境搭建相关的知识,希望对你有一定的参考价值。

上一篇博文介绍了在Windows 10系统下用Cygwin搭建Nutch开发环境,本文将介绍在Ubuntu下Nutch2.3的开发环境的搭建。

1. 需要的软件及其版本

2. 系统环境准备

2.1 安装Ubuntu操作系统

基本要求,网上也有很多,自行安装,有问题可以留言。

2.2 单独新建一个kandy用户

useradd kandy

2.3 设置密码

passwd kandy

2.4 开启管理员权限

vi /etc/sudoers

增加一行:

hadoop ALL=(ALL) ALL

2.5 确保配置localhost地址映射到127.0.0.1

vi /etc/hosts

增加如下内容:

127.0.0.1 localhost

2.6 设置无密码登陆,至ssh localhost可以实现无密码登陆

2.6.1 产生密钥

使用如下命令:

ssh-keygen -t rsa

全部使用默认选项:
这里写图片描述

2.6.2 复制密钥

使用如下命令:

cp  .ssh/id_rsa.pub  .ssh/authorized_keys

2.6.3 验证

输入如下命令:

ssh localhost

2.7 确保已经安装JDK,并配置好JAVA_HOME环境变量,如:

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

3 安装hadoop 1.2.1

3.1 下载hadoop-1.2.1.tar.gz并解压到/usr/local/hadoop,修改目录权限:

sudo chmod 777 -R hadoop

3.2 创建/data/hadoop-data目录

3.3 修改./conf/core-site.xml配置如下:

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/data/hadoop-data/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

3.4 修改conf/hadoop-env.sh中的JAVA_HOME配置如下:

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

3.5 修改./conf/hdfs-site.xml配置如下:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

3.6 修改./conf/mapred-site.xml配置如下:

<configuration>
    <property>
        <name>mapred.job.tracker</name>
        <value>localhost:9001</value>
    </property>
</configuration>

3.7 配置环境变量

export HADOOP_PREFIX=/usr/local/hadoop/
export PATH=${HADOOP_PREFIX}/bin/:${PATH}

3.8 格式化namenode

hadoop namenode -format

3.9 启动hadoop

start-all.sh

3.10 检查hadoop是否正确启动

hadoop fs -ls /

3.11 tasktracker状态页面

http://localhost:50060/tasktracker.jsp
这里写图片描述

3.12 jobtracker状态页面

http://localhost:50030/jobtracker.jsp
这里写图片描述

3.13 datanode状态页面

http://localhost:50075
这里写图片描述

4 安装hbase 0.94.27

4.1 下载hbase-0.94.27.tar.gz并解压到/usr/local/hbase,修改目录权限

sudo chmod 777 -R hbase

4.2 创建目录/data/hbase/zookeeper/

4.3 修改./conf/hbase-env.sh中的JAVA_HOME配置如下

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

并开启:

export HBASE_MANAGES_ZK=true

4.4 修改./conf/hbase-site.xml

<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://localhost:9000/hbase</value>
    </property>
    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/data/hbase/zookeeper</value>
    </property>
</configuration>

4.5 删掉./lib/hadoop-core-1.0.4.jar并从hadoop拷贝

cp /usr/local/hadoop/hadoop-core-1.2.1.jar ./lib/

4.6 启动hbase

./bin/start-hbase.sh

4.7 检验hbase正确启动

执行./bin/hbase shell启动终端并执行list结果如下:

hbase(main):002:0> list
TABLE
0 row(s) in 0.0170 seconds
hbase(main):003:0>

4.8 hbase的Master状态页面

http://localhost:60010/master-status
这里写图片描述

5 安装nutch 2.3

5.1 下载apache-nutch-2.3-src.tar.gz并解压到/usr/local/nutch,修改目录权限

sudo chmod 777 -R nutch

52 修改./conf/gora.properties增加如下一行

gora.datastore.default=org.apache.gora.hbase.store.HBaseStore

5.3 修改./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|index-(basic|more)|query-(basic|site|url|lang)|indexer-solr|nutch-extensionpoints|protocol-httpclient|urlfilter-regex|parse-(text|html|msexcel|msword|mspowerpoint|pdf)|summary-basic|scoring-opic|urlnormalizer-(pass|regex|basic)protocol-http|urlfilter-regex|parse-(html|tika|metatags)|index-(basic|anchor|more|metadata)</value>
    </property>
</configuration>

5.4 修改./ivy/ivy.xml

将依赖的hadoop-core和hadoop-test的版本由1.2.0改为1.2.1
将gora-hbase依赖解除注释如下:

<dependency org=”org.apache.gora” name=”gora-hbase” rev=”0.5″ conf=”*->default” />

5.5 编译:ant

6 安装solr 4.9.1

6.1 下载solr-4.9.1.tar并解压到/usr/local/solr,修改目录权限

sudo chmod 777 -R solr

6.2 进入/usr/local/solr/example,覆盖nutch的schema.xml执行:

cp /usr/local/nutch/runtime/local/conf/schema.xml solr/collection1/conf/schema.xml

6.3 启动solr

java -jar start.jar

6.4 访问http://localhost:8983/solr/#/collection1/query查看solr页面

这里写图片描述

7 启动抓取并测试搜索效果

7.1 添加抓取URL

进到/usr/local/nutch/runtime/local目录,创建urls目录并创建url.txt文件内容为种子url,如:

http://www.cnbeta.com

7.2 执行

./bin/crawl urls TestCrawl http://localhost:8983/solr 2

7.3 查询

http://localhost:8983/solr/#/collection1/query检索可以看到结果
这里写图片描述

以上是关于[Nutch]Nutch2.3+Hadoop+HBase+Solr在Ubuntu环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(二)

软件Nutch2.3 + HBase 0.94 + Solr 搭建网络数据采集器

通过Nutch扩展点开发插件(添加自定义索引字段到solr)

全文索引-lucene,solr,nutch,hadoop之nutch与hadoop

nutch+hadoop 配置使用

[Nutch]Hadoop单机伪分布模式的配置