Elasticsearch – Index Lifecycle Policies

By | 2022년 3월 8일
Table of Contents

Elasticsearch – Index Lifecycle Policies

로그파일은 1-2 주 정도의 데이타가 사용되고,
그 이상이 되면 거의 사용되지 않는다.

아래와 같이 인덱스에 라이프 사이클을 적용함으로 해서,
자동으로 오래된 인덱스를 삭제하도록 설정해 본다.

Hot phase, Warm phase, Cold phase, Delete phase

ILM(index lifecycle management) 은 4단계로 구성할 수 있다.

  • Hot phase

    가장 많이 조회되는 최근 데이타

  • Warm phase

    일정 시간이 지나 뜨믄뜨믄 사용되는 데이타

  • Cold phase

    거의 조회되지 않는 데이타

  • Delete phase

    아예 조회되지 않아 삭제해도 되는 데이타

정책 생성

아래 메뉴에서 정책을 생성할 수 있다.

우선을 테스트를 목적으로 하는 정책을 생성해 본다.

Policy name : test-policy
Maximum index size : 99999999 gigabyte
Maximum age : 1 hour

테스트 목적이므로 1시간만 유효한 정책을 생성한다.

Delete phase 를 활성화 하고,
Timing for delete phase 는 2 hour from rollover 를 설정한다.

데이타가 생성된 후, 2시간이 경과하면 삭제되도록 설정한다.

최종적으로 인덱스 형식은 아래처럼 된다.

my-log-2020.05.22-000001
my-log-2020.05.22-000002
my-log-2020.05.22-000003
my-log-2020.05.23-000001
my-log-2020.05.23-000002
my-log-2020.05.23-000003
my-log-2020.05.23-000004

인덱스 적용

아래의 방법으로 정책을 인덱스에 적용할 수 있다.
인덱스 적용시 Alias for rollover index 도 같이 설정해 준다.

아래의 명령으로 정책이 적용된 것을 확인할 수 있다.

curl http://localhost:9200/_template/인덱스명-*?pretty
{
  "인덱스명-*" : {
......
    "settings" : {
      "index" : {
        "lifecycle" : {
          "name" : "test-policy",
          "rollover_alias": "인덱스명"
        },
        "refresh_interval" : "5s"
      }
    },
......

작업중

https://mangkyu.tistory.com/209

답글 남기기