티스토리 뷰

SW 개발

CentOS 7, Elasticsearch 6 설치하기

지단로보트 2019.08.10 13:29

개요

  • Elasticsearch는 풀텍스트 검색엔진이다. Elasticsearch 저장소를 적절히 이용하면 애플리케이션에서 굉장히 빠른 속도의 텍스트 검색을 실현할 수 있다. 광범위한 쓰임새 덕에 오픈 소스 로그 관제 솔루션인 Graylog의 경우 전용 로그 저장소로 사용하기도 한다.

Elasticsearch 설치

  • 아래는 CentOS 7Elasticsearch를 설치하는 방법이다.
### 운영체제 업데이트
$ sudo yum -y update

### Zulu OpenJDK 8 설치
$ sudo rpm --import http://repos.azulsystems.com/RPM-GPG-KEY-azulsystems
$ sudo curl -o /etc/yum.repos.d/zulu.repo http://repos.azulsystems.com/rhel/zulu.repo
$ sudo yum -y install zulu-8
$ sudo bash -c 'echo "export JAVA_HOME=/usr/lib/jvm/zulu-8" >> /etc/environment'
$ sudo bash -c 'echo "export JRE_HOME=/usr/lib/jvm/zulu-8/jre" >> /etc/environment'

### Elasticsearch 6 설치
$ sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
$ sudo touch /etc/yum.repos.d/elasticsearc-6.repo
$ sudo bash -c 'echo "[elasticsearch-6.x]" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo bash -c 'echo "name=Elasticsearch repository for 6.x packages" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo bash -c 'echo "baseurl=https://artifacts.elastic.co/packages/6.x/yum" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo bash -c 'echo "gpgcheck=1" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo bash -c 'echo "gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo bash -c 'echo "enabled=1" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo bash -c 'echo "autorefresh=1" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo bash -c 'echo "type=rpm-md" >> /etc/yum.repos.d/elasticsearc-6.repo'
$ sudo yum -y install elasticsearch

### 환경 설정
$ sudo vi /etc/elasticsearch/elasticsearch.yml
### 내부망에 연결된 모든 노드로부터의 원격 접속을 허용
### 개발 및 테스트 환경에서만 사용, 운영 환경에서는 보안 문제로 비추천
network.host: 0.0.0.0
### Graylog 로그 저장소로 사용할 경우 설정
cluster.name: graylog

### Elasticsearch 6 방화벽 개방
$ sudo firewall-cmd --permanent --add-port=9200/tcp
$ sudo firewall-cmd --permanent --add-port=9300/tcp
$ sudo firewall-cmd --reload

### Elasticsearch 6 실행
$ sudo systemctl daemon-reload
$ sudo systemctl enable elasticsearch
$ sudo systemctl start elasticsearch

Elasticsearch 6 실행 확인

### 서비스 포트 상태 확인
$ nmap -p 9200 localhost
PORT     STATE SERVICE
9200/tcp open  wap-wsp

$ curl -X GET http://localhost:9200
{
  "name" : "hknorBD",
  "cluster_name" : "graylog",
  "cluster_uuid" : "pyGNtEQnTtO33KsOVgYPaQ",
  "version" : {
    "number" : "6.8.2",
    "build_flavor" : "default",
    "build_type" : "rpm",
    "build_hash" : "b506955",
    "build_date" : "2019-07-24T15:24:41.545295Z",
    "build_snapshot" : false,
    "lucene_version" : "7.7.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}
댓글
댓글쓰기 폼