Size: a a a

OpenNebula - русскоговорящее сообщество

2020 January 16

КБ

Кирилл Бобров in OpenNebula - русскоговорящее сообщество
Вообще складывается отютение что весь опенсорс потихоньку поглашает большой страшный интерпрайз. Осталось майкрасофту каконикал поглотить и будет совсем весело.
источник

VR

Vladimir Renskiy in OpenNebula - русскоговорящее сообщество
Игорь Исаенко
Гениально. Чтобы узнать бенефит от продукта редхата, нужно купить подписку на продукты редхата.
можно оформить девелоперскую фри подписку.
источник

V

Vadim in OpenNebula - русскоговорящее сообщество
Vladimir Renskiy
можно оформить девелоперскую фри подписку.
Спасибо за наводку, надо попробовать.
источник
2020 January 17

TB

Tatyana Bezpalchuk in OpenNebula - русскоговорящее сообщество
Приветствую

Вчера столкнулась со следующей проблемой...
При миграции включеных ВМ с датастора на датастор ВМ переходит с статус FAILED

OpenNebula 5.10.1
драйвер linstor_un

Причина:
в скрипте  /var/lib/one/remotes/vmm/kvm/restore_linstor_un

выражение замены:
sed -i "s%$DS_LOCATION/[0-9]\+/$VM_ID/%$DS_LOCATION/$DS_ID/$VM_ID/%g" $SRC_XML

на финише преобразуется в такое
s%/var/lib/one//datastores/113/38/checkpoint/[0-9]\+/38/%/var/lib/one//datastores/113/38/checkpoint/113/38/%g /var/lib/one//datastores/113/38/checkpoint.xml

т.е. согласно ему DS_LOCATION=/var/lib/one//datastores/113/38/checkpoint и он пытается заменить в файле /var/lib/one//datastores/113/38/checkpoint.xml строки, соответствующие этому вхождению

Но в этом файле таких путей нет
в нем прописан путь /var/lib/one//datastores/115/38

соответственно замены не происходит

Ошибки в логах:
Fri Jan 17 07:57:19 2020 [Z0][VMM][I]: Command execution failed (exit code: 1): /var/lib/one/remotes/vmm/kvm/restore_linstor_un '/var/lib/one//datastores/113/38/checkpoint' 'csshv-one14' 'one-38' 38 csshv-one14
Fri Jan 17 07:57:19 2020 [Z0][VMM][E]: restore_linstor_un: Command "virsh --connect qemu:///system restore /dev/drbd/by-res/one-vm-38-checkpoint/0 --xml /var/lib/one//datastores/113/38/checkpoint.xml" failed: error: Failed to restore domain from /dev/drbd/by-res/one-vm-38-checkpoint/0
Fri Jan 17 07:57:19 2020 [Z0][VMM][I]: error: Cannot access storage file '/var/lib/one//datastores/113/38/disk.1': No such file or directory
Fri Jan 17 07:57:19 2020 [Z0][VMM][E]: Could not restore from /dev/drbd/by-res/one-vm-38-checkpoint/0 on csshv-one14

(хотя физически перемещение файлов и линков ВМ на новый датастор происходит)

Решение:
Заменила строку
sed -i "s%$DS_LOCATION/[0-9]\+/$VM_ID/%$DS_LOCATION/$DS_ID/$VM_ID/%g" $SRC_XML

на
sed -i "s/[0-9]*\/$VM_ID/$DS_ID\/$VM_ID/g" $SRC_XML

Теперь включенные ВМ мигрируют с датастора на датастор в пределах одного хоста и со сменой хоста и датастора - без ошибок.

Может кто-то предложит более изящное решение.
источник

MP

Man Purse in OpenNebula - русскоговорящее сообщество
Всем привет
Никто не сталкивался с проблемой исчезновения дисков виртуальной машины после изменения её состояния?
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
Tatyana Bezpalchuk
Приветствую

Вчера столкнулась со следующей проблемой...
При миграции включеных ВМ с датастора на датастор ВМ переходит с статус FAILED

OpenNebula 5.10.1
драйвер linstor_un

Причина:
в скрипте  /var/lib/one/remotes/vmm/kvm/restore_linstor_un

выражение замены:
sed -i "s%$DS_LOCATION/[0-9]\+/$VM_ID/%$DS_LOCATION/$DS_ID/$VM_ID/%g" $SRC_XML

на финише преобразуется в такое
s%/var/lib/one//datastores/113/38/checkpoint/[0-9]\+/38/%/var/lib/one//datastores/113/38/checkpoint/113/38/%g /var/lib/one//datastores/113/38/checkpoint.xml

т.е. согласно ему DS_LOCATION=/var/lib/one//datastores/113/38/checkpoint и он пытается заменить в файле /var/lib/one//datastores/113/38/checkpoint.xml строки, соответствующие этому вхождению

