Home » Виртуализация » XenServer » Удаление локального хранилища (local storage) в XenServer 6.5

Удаление локального хранилища (local storage) в XenServer 6.5

Понадобилось мне как-то раз пересоздать raid на сервере с гипервизором Xenserver 6.5. Для этого нужно было отключить и удалить все локальные хранилища, пересоздать рейд и подключить заново новые storages. Задача простая, но как это часто бывает с XenServer, выполнить ее из панели управления нельзя, нужно лезть в консоль и выполнять кучу громоздких команд.

Приступаем к работе. Освобождаем хранилища, которые будем удалять. Для этого надо остановить и куда-нибудь перенести все виртуальные машины с них, иначе ничего не выйдет. Когда очистите сторейджи, можно приступать к работе.

Первым делом надо выяснить UUID отключаемых хранилищ:

# xe sr-list

uuid ( RO) : 4489372b-0fd2-7af6-1093-629b572502fd
name-label ( RW): RAID1-01
name-description ( RW):
host ( RO): xen02
type ( RO): lvm
content-type ( RO): user

uuid ( RO) : dda2990b-70eb-17e5-5021-826f36b000db
name-label ( RW): RAID1-02
name-description ( RW):
host ( RO): xen02
type ( RO): lvm
content-type ( RO): user

У вас вывод будет скорее всего длиннее, там будут подключенные iso репозитории, двд дисковод и прочее. Я все это вырезал, оставил только 2 local storage, которые буду удалять: RAID1-01 и RAID1-02. Записываем куда-нибудь их uuidы.

Дальше нам нужно получить уиды от Physical Block Device (PBD). Выполняем команды для каждого storage:

# xe pbd-list sr-uuid=4489372b-0fd2-7af6-1093-629b572502fd
uuid ( RO) : 7b4d9a8d-e5d6-2610-7a29-836839ba77c3
host-uuid ( RO): c1413f35-0611-44cb-84cc-6808dd8fad42
sr-uuid ( RO): 4489372b-0fd2-7af6-1093-629b572502fd
device-config (MRO): device: /dev/md10
currently-attached ( RO): true

# xe pbd-list sr-uuid=dda2990b-70eb-17e5-5021-826f36b000db
uuid ( RO) : 6b814cb2-8bd3-217f-d10f-3e91630a007a
host-uuid ( RO): c1413f35-0611-44cb-84cc-6808dd8fad42
sr-uuid ( RO): dda2990b-70eb-17e5-5021-826f36b000db
device-config (MRO): device: /dev/md11
currently-attached ( RO): true

Сохраняем полученные uuid от pbd. Отключаем их с помощью команд:

# xe pbd-unplug uuid=7b4d9a8d-e5d6-2610-7a29-836839ba77c3
# xe pbd-unplug uuid=6b814cb2-8bd3-217f-d10f-3e91630a007a

В этом режиме хранилища будут существовать в отключенном виде. Их еще можно будет подключить обратно. Если они вам точно больше не нужны, то удаляем их:

# xe pbd-destroy uuid=7b4d9a8d-e5d6-2610-7a29-836839ba77c3
# xe pbd-destroy uuid=6b814cb2-8bd3-217f-d10f-3e91630a007a

Поле удаления они все равно продолжают висеть в XenCenter, хотя сделать с ними уже ничего нельзя. Чтобы они полностью исчезли, забываем их:

# xe sr-forget uuid=4489372b-0fd2-7af6-1093-629b572502fd
# xe sr-forget uuid=dda2990b-70eb-17e5-5021-826f36b000db

Все, теперь их нет в системе. Можно разбирать mdadm массив и собирать с новыми параметрами. Потом стандартным образом подключать новые local storage к xenserver.

XenServer в плане управления не очень удобная система. В бесплатной версии практически все действия по управлению, кроме создания виртуальных машин, требуют каких-то действий в консоли. Но с другой стороны, мы имеем в основе практически стандартный линукс. Если у вас есть опыт работы с ним, то вы сможете оценить удобства, которые из этого вытекают. К примеру, вы без проблем можете разместить гипервизор на программный рейд mdadm. В случае бюджетного железа это очень существенный плюс. Сервер реально получает отказоустойчивость, я много раз проверял подобные конфигурации.

Вы легко можете подключить UPS APC к серверу и управлять им с помощью apcupsd. Это очень удобно. В бесплатных версиях vmware или hyper-v вам будет значительно сложнее реализовать подобный функционал. А в случае с рейдом просто нет шансов установить гипервизор на рейд, если его не поддерживает железо. Постараюсь в будущем поподробнее описать работу с xenserver. У нас он почему-то не очень популярен, хотя среди бесплатных гипервизоров для малого и среднего бизнеса он может быть весьма полезен.


Помогла статья? Есть возможность отблагодарить автора

Добавить комментарий

Ваш e-mail не будет опубликован.