elasticsearch manage index
해당 문서는 AWS_elasticsearch와 관련된 내용으로 aws가 아닌 경우 다를 수 있습니다.
인덱스 관리
-
현재 회사에서 ELK (ElasticSearch + Logstash + Kibana)를 사용한 백엔드 로그관리를 사용하고 있다. 하지만 언젠가부터 인덱스가 지나치게 많아지고 그에 따라 샤드가 계속해서 증가해서 ES는 계속해서 좋지않은 상태를 보이고 가끔 kibana가 작동하지 않는 상태를 보였다.
-
가장 쉽고 빠른 방법은 스케일업을 통해 AWS_ES의 스펙을 상승시켜주는 방법도 있지만 돈이 많이 들기에 같은 가격의 vCPU가 늘어나는 상승과 함께 ISM 을 진행하는 것이다.
Index-Policies 예제
- 현재 개발, 운영서버로 이루어져있고 개발서버 로그는 사실 크게 필요가 없기에 3d_7d를 사용하였다.(3일 후에 replica -> 0, 7일 후 삭제)
"states": [
{
"name": "current",
"actions": [],
"transitions": [
{
"state_name": "old",
"conditions": {
"min_index_age": "3d"
}
}
]
},
{
"name": "old",
"actions": [
{
"replica_count": {
"number_of_replicas": 0
}
}
],
"transitions": [
{
"state_name": "delete",
"conditions": {
"min_index_age": "7d"
}
}
]
},
{
"name": "delete",
"actions": [
{
"delete": {}
}
],
"transitions": []
}
]
}
}
- 윗 부분은 필요없어서 좀 삭제했으며 3일후에 current -> old로 상태를 변경하며 replica(복제본)을 삭제, 이후 7일째엔 인덱스 삭제를 통해 데이터를 관리하였다.
인덱서 관리 자동 설정
- 사실 최근까지도 무식하지만 개발팀에서 직접 인덱스들에 해당 규칙? 법칙을 적용시키고 있었고 인덱스 생성 시 자동 적용하는 것을 찾았고 이를 적용 시켰다.
"ism_template": [
{
"index_patterns": [
"test*"
],
"priority": 100,
}
]
-
여기서 인덱스 패턴에 내가 원하는 인덱스 패턴을 넣어주면 되고 priority는 아직 정확한 뜻을 모르는 상태. 입력하지 않으면 priority는 0으로 진행된다. (관련 내용은 확인중)
-
어쨋든 이를 통해 사내 ES를 좀 더 편하게 사용할 수 있을듯
Author And Source
이 문제에 관하여(elasticsearch manage index), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@mkhome/elasticsearch-manage-index저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)