如何在 Ubuntu 14.04 上安装 Solr

介绍

Solr 是一个基于 Apache Lucene 的搜索引擎平台,用 Java 编写,并使用 Lucene 库实现索引,可以使用各种 REST API (例如 XML 和 JSON) 访问。

  • 先进的全文本搜索功能
  • 优化用于高量网页流量
  • 基于标准的开放接口 - 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。 如果您想安装自定义版本,请参阅 本文。 如果您想要一个简单的安装,请执行以下命令:

1sudo apt-get -y install openjdk-7-jdk
2mkdir /usr/java
3ln -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 但与 Jetty 网页服务器一样。

1sudo apt-get -y install solr-tomcat

您的 Solr 实例现在应该在 http://YOUR_IP:8080/solr. 如果您想配置 Solr,请跳过下一节手动安装。

手动安装Solar

要手动安装Solr,您需要更多的时间,首先,我们应该安装Java JDK。如果您想安装自定义版本,请参阅 本文.对于本节,我们将使用Jetty而不是Tomcat。

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

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

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

当它工作时,回到您的SSH会话并用Ctrl+C关闭窗口,然后打开/etc/default/jetty文件(nano /etc/default/jetty)并粘贴到其中:

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

保存它,打开文件 /opt/solr/etc/jetty-logging.xml(nano /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

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

1sudo 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
2sudo chmod a+x /etc/init.d/jetty
3sudo update-rc.d jetty defaults

最后启动 Jetty/Solr:

sudo /etc/init.d/jetty启动

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

如何为 Solr 配置 schema.xml

首先,将/opt/solr/solr/collection1重新命名为可以理解的名称,如苹果(使用任何你想要的名称)。(**如果您使用apt-get安装了它,可以跳过这个名称。**在这种情况下,您可以执行以下命令:cd /usr/share/solr):

cd /opt/solr/solr mv1 苹果 cd 苹果

此外,如果您手动安装了 Solr,请打开 core.properties 文件(nano core.properties)并将其更名为相同名称。

然后,删除数据目录并更改 schema.xml:

rm -R 数据 nano conf/schema.xml

插入自己的 schema.xml 在这里. 在 Solr 存储库中有一个非常先进的 schema.xml。你可能可以在互联网上找到更多,但我不会深入了解这一点。

对于简单的安装。

1sudo service tomcat6 restart

对于先进的安装。

1sudo /etc/init.d/jetty restart

当您现在访问您的 Solr 实例时,您应该在某个地方看到集合的仪表板。

结论

您现在已经成功安装了 Solr 并可以开始为自己的网站使用它! 如果您不知道如何创建 schema.xml,请找到有关如何做到这一点的教程。

Submitted by: Koen Vlaswinkel
Published At
Categories with 技术
Tagged with
comments powered by Disqus