Elastic Search(이하 ES)는 설치는 아주 간단하다.

소스를 받아서 풀고, 실행만 시켜주면된다. 굳이 root권한도 필요 없었다.


소스를 다운 받는 방법은 아래를 참고하여 다운 받도록한다.

2017/02/28 - [linux] - ElasticSearch 5.1.1 한글형태소(kr_analize) 지원(동전한닢)


만일 한글형태소검색이 필요업다면, ES 버전에 제한없이 홈페이지에서 다운 받아도 무관한다.

(ES 홈페이지 : https://www.elastic.co/kr/)


다운받아서 tar 푸는 방법은 다 알것이기 때문에 추가 설명은 필요 없을 것이고.

만일 이 정도의 리눅스 상식이 없는 분이라면 ES 사용/운영은 어려울 것이다.

리눅스를 좀 더 공부하고, 재접근 하거나 주면지인의 도움을 받도록 하는것이 좋을것 같다.


나는 /app/local/ 밑에 풀었음.

가상환경이라 LVM을 사용하기 때문에 /usr/local 이런식으로 하지는 않앗고..

가상환경 예기는 나중에 기회가 되면 그때 보는걸로..


[was@DEV-SCOWAS01 elasticsearch-5.1.1]$ pwd

/app/local/elasticsearch-5.1.1

[was@DEV-SCOWAS01 elasticsearch-5.1.1]$ ll

합계 56

-rw-r--r--  1 was was 11358 2016-12-06 21:34 LICENSE.txt

-rw-r--r--  1 was was   150 2016-12-06 21:34 NOTICE.txt

-rw-r--r--  1 was was  9108 2016-12-06 21:34 README.textile

drwxr-xr-x  2 was was  4096 2017-03-22 14:03 bin

drwxr-xr-x  3 was was  4096 2017-03-22 14:03 config

drwxrwxr-x  3 was was  4096 2017-03-22 14:03 data

drwxr-xr-x  2 was was  4096 2016-12-06 21:39 lib

drwxr-xr-x  2 was was  4096 2017-03-22 14:03 logs

drwxr-xr-x 12 was was  4096 2016-12-06 21:39 modules

drwxr-xr-x  2 was was  4096 2016-12-06 21:39 plugins

[was@DEV-SCOWAS01 elasticsearch-5.1.1]$  



실행방법
데몬 형태(-d)로 띄워 주면된다.

bin/elasticsearch -d 

이후에 logs 폴더내에서 로그 파일을 보면서 디버깅을 하면된다.

아주 간단하다.


간혹 아래와 같이 오류 나는 경우가 있다.

Warning: Ignoring JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8

Please pass JVM parameters via ES_JAVA_OPTS instead

[was@DEV-SCOWAS01 bin]$ Exception in thread "main" java.lang.UnsupportedClassVersionError: org/elasticsearch/bootstrap/Elasticsearch : Unsupported major.minor version   .0

        at java.lang.ClassLoader.defineClass1(Native Method)

        at java.lang.ClassLoader.defineClass(ClassLoader.java:800)

.... 


이런 경우는 JAVA의 버전이 맞지 않기 때문이다.

1. ES는 JRE 1.8.x가 필요한데 1.7이나 1.6일 경우

2. $JAVA_HOME 의 경로와 $PATH에서의 경로가 다른 경우


이런 경우 시스템에서 하위버전(1.8 미만)을 사용하고 있기 때문에 JAVA_HOME을 함부로 변경 하기가 쉽지 않다.

ES를 구동할때만 JAVA 1.8을 사용하도록 수정 하자.

따라서,  bin/elasticsearch 파일을 열어서 JAVA_HOME 위치를 변경 하도록 한 줄을 추가 해주면 된다.


[was@DEV-SCOWAS01 elasticsearch-5.1.1]$ vi bin/elasticsearch

#!/bin/bash

.... 중략 ...

# Check to see if you are trying to run this without building it first. Gradle

# will replace the project.name with _something_.


JAVA_HOME=/app/local/jdk1.8.0_91


if echo 'distribution' | grep project.name > /dev/null ; then 


오늘은 여기까지 끝.





Elastic Search는 검색엔진이다.

기본적으로 한글 형태소가 지원되지 않아서

별도 한글형태소가 지원되도록 설치를 해줘야 한다.


한글형태소는 아는 사람은 쉬울수 있지만,

일반인에게는 검색이라는것 자체도 어려운 계념인데

한글형태소라는 말은 국어책을 다시 뒤지게 만드는 쉽지 않은 계념이다.

그런데 동전한잎 프로젝트(http://eunjeon.blogspot.kr/)에서 한글 형태소를 만들어서 배포한다.

Elastic Search의 Plugin 정도로 생각하면된다.


얼마전까지만 해도 Elastic Search의 최신버전을 지원하지 않아서 Elastic Search의 최신 버전을 사용할 수 없었으나

최근 16년 12월에 감사하게도 Elastic Search 5.1.1 을 지원하도록 만들어 주었다.

Lucene/Solr용

Elastic Search 용


나는 Elastic Search 에만 관심이 있기 때문에 본글은 Elastic Search기준으로 작성해본다.


형태소분석기는 "mecab-ko-dic은 오픈 소스 형태소 분석 엔진인 MeCab을 사용하여, 한국어 형태소 분석을 하기 위한 프로젝트입니다. 말뭉치 학습과 사전 목록 일부는 21세기 세종계획의 성과물을 사용하였습니다. " 이라고한다.

대충 이런것 같다.   Elastic Search 한글 검색 = (mecab + 동전한닢커스터마이징 ) + Elastic Search  뭐 이정도.??


라이센스 부분부터 훌터보자 mecab-ko-dic 는 Apache License Version 2.0 를 따르고 있기 때문에 사용 및 재배포가 자유롭다.

소스변경 후 재배포는 잘 모르겟네..


동전한닢프로젝트의 설치가이드는 elasticsearch 2.1.1 + mecab-kr 0.2.1로 되어 있는데

ElasticSearch 5.1.1 까지 지원된다고 하니 일단 ElasticSearch 5.1.1 + mecab-kr 0.2.1 를 CentOS 6.6에 설치하는것으로  진행 해보겠다. (잘되려나..)


일단 바이너리 파일만 받아놓고. 설치기는 다음에.


Elastic Search 5.1.1 

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.1.1.zip  전체파일은 여기서 받을 수 있다.

(tistory 10메가파일만 업로드되어 원시파일 압축해제 후 재 압축)

elasticsearch-5.1.1.zip.001

elasticsearch-5.1.1.zip.002

elasticsearch-5.1.1.zip.003

elasticsearch-5.1.1.zip.004

tar : https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.1.1.tar.gz


mecab-ko-dic v0.21

elasticsearch-analysis-mecab-ko-5.1.1.0.zip



'linux' 카테고리의 다른 글

ElasticSearch 5.1.1 외부에서 접근  (0) 2017.03.22
ElasticSearch 5.1.1 설치  (0) 2017.03.22
Apache + PHP + Oracle  (0) 2015.02.28
CentOS NFS 설정  (0) 2015.02.27
Linux shell(1분동안 계속 반복 수행)  (0) 2015.02.27

+ Recent posts