如何在Ubuntu 14.04上安装和配置Solr 5.5
什么是Apache Solr? Apache Solr是一个用Java编写的开源企业级搜索平台,可以让您创建自定义搜索引擎来索引数据库,文件和网站。 它具有Apache Lucene的后端支持。 它可以例如用于在多个网站中进行搜索,并可以显示搜索内容的建议。 Solr使用基于XML(可扩展标记语言)的查询和结果语言。 有可用于Python,Ruby和JSON(Javascript对象符号)的API(应用程序接口)。
Solr提供的其他一些功能包括:
- 全文检索。
- 代码段生成和突出显示。
- 自定义文件订购/排名。
- 拼写建议
本教程将向您介绍如何在Ubuntu 14.04 LTS上安装最新的Solr版本。 这些步骤很可能与以后的Ubuntu版本一起使用。
更新系统
使用非root用户登录Ubuntu服务器。 通过这个用户,你将不得不执行所有的步骤,然后使用Solr。
要更新系统,请执行以下命令以使用最新的修补程序和更新来更新系统。
sudo apt-get update && apt-get upgrade -y
设置Java运行时环境
Solr是一个Java应用程序,因此需要首先安装Java运行时环境才能设置Solr。
我们必须安装Python软件属性才能安装最新的Java 8.运行以下命令来安装软件。
sudo apt-get install python-software-properties
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
python-pycurl
Suggested packages:
libcurl4-gnutls-dev python-pycurl-dbg
The following NEW packages will be installed:
python-pycurl python-software-properties
0 upgraded, 2 newly installed, 0 to remove and 7 not upgraded.
Need to get 67.5 kB of archives.
After this operation, 358 kB of additional disk space will be used.
Do you want to continue? [Y/n]
按Y继续。
执行该命令后,通过运行以下命令,将webupd8team Java PPA存储库添加到系统中:
sudo add-apt-repository ppa:webupd8team/java
请求时按[ENTER]。 现在,您可以使用apt轻松安装最新版本的Java 8。
首先更新包列表以从新的PPA获取可用包:
sudo apt-get update
然后使用以下命令安装最新版本的Oracle Java 8:
sudo apt-get install oracle-java8-installer
Reading package lists... Done
Building dependency tree
...........................................
After this operation, 19.1 MB of additional disk space will be used.
Do you want to continue? [Y/n]
按Y继续。
如果要使用Oracle JDK,请单击确定按钮,您必须同意http://java.com/license中的许可证。
该软件包安装了一种元安装程序,然后直接从Oracle下载二进制文件。 安装完成后,通过运行以下命令检查安装的Java版本
java -version
java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)
现在你已经安装了Java 8,我们将转到下一步。
安装Solr应用程序
Solr可以以不同的方式安装在Ubuntu上,在本文中,我将向您展示如何从源安装最新的软件包。
我们将从下载Solr发行版开始。 首先从他们的网页找到可用包的最新版本,复制链接并使用wget命令下载
例如我们将使用http://www.us.apache.org/dist/lucene/solr/5.5.0
cd /tmp
wget http://www.us.apache.org/dist/lucene/solr/5.5.0/solr-5.5.0.tgz
wget http://www.us.apache.org/dist/lucene/solr/5.5.0/solr-5.5.0.tgz
--2016-02-26 22:21:37-- http://www.us.apache.org/dist/lucene/solr/5.5.0/solr-5.5.0.tgz
Resolving www.us.apache.org (www.us.apache.org)... 140.211.11.105
Connecting to www.us.apache.org (www.us.apache.org)|140.211.11.105|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 136758069 (130M) [application/x-gzip]
Saving to: ‘solr-5.5.0.tgz’
现在,运行以下命令提取服务安装文件:
tar xzf solr-5.5.0.tgz solr-5.5.0/bin/install_solr_service.sh --strip-components=2
并使用脚本安装Solr作为服务:
sudo ./install_solr_service.sh solr-5.5.0.tgz
输出将类似于:
sudo ./install_solr_service.sh solr-5.5.0.tgz
id: solr: no such user
Creating new user: solr
Adding system user `solr' (UID 114) ...
Adding new group `solr' (GID 123) ...
Adding new user `solr' (UID 114) with group `solr' ...
Creating home directory `/var/solr' ...
Extracting solr-5.5.0.tgz to /opt
Installing symlink /opt/solr -> /opt/solr-5.5.0 ...
Installing /etc/init.d/solr script ...
Installing /etc/default/solr.in.sh ...
Adding system startup for /etc/init.d/solr ...
/etc/rc0.d/K20solr -> ../init.d/solr
/etc/rc1.d/K20solr -> ../init.d/solr
/etc/rc6.d/K20solr -> ../init.d/solr
/etc/rc2.d/S20solr -> ../init.d/solr
/etc/rc3.d/S20solr -> ../init.d/solr
/etc/rc4.d/S20solr -> ../init.d/solr
/etc/rc5.d/S20solr -> ../init.d/solr
Waiting up to 30 seconds to see Solr running on port 8983 [-]
Started Solr server on port 8983 (pid=3288). Happy searching!
Found 1 Solr nodes:
Solr process 3288 running on port 8983
{
"solr_home":"/var/solr/data",
"version":"5.5.0 2a228b3920a07f930f7afb6a42d0d20e184a943c - mike - 2016-02-16 15:22:52",
"startTime":"2016-02-26T17:02:13.127Z",
"uptime":"0 days, 0 hours, 0 minutes, 17 seconds",
"memory":"58.6 MB (%11.9) of 490.7 MB"}
Service solr installed.
使用此命令检查服务的状态
service solr status
你应该看到一个从这开始的输出:
Found 1 Solr nodes:
Solr process 3288 running on port 8983
{
"solr_home":"/var/solr/data",
"version":"5.5.0 2a228b3920a07f930f7afb6a42d0d20e184a943c - mike - 2016-02-16 15:22:52",
"startTime":"2016-02-26T17:02:13.127Z",
"uptime":"0 days, 0 hours, 1 minutes, 32 seconds",
"memory":"61.4 MB (%12.5) of 490.7 MB"}
创建Solr搜索集合:
使用Solr,我们可以创建多个集合。 运行给定的命令,提到集合的名称(这里是startstarted)并指定其配置。
sudo su - solr -c "/opt/solr/bin/solr create -c gettingstarted -n data_driven_schema_configs"
Copying configuration to new core instance directory:
/var/solr/data/gettingstarted
Creating new core 'gettingstarted' using command:
http://localhost:8983/solr/admin/cores?action=CREATE&name=gettingstarted&instanceDir=gettingstarted
{
"responseHeader":{
"status":0,
"QTime":5268},
"core":"gettingstarted"}
我们的第一个集合的新核心目录已创建。 要查看默认模式文件,请执行以下操作:
'/ opt / solr / server / solr / configsets / data_driven_schema_configs / conf'。
使用Solr Web界面
Apache Solr现在可以在默认端口上访问,这是8983.管理界面应该可以访问http:// your_server_ip : 8983 / solr。 您的防火墙应允许该端口运行链接。
例如:
http://192.168.1.105:8983/solr/
要查看我们之前创建的第一个集合的详细信息,请在左侧菜单中选择“getstarted”集合。
选择“收藏”集合后,选择左侧菜单中的“文档”。 在那里,您可以输入可以由Solr搜索的JSON格式的实际数据。 要添加更多数据,请将以下示例复制并粘贴到“文档”字段中:
{
"id": 1,
"book_title": "My First Book",
"published": 1985,
"description": "All about Linux"
}
添加数据后点击提交文档按钮。
Status: success
Response:
{
"responseHeader": {
"status": 0,
"QTime": 606
}
}
现在我们可以点击左边的查询 ,然后点击执行 查询 ,
我们会看到这样的东西:
Query Output
{
"responseHeader": {
"status": 0,
"QTime": 66,
"params": {
"q": "*:*",
"indent": "true",
"wt": "json",
"_": "1456507717668"
}
},
"response": {
"numFound": 1,
"start": 0,
"docs": [
{
"id": "1",
"book_title": [
"My First Book"
],
"published": [
1985
],
"description": [
"All about Linux"
],
"_version_": 1527258892658016300
}
]
}
}
结论
在Ubuntu上成功安装Solr Web界面后,您可以使用Solr API和Web Interface插入数据或查询数据。