[Elasticsearch] ElasticSearch, Kibana 설치하기

2026. 3. 14. 10:44·ELK
더보기
더보기

인프런-실전에서 바로 써먹는 Elasticsearch 입문(검색 최적화편)을 듣고 작성한 글입니다.

지난 프로젝트에서 Elastcisearch를 구현해보지 못해 아쉬워서 강의를 결제해서 듣기 시작했다 ! 

 

1. Elasticsearch 란? 

Elasticsearch는 검색, 데이터 분석에 최적화된 데이터베이스이다.

이는 두 가지로 활용이 가능한데 

1. 데이터 수집 및 분석 

대규모 데이터(로그) 수집 , 분석하는데 최적화되어있고 elasticsearch, logstash, kibana 활용해 데이터 수집 및 분석한다. 

 

2. 검색 최적화

데이터가 많더라도 뛰어난 검색 속도를 가지고 있다. 오타나 동의어를 고려해 유연하게 검색할 수 있다. 

 

이 강의는 2번에 관한 내용을 담고 있다. 

 

2. Elasticsearch 설치하기 

compose.yml

services:
  elastic:
    image: docker.elastic.co/elasticsearch/elasticsearch:8.17.4 # Elastic 8.17.4 버전의 이미지
    ports:
    - 9200:9200 # 9200번 포트에서 Elasticsearch 실행
    environment:
    # 아래 설정은 개발/테스트 환경에서 간단하게 테스트하기 위한 옵션 (운영 환경에서는 설정하면 안 됨)
    - discovery.type=single-node # 단일 노드 (지금은 알 필요 없음)
    - xpack.security.enabled=false # 보안 설정
    - xpack.security.http.ssl.enabled=false # 보안 설정

els에 포트번호는 9200이다. 

 

postman으로 요청을 날려보면 설치가 잘 되었는지 확인할 수 있다. 

 

 

3. 작동 방식

elasticsearch와 소통하려면 REST API라는 방식으로 통신해야한다. 

데이터 삽입

curl -X POST "localhost:9200/users/_doc" -H 'Content-Type: application/json' -d'
{
  "name": "Alice",
  "email": "alice@example.com"
}'

데이터 조회

curl -X GET "localhost:9200/users/_search" -H 'Content-Type: application/json' -d'
{
  "query": {
    "match_all": {}
  }
}'

 

 

4. Gui tool : kibana

Mysql에는 workbench, Dbeaver가 있듯이 elasticsearch도 kibana를 통해 좀 더 편리하게 조작할 수 있다. 

 

아케텍처는 아래와 같다. 

 

앞서 작성했던 파일 내용을 지우고 elaticsearch와 kibana를 함께 설치해주는 파일을 작성해주겠다. 

compose.yml

services:
  elastic:
    image: docker.elastic.co/elasticsearch/elasticsearch:8.17.4 # 8.17.4 버전
    ports:
      - 9200:9200 # 9200번 포트에서 Elasticsearch 실행
    environment:
      # 아래 설정은 개발/테스트 환경에서 간단하게 테스트하기 위한 옵션 (운영 환경에서는 설정하면 안 됨)
      - discovery.type=single-node # 단일 노드 (지금은 알 필요 없음)
      - xpack.security.enabled=false # 보안 설정
      - xpack.security.http.ssl.enabled=false # 보안 설정
  kibana:
    image: docker.elastic.co/kibana/kibana:8.17.4 # 8.17.4 버전
    ports:
      - 5601:5601 # 5601번 포트에서 kibana 실행
    environment:
      - ELASTICSEARCH_HOSTS=http://elastic:9200 # kibana가 통신할 Elasticsearch 주소 알려주기

백그라운드에서 실행하려면

docker compose up -d 로 실행시키면 된다. 

 

kibana tool을 사용하기 위해서는 localhost:5601로 접속하면 된다. dev tools를 찾아 들어가서 GET / 를 입력하면 postman에서 localhost:9200 을 요청했던 것과 똑같은 응답이 온 것을 확인할 수 있다.

이처럼 kibana를 이용하면 더 간편하고 편리하게 요청을 보낼 수 있는 것을 알 수 있다. 

'ELK' 카테고리의 다른 글

[Elasticsearch] Elasticsearch 인덱스 및 도큐먼트 CRUD  (0) 2026.03.17
[Elastic Stack] ELK Stack 기반 로그 모니터링 시스템  (2) 2026.03.10
'ELK' 카테고리의 다른 글
  • [Elasticsearch] Elasticsearch 인덱스 및 도큐먼트 CRUD
  • [Elastic Stack] ELK Stack 기반 로그 모니터링 시스템
지-토리
지-토리
  • 지-토리
    지토리의 개발이야기
    지-토리
  • 전체
    오늘
    어제
    • 분류 전체보기 (46)
      • [AND] 사용자 정의 지표 기반 실시감 감지 및.. (13)
        • 기획 (4)
        • 기술 (8)
      • [Linkompany] 뉴스와 공시를 통합 기업 .. (4)
      • [Candly] 차트 공부 및 예측 웹 프로젝트 (2)
      • JAVA (4)
        • 코딩테스트 (1)
      • 대규모 시스템 설계 (1)
      • Infra (12)
      • ELK (3)
      • AI (2)
      • FrontEnd (1)
      • TIP (2)
      • 자격증 (1)
  • 블로그 메뉴

    • 홈
    • Github
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    프로디지털아카데미
    쿠버네티스
    Issue
    SpringSecurity
    Firebase
    kdt교육
    부트캠프
    kpt
    인증/인가
    EC2
    알파코
    K8S
    And
    신투
    알파코캠퍼스
    프디아
    인프런
    프로젝트
    신한투자증권
    K디지털트레이닝
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
지-토리
[Elasticsearch] ElasticSearch, Kibana 설치하기
상단으로

티스토리툴바