Процеси меліорації космосу Авамар - Частина 1: Збір сміття
Summary: Ця стаття описує першу частину процесу меліорації космосу Avamar. Це називається збиранням сміття.
Instructions
Ця стаття є першою в серії, в якій задокументовано, як Avamar переробляє простір як в GSAN, так і на жорстких дисках.
- Процеси меліорації космосу Авамар - Частина 1: Збір сміття
- Процеси меліорації космічного простору Avamar - Частина 2: Хрускіт
- Процеси меліорації космосу Авамар - Частина 3: Видалення процесу контрольно-пропускного пункту (RMCP)
Поточна реалізація збирання сміття була представлена разом з Avamar v7.0, і її дизайн залишився практично незмінним.
Що робить вивіз сміття?
Збір сміття – це перший етап процесу, на якому Avamar відвойовує простір, який використовувався для зберігання резервних копій даних.
Він працює з каталогом cur і звільняє місце в GSAN шляхом видалення фрагментів даних, на які більше не посилається жодна резервна копія:
- Дані вважаються «визначеними», якщо їх можна знайти в індексі.
- На дані посилаються, якщо вони існують як частина резервної копії (тобто хеш присутній у системі обліку користувачів, складених страйпах або елементах каталогу).
Простір, звільнений під час збирання сміття, не може бути використаний повторно, доки не буде запущено хрускіт . Хрускіт запускається відразу після закінчення щоденного планового вивезення сміття. Дивись процеси меліорації космосу Avamar - Частина 2: Хрускіт.
Коли починається вивіз сміття?
Скільки триває вивіз сміття?
За замовчуванням збір сміття працює протягом 4 годин. Якщо протягом цього часу не буде виконано два проходи, час роботи наступного збору сміття буде збільшено на 15 хвилин. Це продовжується до тих пір, поки не буде успішно завершено два проходи або не буде досягнуто стандартного ліміту в 7 годин (420 хвилин).
Поширені проблеми перелічені нижче. Для перегляду деяких статей може знадобитися автентифікація на сайті підтримки Dell.
- Планувальник обслуговування або, точніше, збір сміття відключений. Висновок status.dpn to може підтвердити це.
- Продуктивність операційної системи перевищує значення disknogc (яке може становити від 86% до 89%).
- Проблеми з синхронізацією часу між вузлами Avamar.
- Індексні смуги розщеплюються.
- Бітові карти з посиланнями на хеш не можуть скидатися.
Як відбувається збір сміття
Крок 1 - Побудова таблиці кількості посилань (TORC):
Збір сміття зчитує записи в системі обліку користувачів, складені смуги та елементи каталогу для побудови таблиці кількості посилань (TORC).
У TORC збір сміття записує всі хеші в системі та кількість посилань на кожен хеш.
Крок 2 - Читання індексів:
Після завершення TORC кожен вузол завантажує в пам'ять підмножину окремих індексних смуг. Кількість зчитуваних смужок визначається параметром gccount . Для кожного хешу, визначеного в індексі, збір сміття шукає хеш у TORC, щоб перевірити, чи є на нього посилання.
- Якщо хеш існує і в індексі, і в TORC, робити нічого. Кожен хеш у TORC має кількість посилань не менше 1, тому хеш є як визначеним, так і посилається.
- Якщо хеш існує в індексі, але не в TORC, хеш визначається, але не посилається, тому його можна видалити.
Примітка: Якби хеш існував у TORC, але не в індексі, це була б помилка цілісності даних (хеш, на який посилаються, але не визначені). Це призводить до помилки hfscheck.
Крок 3 - Видаліть хеші без посилань:
Як ми зазначали раніше, хеші, на які немає посилань, не є частиною будь-якої резервної копії, тому їх можна безпечно видалити з Avamar. Для цього використовується збір сміття:
- Вилучає запис в індексі.
- Обнуляє запис для хешу в дескрипторі заголовка фрагмента (CHD). CHD визначає, де окремі фрагменти знаходяться всередині контейнера смуг.
Avamar позначив область, яку займав хеш, як порожню. З міркувань продуктивності та/або потужності дані не видаляються на цьому етапі.
Крок 4 - Оновіть TORC:
Якщо фрагмент, з якого видалено збір сміття, був складеним, TORC необхідно оновити.
Якщо ми озирнемося назад на крок 1, то побачимо, що кількість посилань у TORC включає посилання, зроблені складеними смугами, які містять складені фрагменти.
Оскільки складений фрагмент був видалений, ми можемо зменшити кількість посилань у TORC на одиницю для будь-яких хешів, на які посилається цей складений фрагмент.
Збирання сміття робить це шляхом читання у складеному файлі, щоб побачити, на які хеші він посилається, а потім оновлення TORC.
Крок 5 – Прочитайте наступний набір індексів:
Збір сміття вивантажує попередній набір індексних страйпів з пам'яті, а потім завантажує новий набір.
Кроки 2, 3 і 4 повторюються для цих нових індексних смуг.
Після того, як всі індексні смуги будуть прочитані, будь-який фрагмент даних (відомий як «атомарні» фрагменти) у TORC, який має 0 посилань (завдяки кроку 4), видаляється.
Крок 6 – Почніть новий пропуск:
Після того, як всі індекси прочитані, збір сміття починає новий прохід.
Всі індексні смуги перечитуються в пошуках даних, на які більше немає посилань завдяки нашим попереднім проходам.
Це необхідно, тому що хеші читаються не в логічному порядку, а в тому порядку, в якому вони зберігаються в індексах.
Збір сміття не гарантує, що знайде хеші в оптимальному порядку. На хеш може залишатися посилання до кінця проходу.
Два проходи збору сміття можуть комфортно підтримувати "стабільну" ємність у більшості серверних середовищ Avamar.
Збір сміття виконує пропуски до тих пір, поки не закінчиться час, або пропуск не завершиться без видалення будь-яких даних.
Ручний збір
сміттяМікроуправління сервером Avamar не потрібне. Планувальник призначений для автоматизації виконання завдань технічного обслуговування. Якщо пропускна спроможність Avamar висока, перегляньте Посібник з найкращих операційних практик Avamar і Avamar: Концепції управління потенціалом та навчання.
У рідкісних випадках запуск збирання сміття може допомогти полегшити гострі проблеми, коли «Ємність користувача» GSAN настільки висока, що система переходить у режим лише читання.
У цих випадках збір сміття запускається вручну, щоб знизити рівень ємності трохи нижче порогу лише для читання. Це дозволяє запустити вікно резервного копіювання.
Автоматизований збір сміття може продовжувати працювати у звичайному режимі.
Служба підтримки Avamar повинна повністю дослідити та зрозуміти ситуацію, перш ніж розглядати питання про ручний збір сміття.
Ніколи не доречно вимагати, щоб служба підтримки вручну виконувала збір сміття в системі без дозволу інженера служби підтримки L2 після такого розслідування.
Дивись Avamar - Про використання ручного збирання сміття.