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"
}
},
......