Ошибка удаления загружаемых дисков

1. Проблема

Может возникнуть ситуация когда при отмене загрузки диска в домен хранения, диск останется в состоянии Завершается очистка. При этом задачи все выполнены, все возможные очистки как через веб-интерфейс, так и через vdsm-client и скрипты не помогают. В хранилищах при этом возникают подобные файлы:

drwxr-xr-x. 2 vdsm kvm 149 апр 27 14:25 0f23d331-1bc9-42c7-9bde-7539c67008ec
drwxr-xr-x. 2 vdsm kvm 149 апр 27 12:56 3b9f7555-0fec-42e2-85c0-b263d6cf5015
drwxr-xr-x. 2 vdsm kvm 149 апр 27 12:56 53103e94-7cfe-4b9f-abcc-fa95944ecbf3
drwxr-xr-x. 2 vdsm kvm  42 апр 27 14:25 _remove_me_f1031f5f-25b9-4f3d-954a-62c8db648391

2. Решение проблемы через редактирование базы данных менеджера управления виртуализацией

  1. Сделать резервную копию:

    engine-backup --scope=all --mode=backup --file=backup.bck --log=backuplog.log
  2. Подключиться к базе данных:

    su - postgres
    psql -d engine
  3. Определить проблемный образ:

    engine=# select image_guid,parentid,imagestatus from images;

    В выводе

                  image_guid              |               parentid               | imagestatus
    --------------------------------------+--------------------------------------+-------------
     00000000-0000-0000-0000-000000000000 |                                      |           0
     59ebf55d-3a25-46ee-9ff5-054227eaa65e | 00000000-0000-0000-0000-000000000000 |           1
     3c9f261c-3a03-453f-98c1-76c90a8f11d1 | 00000000-0000-0000-0000-000000000000 |           1
     c646fee0-66e0-41ea-868d-c9b91b13463a | 00000000-0000-0000-0000-000000000000 |           1
     1c1486b9-94f3-464b-b92d-4664c6cf5de5 | 00000000-0000-0000-0000-000000000000 |           2
     d9f4ec19-43a2-44c7-b243-85ca259f35c7 | 00000000-0000-0000-0000-000000000000 |           2
     b96a5bd6-8569-4986-98c0-4245b562d023 | 00000000-0000-0000-0000-000000000000 |           1
     ebf15eec-9205-4655-9a53-e8152c9340cd | 00000000-0000-0000-0000-000000000000 |           1
     6416c05d-1e85-46e0-819c-1212b3995915 | 00000000-0000-0000-0000-000000000000 |           1
     5d38b492-413b-4116-9507-85681c64d16b | 00000000-0000-0000-0000-000000000000 |           1
    (10 rows)

    Необходимо удалить строки со статусом 2:

    delete from images where imagestatus=2;
    DELETE 2
  4. Теперь необходимо удалить физические файлы. Переходим в директорию хранения образа, например:

    cd /rhev/data-center/mnt/znode-1.local.test:_storage/ce97d047-38a1-49d6-aedc-0cafeb46de47/images/_remove_me_f1031f5f-25b9-4f3d-954a-62c8db648391/
  5. Необходимо определить блокирующий процесс, завершить процесс и проверить, что образ удалён:

    lsof .nfs000000001206343e00000001
    COMMAND    PID USER   FD   TYPE DEVICE   SIZE/OFF      NODE NAME
    qemu-nbd 18160 vdsm   10u   REG   0,49 4136632320 302396478 .nfs000000001206343e00000001
    kill 18160
    ll -a
    итого 0
    drwxr-xr-x. 2 vdsm kvm   6 апр 27 17:55 .
    drwxr-xr-x. 6 vdsm kvm 193 апр 27 14:25 ..
  6. Удалить директорию:

    cd ..
    rm -rf _remove_me_f1031f5f-25b9-4f3d-954a-62c8db648391/