Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 9001|Відповідь: 0

Elasticsearch автоматично очищає індекси для звільнення місця на диску

[Копіювати посилання]
Опубліковано 13.03.2022 13:22:29 | | | |
Використовуючи Elasticsearch для зберігання журналів бізнес-системи, щодня генеруватиметься новий індекс відповідно до дати, щодня мільйони документів, якщо індекс Elasticsearch не очистити вчасно, це створить великий простір на диску, створить великий тиск на диск, і швидкість пошуку також зменшиться. Раніше ми вручну очищали індекси ES, регулярно використовували shell-скрипти, але ES може створити політику життєвого циклу індексу, щоб допомогти нам видалити старі історичні індекси.

Версія Elasticsearch, використана в цій статті: 7.10.2

Сьогодні 2022-03-11, і ви можете побачити, що індекс і документи за січень 2022 року досі існують, як показано на рисунку нижче:



Створіть шаблон індексу

Відкрийте панель адміністратора Kibana, натисніть Index Management -> Index Template ->, щоб створити шаблон індексу з наступною назвою:logger-template, індексний модуль заповнює індекси, які потрібно зіставити, а потім переходить до наступного кроку, як показано на рисунку нижче:



Примітка: При створенні нового індексу 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
Перегляньте шаблон індексу, який ви щойно створили, і він буде застосований до фінального шаблону, що відповідає індексу. Деталі такі:

{
  "template": {
    "налаштування": {
      "index": {
        "життєвий цикл": {
          "Name": "Auto-clean-30-days-logger"
        }
      }
    },
    "псевдоніми": {},
    "відображення": {}
  }
}


Перегляньте інтерфейс конфігурації політик, наприклад:http://192.168.1.182:9200/_ilm/policy/auto-clean-30-days-logger?pretty

{
  "auto-clean-30-days-logger" : {
    "версія" : 1,
    "modified_date" : "2022-03-11T06:26:01.972Z",
    "policy" : {
      "фази" : {
        "гаряче" : {
          "min_age" : "0ms",
          "actions" : {
            "set_priority" : {
              "Пріоритет": 100
            }
          }
        },
        "delete" : {
          "min_age" : "30d",
          "actions" : {
            "delete" : {
              "delete_searchable_snapshot" : правда
            }
          }
        }
      }
    }
  }
}


ILM (Управління життєвим циклом індексу)

Наша нова політика життєвого циклу індексу реалізується через опитування з обмеженням часу.

ILM Service опитує політику виконання у фоновому режимі:

ILM визначає чотири стадії життєвого циклу:
Hot: Активно оновлюю та звертаюся до індексу.
Warm: Більше не оновлюю індекси, але все одно запитуємо.
холод: Індекси більше не оновлюються, кілька запитів. Інформація все одно має бути пошуковою, але це нормально, якщо ці запити йдуть повільніше.
Видалити: Індекс більше не потрібен і його можна безпечно видалити.

Періодична робота ILM (indices.lifecycle.poll_interval),За замовчуванням — 10 хвилинщоб перевірити, чи відповідає індекс критеріям політики, і вжити всіх необхідних заходів.
Щоб уникнути гоночних ситуацій, ILM може знадобитися виконувати кілька разів для виконання всіх кроків, необхідних для виконання дії. Отже, навіть якщо indices.lifecycle.poll_interval встановлено на 10 хвилин і індекс відповідає вимогам перенесення, завершення переведення може зайняти 20 хвилин.
Наприклад, якщо ми встановимо більше ніж 10 документів для перенесення, але оскільки цей процес не реалізовано одразу, 11-та та 12-та статті все одно можуть потрапити до попереднього індексу, а новостворені документи не потрапить до нового індексу, доки перехід не буде успішним.

Налаштування управління життєвим циклом індексу в Elasticsearch:Вхід за гіперпосиланням видно.

Переглянути статус ILM



Зараз 2022-03-13, щодня автоматично створюються 2 індекси, ви вже бачите створені індексиПолітики автоматично асоціюються, як показано на рисунку нижче:



(Кінець)





Попередній:Проєкти Maven пакують проєкти та залежності окремо
Наступний:【Practical Action】Використовуйте Docker для створення IPsec VPN сервера
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com