Но в этом файле таких путей нет
в нем прописан путь /var/lib/one//datastores/115/38

соответственно замены не происходит

Ошибки в логах:
Fri Jan 17 07:57:19 2020 [Z0][VMM][I]: Command execution failed (exit code: 1): /var/lib/one/remotes/vmm/kvm/restore_linstor_un '/var/lib/one//datastores/113/38/checkpoint' 'csshv-one14' 'one-38' 38 csshv-one14
Fri Jan 17 07:57:19 2020 [Z0][VMM][E]: restore_linstor_un: Command "virsh --connect qemu:///system restore /dev/drbd/by-res/one-vm-38-checkpoint/0 --xml /var/lib/one//datastores/113/38/checkpoint.xml" failed: error: Failed to restore domain from /dev/drbd/by-res/one-vm-38-checkpoint/0
Fri Jan 17 07:57:19 2020 [Z0][VMM][I]: error: Cannot access storage file '/var/lib/one//datastores/113/38/disk.1': No such file or directory
Fri Jan 17 07:57:19 2020 [Z0][VMM][E]: Could not restore from /dev/drbd/by-res/one-vm-38-checkpoint/0 on csshv-one14

(хотя физически перемещение файлов и линков ВМ на новый датастор происходит)

Решение:
Заменила строку
sed -i "s%$DS_LOCATION/[0-9]\+/$VM_ID/%$DS_LOCATION/$DS_ID/$VM_ID/%g" $SRC_XML

на
sed -i "s/[0-9]*\/$VM_ID/$DS_ID\/$VM_ID/g" $SRC_XML

Теперь включенные ВМ мигрируют с датастора на датастор в пределах одного хоста и со сменой хоста и датастора - без ошибок.

Может кто-то предложит более изящное решение.
Спасибо за баг репорт.
Похоже что проблема в том, что у вас по какой-то причине вычисляется неправильный DS_LOCATION
источник

TB

Tatyana Bezpalchuk in OpenNebula - русскоговорящее сообщество
вероятно так
позже проверю на других хостах с небулой
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
# ----
SED=sed
AWK=awk
# ----
SRC_PATH=/var/lib/one//datastores/113/38/checkpoint
DST_HOST=csshv-one14
DEPLOY_ID=one-38
VM_ID=38
# ----

DS_ID=$(echo $SRC_PATH | $AWK -F/ '{print $(NF-2)}')
DS_LOCATION=$(echo $SRC_PATH | $SED 's|\(/[^/]*\)\{2\}$||g')

- это кусок кода с твоими аргументами, достаточноый для вычисления DS_LOCATION
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
у меня он возвращает
/var/lib/one//datastores/113
похоже что у тебя:
/var/lib/one//datastores/113/38/checkpoint

такой же как и SRC_PATH
источник

TB

Tatyana Bezpalchuk in OpenNebula - русскоговорящее сообщество
спасибо за шаблон )
проверю позже

я еще твой старый шаблон для мониторинга небулы в заббиксе немножко подпилила
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
так что проблема скорее всего в sed 's|\(/[^/]*\)\{2\}$||g'
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
Tatyana Bezpalchuk
спасибо за шаблон )
проверю позже

я еще твой старый шаблон для мониторинга небулы в заббиксе немножко подпилила
присылай PR :)
источник

TB

Tatyana Bezpalchuk in OpenNebula - русскоговорящее сообщество
ок
попозже )
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
тем не менее а мы на прометея переключились
источник
2020 January 20

AM

Alberto Martí in OpenNebula - русскоговорящее сообщество
источник

AM

Alberto Martí in OpenNebula - русскоговорящее сообщество
@kvaps, congratulations for becoming an OpenNebula Community Champion 🧙‍♂️ (https://opennebula.org/community-champions/) and many thanks for your hard work in support of the project! 👏🏻
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
Alberto Martí
@kvaps, congratulations for becoming an OpenNebula Community Champion 🧙‍♂️ (https://opennebula.org/community-champions/) and many thanks for your hard work in support of the project! 👏🏻
источник
2020 January 22

MP

Man Purse in OpenNebula - русскоговорящее сообщество
Всем привет, если аттач диска зафейлился, как можно повторить попытку?
источник

КБ

Кирилл Бобров in OpenNebula - русскоговорящее сообщество
@kvaps почему у меня бекапы не делаются в OpenNebula, датастор на ceph. Жмекаю тейк снапшот, он чето долго думает, как будто бы сделал, но если выйти из вкладки снапшот и опять зайти снапшота нету. В какую мне сторону капать?
источник

k

kvaps in OpenNebula - русскоговорящее сообщество
Man Purse
Всем привет, если аттач диска зафейлился, как можно повторить попытку?
смотри логи виртуалки, пробуй вручную повторить зафейленную команду, можно даже через bash -x
источник