Symptoms
Коли об'єктам Kubernetes (постійним томам (PV) або DellCSIReplicationGroups (RG) видаються команди видалення, команда kubectl може перестати відповідати на невизначений термін замість видалення відповідних PV або RG. Після успішного видалення RG пов'язані з ними політики SyncIQ на відповідних масивах зберігання PowerScale можуть не бути видалені належним чином.
Це може створити проблеми, коли подальша реплікація виконується з тим самим класом зберігання Kubernetes. Ця проблема може спричинити сценарії, коли місце для зберігання не звільняється після того, як воно більше не потрібне.
Про проблему повідомляється тут:
https://github.com/dell/csm/issues/523
Cause
Теги фіналізатора в керованих CSM об'єктах Kubernetes не враховують і не вирішують належним чином реплікацію модулів контейнерного зберігання (CSM) при видаленні об'єкта. Це призводить до того, що об'єкт залишається в стані "Завершення" на невизначений термін, оскільки умови в його фіналізаторі не виконуються.
Видалення політики SyncIQ не виконується належним чином, коли контролер реплікації CSM і побічний автомобіль реплікації обробляють видалення RG. Це призводить до того, що політика SyncIQ залишається на масиві пам'яті навіть після видалення його RG.
Resolution
Резолюція:
Інженерія вирішила цю проблему в Dell CSM для PowerScale 1.6.0.
Спосіб вирішення:для об'єктів Kubernetes:
- Скасування видалення, яке не відповідає (наприклад, Ctrl+C). Доступ до об'єктів, які не вдалося видалити, можна вручну отримати за допомогою такої команди:
kubectl edit rg
- Для фотоелектричних установок:
kubectl edit pv
- Відкриється відповідний об'єкт в текстовому редакторі. Усередині об'єкта є кілька категорій тегів, як показано нижче:
- Вручну видаліть рядок "finalizers:" та її записи. У наведеному вище випадку це:
- Збережіть файл в текстовому редакторі, вийдіть з редактора, а потім знову запустіть команду видалення. Цей процес може бути повторений для всіх реплікованих фотоелектричних та RG, які не вдається видалити.
Для видалення політик SyncIQ, що залишилися в масиві:
- Увійдіть до вихідного масиву PowerScale за допомогою його веб-інтерфейсу.
- Перейдіть на вкладку Захист даних і виберіть SyncIQ.
- На сторінці SyncIQ перейдіть на підвкладку Політики .
- У політиці, яку потрібно видалити, натисніть кнопку Дії, а потім – Видалити політику.
- За потреби повторіть ці дії для цільового та кінцевого масиву PowerScale.