이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 9001|회답: 0

Elasticsearch는 인덱스를 자동으로 정리하여 디스크 공간을 확보합니다

[링크 복사]
게시됨 2022. 3. 13. 오후 1:22:29 | | | |
Elasticsearch를 사용해 비즈니스 시스템의 로그를 저장하면, 매일 날짜에 따라 새로운 인덱스가 생성됩니다. 매일 수백만 개의 문서가 있습니다. 만약 Elasticsearch 인덱스가 제때 정리되지 않으면 디스크 공간이 커지고 디스크에 큰 부담이 가해지며, 검색 속도도 느려질 것입니다. 이전에는 ES의 인덱스를 수동으로 정리하고 셸 스크립트를 사용해 정기적으로 정리했지만, ES는 오래된 과거 인덱스를 삭제하는 데 도움을 주는 인덱스 라이프사이클 정책을 생성할 수 있습니다.

이 문서에서 사용된 Elasticsearch 버전은 7.10.2입니다.

오늘은 2022-03-11이며, 아래 그림에서 볼 수 있듯이 2022년 1월의 인덱스와 문서가 여전히 존재하는 것을 확인할 수 있습니다:



인덱스 템플릿 만들기

Kibana 관리자 패널을 열고 인덱스 관리 -> 인덱스 템플릿 ->을 클릭하여 다음 이름의 인덱스 템플릿을 생성하세요:로거 템플릿인덱스 모듈은 매칭해야 할 인덱스를 채우고, 아래 그림과 같이 다음 단계로 진행합니다:



참고: 새로운 Elasticsearch 인덱스를 만들 때, 템플릿이 자동으로 기본 인덱스 부분을 완성하도록 매칭됩니다. 즉, itsvse-2022-03-13 인덱스를 생성할 때 logger-template 버전과 일치한 후 템플릿이 설정한 규칙을 실행합니다.과거 색인(템플릿과 일치하더라도)은 인덱스 템플릿과 연관되지 않습니다!!! 이 글에서,템플릿을 기반으로 생성되지 않은 인덱스는 자동으로 삭제할 수 없습니다

인덱스 수명주기 정책 생성

Kibana 관리자 패널을 열고 Index Lifecycle Policy ->을 클릭하여 다음 이미지에 표시된 대로 정책을 생성하세요:



이름 채우기"자동 청소-30일-로거, 체크 해제 롤링 업데이트 활성화 아래 그림에 나타난 것:



삭제 단계를 열어 30일 전까지의 인덱스를 자동으로 정리하세요. 아래 이미지에 나와 있습니다:



마지막으로, 다음 이미지에서 보듯이 인덱스 템플릿에 정책을 추가하세요:



이 시점에서 새로 생성된 인덱스는 자동으로 30일 동안 저장되고, 30일 이상 인덱스는 삭제되며, 과거 인덱스는 수동으로 정리해야 합니다!! 인덱스를 수동으로 삭제하려면 다음을 참고하세요:

Elasticsearch는 모든 문서 데이터를 삭제하고 인덱싱합니다
https://www.itsvse.com/thread-6321-1-1.html
방금 만든 인덱스 템플릿을 검토하세요. 이 템플릿은 최종 인덱스와 일치하는 템플릿에 적용될 것입니다. 자세한 내용은 다음과 같습니다:

{
  "템플릿": {
    "설정": {
      "인덱스": {
        "생애주기": {
          "이름": "자동 청소-30-days-logger"
        }
      }
    },
    "별칭": {},
    "매핑": {}
  }
}


예를 들어, 정책 설정 인터페이스를 검토하세요:http://192.168.1.182:9200/_ilm/policy/auto-clean-30-days-logger?pretty

{
  "자동 청소-30일-로거" : {
    "버전 : 1,"
    "modified_date" : "2022-03-11T06:26:01.972Z",
    "정책" : {
      "위상" : {
        "뜨거워" : {
          "min_age" : "0ms",
          "행동" : {
            "set_priority" : {
              "우선순위" : 100
            }
          }
        },
        "삭제" : {
          "min_age" : "30펜스",
          "행동" : {
            "삭제" : {
              "delete_searchable_snapshot" : 사실입니다
            }
          }
        }
      }
    }
  }
}


ILM(인덱스 라이프사이클 관리)

우리의 새로운 인덱스 수명주기 정책은 시간 내 폴링을 통해 실행됩니다.

ILM 서비스는 백그라운드에서 실행 정책을 폴링합니다:

ILM은 네 가지 생애 주기 단계를 정의합니다:
핫: 인덱스를 적극적으로 업데이트하고 쿼리하는 중.
웜: 더 이상 인덱스를 업데이트하지 않지만, 여전히 쿼리를 진행합니다.
콜드: 더 이상 인덱스 업데이트가 없고, 쿼리도 적습니다. 정보는 여전히 검색 가능해야 하지만, 쿼리가 느려져도 괜찮습니다.
삭제: 인덱스는 더 이상 필요하지 않으며 안전하게 삭제할 수 있습니다.

ILM 주기 작동 (indices.lifecycle.poll_interval),기본값은 10분입니다지수가 정책 기준을 충족하는지 확인하고 필요한 조치를 취하는 것입니다.
레이스 상황을 피하기 위해 ILM을 여러 번 실행해야 할 수 있습니다. 따라서 indices.lifecycle.poll_interval가 10분으로 설정되어 있고 인덱스가 롤오버 준수 상태라도, 롤오버를 완료하는 데 20분이 걸릴 수 있습니다.
예를 들어, 10개 이상의 문서를 롤오버하도록 설정했지만 이 과정이 즉시 실행되지 않아 11번째와 12번째 문서는 이전 인덱스에 여전히 해당될 수 있고, 새로 생성된 문서들은 롤오버가 성공할 때까지 새 인덱스에 포함되지 않습니다.

Elasticsearch의 인덱스 라이프사이클 관리 설정:하이퍼링크 로그인이 보입니다.

ILM 상태 보기



2022-03-13입니다. 매일 2개의 인덱스가 자동으로 생성됩니다. 이미 생성된 인덱스를 볼 수 있습니다정책은 자동으로 연관됩니다, 아래 그림에서 볼 수 있습니다:



(끝)





이전의:Maven 프로젝트는 프로젝트와 의존성을 별도로 패키지화합니다
다음:【실질적 행동】도커를 사용해 IPsec VPN 서버를 구축하세요
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com