В XenServer (5.0, 5.5, 6.0) при постоянном изготовлении снепшотов системы (обычно используется для бекапов) через определенное время эти снепшоты делатся отказывались, возвращая ошибку:
Error code: SR_BACKEND_FAILURE_109
Error parameters: , The snapshot chain is too long
Примерно это возникало после 30-го снепшота для конкретной виртуальной машины. На форумах (например: http://forums.citrix.com/thread.jspa?threadID=262055) правильного решения предложено не было. Проблема решалась экспортом виртуальной машины, удалением ее на сервере и созданием из импорта, что в случае большого количества серверов и виртуальных машин вручную делать затруднительно, а при автоматизации такая процедура займет много времени, к тому же не всегда штатный простой виртуальной машины на время ее экспорта/импорта допустим. Чуть позже в некоторых блогах (http://avpaul.blogspot.ca/2012/05/xenserver-losing-space-on-sr-and.html) появились советы, как исправить ситуацию, правда для исправления требовалась ручная работа, к тому же необходимо вручную удалять сбойные виртуальные диски, что иногда опасно.
Тем не менее именно последняя статья в блоге может натолкнуть на решение, если у вас присуствует ошибка SR_BACKEND_FAILURE_109 но при этом других сопуствующих условий нет. Решением является одно – внимательно читайте содержимое /var/log/SMlog после запуска xe sr-scan
.
В моем случае sr-scan
отработал без ошибок, но при этом сказал, что дальнейшую работу проводить не будет. Более детальный анализ показал: на серверах на всех дисковых массивах параметр other-config:gc
был выставлен в false, что и приводило к постепенному накоплению мусора, заполнению дисковых массивов и отказу на некоторых операциях.
Т.е. в случае, если для каких-то SR у вас
xe sr-param-get param-name=other-config uuid=...
gc: false
либо вообще отсуствует параметр gc, то решением для таких SR является:
xe sr-param-set other-config:gc=true uuid=...
с последующим запуском
xe sr-scan uuid=...
для этого же SR
Внимание: окончание работы команды xe sr-scan в консоли и действительное окончание сборки мусора не совпадают, сборка мусора должна затянутся намного дольше, что и можно будет отследить через tail -f /var/log/SMlog
, поэтому нежелательно запускать sr-scan для разных SR на одном и том же рабочем сервере одновременно
This is really interesting, You are a very skilled blogger.
I have joined your feed and look forward to seeking more
of your fantastic post. Also, I have shared your website in my social networks!