博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python3.4.4+solr5.5+hadoop2.6.3 Linux
阅读量:4886 次
发布时间:2019-06-11

本文共 7472 字,大约阅读时间需要 24 分钟。

1.通过python编写爬虫,数据存储到hdfs当中

2.通过solr在hdfs当中建立索引并实现全文检索功能

好了,正文开始了!

一,环境搭建

0.centOS6.6 安装及配置

1.python3.4.4安装及环境变量配置

2.hadoop2.6.3安装及环境变量配置

3.solr5.5安装及配置()

4.solr5.5+hdfs配置

正文

0.centOS6.6 安装及配置

安装3台虚拟机

 1.安装完centOS后,第一件事:记得用root用户

yum update

 2.pdsh 安装:pdsh是一款管理集群的小工具

tar -xjvf pdsh-2.26.tar.bz2cd pdsh-2.26./configure --with-ssh --with-dshgoups --with-machines=/etc/dsh/machinesmake && make install pdsh -V

打印pdsh版本及安装完成!

 3.在每台虚拟机上修改hosts文件添加以下内容(/etc/hosts)

192.168.1.131 master192.168.1.132 slave1192.168.1.133 slave2

2.hadoop2.6.3安装及环境变量配置

1.解压hadooptar –xvzf hadoop-2.6.3.tar.gz

2.设置环境变量,在~/.bash_profile添加以下内容:

#hadoopexport HADOOP_YARN_USER=hadoopexport HADOOP_HOME=/software/hadoop-2.6.3export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATHexport HADOOP_YARN_HOME=$HADOOP_HOMEexport HADOOP_MAPRED_HOME=$HADOOP_HOMEexport HADOOP_CONF_DIR = $HADOOP_HOME/etc/hadoopexport LD_LIBRARY_PATH=$HADOOP_HOME/lib/native:$LD_LIBRARY_PATH

 

使环境生效,执行source ~/.bash_profile

3.设置所有者:

chown -R hadoop:hadoop hadoop-2.6.3

4.修改hadoop配置文件

首先在’/’目录下建立文件夹:hadoophadoop/namehadoop/tmphadoop/dfshadoop/dfs/namehadoop/dfs/data

设置文件夹所有者为hadoopY

①配置文件路径:/software/hadoop-2.6.3/etc/hadoop/hadoop-env.sh

export JAVA_HOME=/software/jdk1.8.0_91

②配置文件路径:/software/hadoop-2.6.3/etc/hadoop/core-site.xml

添加如下内容:

hadoop.tmp.dir
file:/hadoop/tmp
Abasefor other temporary directories.
fs.default.name
hdfs://master:9000
dfs.name.dir
file:/hadoop/name

 

③配置文件路径:/software/hadoop-2.6.3/etc/hadoop/hdfs-site.xml

添加如下内容:

dfs.namenode.secondary.http-address
master:9001
dfs.namenode.name.dir
file:/hadoop/dfs/name
dfs.datanode.data.dir
file:/hadoop/dfs/data
dfs.replication
3
dfs.webhdfs.enabled
true
dfs.permissions.enabled
false

 

④把配置文件/software/hadoop-2.6.3/etc/hadoop/mapred-site.xml重命名:mv mapred-site.xml.template mapred-site.xml

在配置文件mapred-site.xml添加如下内容:

 

mapreduce.framework.name
yarn
mapreduce.jobhistory.address
master:10020
mapreduce.jobhistory.webapp.address
master:19888

 

⑤修改配置文件:/software/hadoop-2.6.3/etc/hadoop/yarn-site.xml

添加以下内容:

 

yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
yarn.resourcemanager.address
master:8032
yarn.resourcemanager.scheduler.address
master:8030
yarn.resourcemanager.resource-tracker.address
master:8035
yarn.resourcemanager.admin.address
master:8033
yarn.resourcemanager.webapp.address
master:8088

⑥修改配置文件:/software/hadoop-2.6.3/etc/hadoop/slaves

localhost 删除,添加以下内容:

masterslave1slave2

5.同步配置到slave1slave2

scp -r hadoop/

scp -r hadoop/

6.启动hadoop集群

 ①格式化一个新的分布式文件系统:

$ bin/hadoop namenode -format

 ②运行hadoop:

执行命令./start-all.sh启动hadoop

 启动完成之后查看master slave1slave2 的状态

[hadoop@master ~]$ jps3297 NodeManager2897 DataNode4769 Jps3205 ResourceManager2807 NameNode3070 SecondaryNameNode
[hadoop@slave1 ~]$ jps2593 DataNode3261 Jps[hadoop@slave1 ~]$
[hadoop@slave2 ~]$ jps3376 Jps2612 DataNode[hadoop@slave2 ~]$

 

