
Как и многие другие, я рассматриваю возможность создания «частного облака» с использованием OpenStack или VMware.
VMware vMotion имеет отличную функцию, которая позволяет выполнять динамическую миграцию виртуальных машин даже без общего хранилища. Я опробовал эту функцию в лабораторной среде, и она работает хорошо. Эта функция не лишена недостатков, но она привлекательна для сайтов, которым нужна простая среда виртуальных машин и которые не хотят тратиться на сложность и стоимость общего хранилища. Общее хранилище может легко добавить 50–100 тыс. долларов к стоимости виртуальной/облачной инфраструктуры. Дополнительная информация об этой функции доступна по адресу:
- Документация ESXi и vCenter Server 5.1 > Управление сервером vCenter и хостом > Миграция виртуальных машин в веб-клиенте vSphere
- Techtarget: неразделенная живая миграция.
Предлагает ли OpenStack, использующий KVM, аналогичную функцию? Может ли OpenStack выполнять живую миграцию без общего хранилища? KVM — это гипервизор по умолчанию для OpenStack, и мы предпочли бы придерживаться его, если только нет веской причины использовать что-то другое.
решение1
OpenStack поддерживаетживая миграция без общего хранилища (с резервированием):
Теоретически, живую миграцию можно выполнить с помощью необщего хранилища, используя функцию, известную как миграция живых блоков KVM. Однако это малоизвестная функция в OpenStack, с ограниченным тестированием по сравнению с живой миграцией, и она планируется к прекращению в KVM upstream.
Однако этот документ неполный. Одна реализация живой миграции была признана устаревшей, но была сделана новая (и лучшая) реализация.
Там былонекоторое обсуждениеоб этом в почтовой рассылке Openstack за апрель 2013 г. Дэниел Берранж говорит:
То, что я написал выше о существующем impl, по-прежнему верно. Новый код миграции блоков теперь объединен с libvirt и использует сервер NBD, встроенный в процесс QMEU todo block migration. С точки зрения API он должен работать так же, как существующий устаревший код миграции блоков. Так что если у вас достаточно новый libvirt и достаточно новый KVM, он, вероятно, должен «просто работать» с openstack без необходимости вносить какие-либо изменения в код в nova. Хотя я сам это не проверял.