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은 단독으로 작동하지 않습니다. Tomcat 또는 Jetty와 같은 Java 서블릿 컨테이너가 필요합니다. 이 기사에서는 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
우분투는 기본적으로 3개의 Solr 패키지를 제공합니다: 실제 Solr 코드를 포함하는 패키지인 solr-common
; solr-tomcat
, Tomcat과 통합된 Solr; 및 solr-jetty
는 solr-tomcat
과 같지만 Jetty 웹 서버가 있습니다. 이 문서에서는 solr-tomcat
을 설치하므로 다음 명령을 실행합니다.
sudo apt-get -y install solr-tomcat
이제 Solr 인스턴스를 http://YOUR_IP:8080/solr
에서 사용할 수 있습니다. Solr를 구성하려면 수동 설치에 대한 다음 섹션을 건너뛰십시오.
수동으로 Solr 설치
Solr를 수동으로 설치하려면 시간이 조금 더 필요합니다. 먼저 Java JDK를 설치해야 합니다. 사용자 정의 버전을 설치하려면 이 문서를 참조하십시오. 이 섹션에서는 Tomcat 대신 Jetty를 사용합니다. 간단한 설치를 원하시면 다음 명령을 실행하십시오.
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.xml
(nano /opt/solr/etc/jetty-logging.xml
)을 열고 다음을 붙여넣습니다. 그것에:
<예비>
<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
의 이름을 apples와 같이 이해할 수 있는 이름으로 변경합니다(원하는 이름 사용). (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을 여기에 붙여넣으십시오. Solr Repository에는 매우 발전된 schema.xml이 있습니다. 아마 인터넷에서 더 많은 것을 찾을 수 있을 것입니다. 하지만 그것에 대해 깊이 들어가지는 않겠습니다. Jetty/Tomcat을 다시 시작합니다.
간단한 설치용.
sudo service tomcat6 restart
고급 설치용.
sudo /etc/init.d/jetty restart
이제 Solr 인스턴스를 방문하면 어딘가에 컬렉션이 있는 대시보드가 표시됩니다.
결론
이제 Solr를 성공적으로 설치했으며 자신의 사이트에서 사용할 수 있습니다! schema.xml을 만드는 방법을 모르는 경우 만드는 방법에 대한 자습서를 찾으십시오. 그런 다음 Solr과 연결되는 프로그래밍 언어용 라이브러리를 찾으십시오.