HelloWorld

[AWS] Elasticsearch 구축하기

웹(WEB)/AWS(아마존웹서비스)

개발중인 LectureSearch 프로젝트에서는 관계형 데이터베이스(RDBMS: mysql, oracle, mariadb)를 대신하여 검색엔진 엘라스틱서치를 이용하려 합니다.

AWS에서는 Elasticsearch Service를 제공하는데 이를 설정하는 방법을 알아보겠습니다.

 

1.Elasticsearch Service 설정

AWS 콘솔창에서 Elasticsearch Service를 검색하고 클릭합니다.

 

새 도메인 생성을 클릭합니다.

 

웹 서비스를 상용화 할 것이 아니기에 개발 및 테스트 유형을 선택했습니다.

Elasticsearch 버전은 6.8버전으로 맞추었습니다. (2020.03. 기준 최신버전은 7.1버전입니다.)

다음버튼을 클릭하여 이동합니다.

 

이름을 정해주고, 인스턴스 유형은 프리티어로 사용가능한 t2.small을 선택합니다.

다음으로 이동합니다.

 

네트워크 구성은 퍼블릭 액세스로 하였습니다.

 

퍼블릭 액세스를 선택하면 특정 사용자나 IP주소만 도메인에 액세스 할 수 있도록 액세스 정책으로 도메인을 보호해야 합니다.

로컬PC IP주소와 EC2 인스턴스의 탄력적IP 주소를 허용IP로 등록합니다.

다음으로 이동합니다.

 

설정이 잘 되었는지 확인 후 확인버튼을 클릭하여 이동합니다.

 

Elasticsearch 도메인이 생성되었습니다.

활성화까지 몇 분의 시간이 소요되니 기다려줍니다.

 

도메인이 활성화 되면 엔드포인트와 키바나 주소가 생성됩니다.

엔드포인트 주소로 엘라스틱서치에 접속 할 수 있고,

키바나 주소로 키바나에 접속 할 수 있습니다.

 

엘라스틱서치가 잘 구동되는지 엔드포인트 접속주소로 이동하면 다음과 같이 잘 구동되고 있는것을 확인 할 수 있습니다.

 

키바나 접속주소로 이동시 키바나도 잘 구동되는 것을 확인 할 수 있습니다.

 

2. 웹 프로젝트에 ElasticSearch 도메인 연결하기

엔드포인트 주소를 복사하여 다음과 같이 넣어주면 웹 프로젝트에서 엘라스틱서치 도메인으로 연결됩니다.

return new RestHighLevelClient(RestClient.builder(HttpHost.create("엔드포인트주소"))