7.进行环境测试

 输入hadoop fs -mkdir /tmp

 输入hadoop fs -ls /

 

如何显示如上图结果,及环境搭建完成!

4.solr5.5+hdfs配置

 1. 下载tomcat9 及solr5.5

 2.解压tomcat9级solr5.5  存放路径为tomcat9:/usr/local/solr/tomcat9

                   solr5.5:/usr/local/solr/solr-5.5.0

 3.在tomcat的webapps中新建文件夹solr

mkdir solr

把solr-5.5.0\server\solr-webapp\webapp目录下的文件全部复制进来 

cd /usr/local/solr/solr-5.5.0/server/solr-webapp/webapp/ cp -r * /usr/local/solr/tomcat9/webapps/solr/

 

4.在tomcat9的WEB-INF文件下新建classes文件夹,把solr-5.5.0\server\resources\log4j.properties复制到classes文件夹里,这样才能看到solr的日志。

cd /usr/local/solr/tomcat9/webapps/solr/WEB-INF/ mkdir classes cp /usr/local/solr/solr-5.5.0/server/resources/log4j.properties /usr/local/solr/tomcat9/webapps/solr/WEB-INF/classes/

 5.修改 WEB-INF/web.xml

solr/home
/usr/local/solr/solr_home
java.lang.String
在/usr/local/solr/目录下执行
mkdir solr_home

 6.把 solr-5.5.0\server\lib\ext 下的jar包全部复制到 WEB-INF/lib目录下

cp /usr/local/solr/solr-5.5.0/server/lib/ext/*.jar /usr/local/solr/tomcat9/webapps/solr/WEB-INF/lib/

 7.在solr_home(WEB-INF/web.xml指定的目录)中创建一个core_sea(名字随意),core1中创建两个文件夹,data,conf。

mkdir core_sea mkdir core_sea/data mkdir core_sea/conf

把 solr-5.5.0\server\solr\configsets\basic_configs\conf 里边的文件全部复制到 新建的conf文件下。

cp -r /usr/local/solr/solr-5.5.0/server/solr/configsets/basic_configs/conf/* /usr/local/solr/solr_home/core_sea/conf/

把solr-5.5.0\server\solr\solr.xml复制到solr_home目录下。

cp /usr/local/solr/solr-5.5.0/server/solr/solr.xml  /usr/local/solr/solr_home/

 

 8.结束,启动tomcat, 输入http://localhost:8080/solr/index.html 。访问正常,即成功。

/usr/local/solr/tomcat9/bin# ./startup.sh

 

 可以看到 No cores available

没有关系,点击它,输入我们创建的core_sea,name与instanceDir均填写core_sea,其他不动,点击Add Core OK!

 4.solr5.5+hdfs配置

 1.打开solrconfig.xml

将以上代码替换如下:
hdfs://localhost:9000/solr
true
1
true
16384
true
true
16
192

非常重要的一点:

${solr.lock.type:native}
替换如下:
${solr.lock.type:hdfs}

2.配置hadoop hdfs的权限

配置:/usr/local/hadoop/hadoop-2.6.3/etc/hadoop/hdfs-site.xml

添加以下内容:

dfs.webhdfs.enabled
true
dfs.permissions.enabled
false

 

3.完成,重新启动solr,happy。

 

以下为建立索引前后的目录:

 

posted on
2016-05-20 09:04 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/sunjter/p/5510893.html

你可能感兴趣的文章
if语句三种形式
查看>>
正则表达式之字符串验证
查看>>
codeblocks如何支持_tmain?可移植代码的编码推荐
查看>>
省市联动 填坑
查看>>
canvas写的一个小时钟demo
查看>>
原来今天是冬至
查看>>
又混了一天班
查看>>
九度oj 1006
查看>>
HDU6400-2018ACM暑假多校联合训练1004-Parentheses Matrix-构造
查看>>
最短路问题专题
查看>>
《Redis复制与可扩展集群搭建》看后感
查看>>
Jquery Mobile总结
查看>>
223. Rectangle Area
查看>>
spring boot + velocity中文乱码解决方式
查看>>
ASP 32位程序运行与64位问题:ADODB.Connection 错误 '800a0ea9' 未指定提供程序,也没有指派的默认提供程序。...
查看>>
xcode-git笔记
查看>>
TCP和UDP的优缺点及区别
查看>>
MATLAB消除曲线毛刺Outlier Detection and Removal [hampel]
查看>>
【javascript学习——《javascript高级程序设计》笔记】DOM操作
查看>>
高效的SQL语句翻页代码
查看>>