如何在Ubuntu 14.04安装的Solr

介绍

Solr是基于Apache Lucene的搜索引擎平台。 它是用Java编写的,并使用Lucene库来实现索引。 它可以使用各种REST API(例如XML和JSON)访问。 这是从功能列表他们的网站

  • 高级全文搜索能力
  • 针对大量Web流量进行了优化
  • 基于标准的开放接口 - XML,JSON和HTTP
  • 全面的HTML管理界面
  • 通过JMX公开的服务器统计信息进行监视
  • 线性可扩展,自动索引复制,自动故障转移和恢复
  • 近实时索引
  • 灵活和适应性与XML配置
  • 可扩展插件架构

在本文中,我将向您展示如何使用两种不同的方法在Ubuntu上安装Solr。 第一个是简单的方法,第二个是更先进的方法。 我推荐第二种方法,因为它在所有Ubuntu版本上安装了较新版本的Solr,即使在最新版本14.04中也是如此。

使用apt-get安装Solr(简单方法)

如果你想安装Solr的简单方法,你应该使用本文的这一部分。 Solr不单独工作; 它需要一个Java servlet容器,如Tomcat或Jetty。 在本文中,我们将使用Jetty,虽然Tomcat也很容易。 首先,我们应该安装Java JDK。 如果你想安装一个定制版本,请参阅这篇文章 如果要进行简单安装,请执行以下命令:

sudo apt-get -y install openjdk-7-jdk
mkdir /usr/java
ln -s /usr/lib/jvm/java-7-openjdk-amd64 /usr/java/default

Ubuntu的默认提供了3个包的Solr: solr-common ,包含实际Solr的代码包, solr-tomcat ,集成的Solr使用Tomcat; solr-jetty ,这就像solr-tomcat ,但与码头Web服务器。 在本文中,我们将安装solr-tomcat ,所以执行以下命令:

sudo apt-get -y install solr-tomcat

您Solr的实例现在应该可以在http://YOUR_IP:8080/solr 如果要配置Solr,请跳过下一部分手动安装。

手动安装Solr

要手动安装Solr,您将需要更多的时间。 首先,我们应该安装Java JDK。 如果你想安装一个定制版本,请参阅这篇文章 对于本节,我们将使用Jetty而不是Tomcat。 如果要进行简单安装,请执行以下命令:

sudo apt-get -y install openjdk-7-jdk
mkdir /usr/java
ln -s /usr/lib/jvm/java-7-openjdk-amd64 /usr/java/default

我们现在可以开始真正安装Solr。 首先,下载所有文件并解压缩它们:

cd /opt
wget http://archive.apache.org/dist/lucene/solr/4.7.2/solr-4.7.2.tgz
tar -xvf solr-4.7.2.tgz
cp -R solr-4.7.2/example /opt/solr
cd /opt/solr
java -jar start.jar

检查是否正常工作访问http://YOUR_IP:8983/solr 工作时,回到您的SSH会话,并用Ctrl + C关闭窗口。 然后打开/etc/default/jetty文件( nano /etc/default/jetty ),并粘贴到它:

NO_START=0 # Start on boot
JAVA_OPTIONS="-Dsolr.solr.home=/opt/solr/solr $JAVA_OPTIONS"
JAVA_HOME=/usr/java/default
JETTY_HOME=/opt/solr
JETTY_USER=solr
JETTY_LOGS=/opt/solr/logs

保存并打开文件/opt/solr/etc/jetty-logging.xmlnano /opt/solr/etc/jetty-logging.xml )并粘贴到它:

<?xml version="1.0"?>
  <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
  <!-- =============================================================== -->
  <!-- Configure stderr and stdout to a Jetty rollover log file -->
  <!-- this configuration file should be used in combination with -->
  <!-- other configuration files.  e.g. -->
  <!--    java -jar start.jar etc/jetty-logging.xml etc/jetty.xml -->
  <!-- =============================================================== -->
  <Configure id="Server" class="org.mortbay.jetty.Server">

      <New id="ServerLog" class="java.io.PrintStream">
        <Arg>
          <New class="org.mortbay.util.RolloverFileOutputStream">
            <Arg><SystemProperty name="jetty.logs" default="."/>/yyyy_mm_dd.stderrout.log</Arg>
            <Arg type="boolean">false</Arg>
            <Arg type="int">90</Arg>
            <Arg><Call class="java.util.TimeZone" name="getTimeZone"><Arg>GMT</Arg></Call></Arg>
            <Get id="ServerLogName" name="datedFilename"/>
          </New>
        </Arg>
      </New>

      <Call class="org.mortbay.log.Log" name="info"><Arg>Redirecting stderr/stdout to <Ref id="ServerLogName"/></Arg></Call>
      <Call class="java.lang.System" name="setErr"><Arg><Ref id="ServerLog"/></Arg></Call>
      <Call class="java.lang.System" name="setOut"><Arg><Ref id="ServerLog"/></Arg></Call></Configure>

然后,创建Solr用户并授予其权限:

sudo useradd -d /opt/solr -s /sbin/false solr
sudo chown solr:solr -R /opt/solr

之后,下载启动文件并将其设置为自动启动,如果尚未完成:

sudo wget -O /etc/init.d/jetty http://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty/trunk/jetty-distribution/src/main/resources/bin/jetty.sh
sudo chmod a+x /etc/init.d/jetty
sudo update-rc.d jetty defaults

最后启动Jetty / Solr:

sudo /etc/init.d/jetty start

您现在可以像以前一样访问您的安装http://YOUR_IP:8983/solr

为Solr配置schema.xml

首先,重命名/opt/solr/solr/collection1像苹果可以理解的名称(用自己喜欢的任意名称)。 如果使用安装了这个可以跳过apt-get在这种情况下,可以执行下面的命令,而不是cd /usr/share/solr ):

cd /opt/solr/solr
mv collection1 apples
cd apples

另外,如果你手动安装的Solr,打开文件core.properties( nano core.properties ),并更改名称相同的名称。

然后,删除data目录,并修改schema.xml中:

rm -R data
nano conf/schema.xml

在此处粘贴您自己的schema.xml。 有一个在一个非常先进的schema.xml中Solr的存储库 你可以在互联网上找到更多的他们,但我不会深入了解。 重新启动Jetty / Tomcat:

用于简单安装。

sudo service tomcat6 restart

用于高级安装。

sudo /etc/init.d/jetty restart

当您现在访问您的Solr实例时,您应该看到包含集合的仪表板。

结论

您现在已成功安装Solr,并可开始将其用于您自己的网站! 如果你不知道如何做一个schema.xml,找到一个教程如何做。 然后,找到与Solr连接的编程语言的库。

:提交公园Vlaswinkel
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