Назад | Перейти на главную страницу

Облако Novell Xen

Я пытаюсь настроить мини-облако с Novell Xen (SLES 10 SP2, так что это Xen 3.2.x).

У меня есть сервер iSCSI сзади, использующий цель Starwind 4.1. Проблема в том, что когда я пишу на сервер iSCSI с первого хоста, я не вижу файл на втором хосте и наоборот.

Я также попробовал Citrix XenServer, который использует LVMoiSCSI, который работает без проблем.

Может кто подскажет, что делать с Novell Xen. Я не привык работать с LVM, поэтому я хотел бы попробовать другие вещи, прежде чем начать с LVM.

Я не использовал Novell Xen или Starwind, я работал с XenServer, а также с Xen, входящим в состав Debian и RHEL5. Я не пробовал LVMoiSCSI при тестировании XenServer, поскольку в то время у меня не было доступного хоста iSCSI. Тем не менее, исходя из моего понимания iSCSI и LVM, я определенно могу сделать обоснованное предположение, которое может помочь вам в выявлении проблемы.

По моему опыту, iSCSI был «единственной системой, которую можно монтировать за раз», если только не использовалась файловая система с поддержкой кластера, такая как GFS. На моих собственных серверах Xen я использую LVM, чтобы вырезать массив RAID, который будет использоваться моими domU в качестве физических устройств. Я предполагаю, что Citrix включил это в свою поддержку LVMoiCSCSI, чтобы сделать то же самое с томом iSCSI. Мне обязательно придется попробовать это и посмотреть, смогу ли я подтвердить свои подозрения.

Если Citrix LVMoiSCSI не делает ничего особенного, кроме обработки iSCSI LUN как логического тома (LV) (т. Е. Ничего, что делает его осведомленным о кластере), вы можете попытаться заставить свои системы Novell Xen делать то же самое. LVM по умолчанию поддерживает кластер, поэтому каждый созданный LV может быть отдельно смонтирован на разных серверах, в то время как все они имеют доступ к целевому LUN iSCSI.

Сам LVM довольно прост в настройке и работе, а команды должны быть простыми в любом дистрибутиве Linux.

Первое, что вам нужно сделать, что, как я предполагаю, вы уже сделали, - это убедиться, что сервер имеет доступ к iSCSI LUN и видит его как локальный диск SCSI.

Как только вы сможете увидеть диск iSCSI хотя бы в одной из систем, вы захотите инициализировать его как физический том (PV):

pvcreate /dev/sdX

Разумеется, замените устройство любым устройством, которое ваша система видит для iSCSI LUN. По моему опыту, это иногда меняется от перезагрузки к перезагрузке.

Когда ваш PV инициализирован, пора создать группу томов (VG) и указать ей использовать ваш инициализированный PV:

vgcreate XenVG /dev/sdX

Где XenVG будет вашим именем VG и будет использовать то же устройство, которое вы использовали на этапе инициализации PV. Теперь, если ты бежишь vgdisplay вы должны увидеть что-то вроде:

--- Volume group ---
VG Name               XenVG
System ID             
Format                lvm2
Metadata Areas        1
Metadata Sequence No  9
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                1
Open LV               1
Max PV                0
Cur PV                1
Act PV                1
VG Size               204.72 GB
PE Size               32.00 MB
Total PE              6551
Alloc PE / Size       640 / 20.00 GB
Free  PE / Size       5911 / 184.72 GB
VG UUID               tMHTWV-1dYR-4yB1-tmS5-q1Tk-i3Yx-6l1YLa

Это было взято с одного из моих действующих серверов Xen с уже настроенным одним LV-слайсом 20 ГБ. С этого момента нужно просто создать LV для ваших дисков domU. В простейшем виде это можно сделать так:

lvcreate -L <size> -n <LV name> XenVG

Настройка на желаемую емкость диска для domU, и я обычно устанавливаю равно имени хоста domU, для которого я его создаю.

Затем, когда вы перейдете к установке вашего domU, вы должны указать диск как /dev/XenVG/<LV name> и Xen будет рассматривать его как физическое устройство.

Это должно позволить вам монтировать LV на разных серверах Xen из одного iSCSI LUN. Невозможно установить и использовать один и тот же LV на двух машинах одновременно; однако, если у вас есть какая-то форма настройки высокой доступности, вы можете заставить узлы запускать / останавливать domU на разных машинах для поддержания доступности виртуальных серверов.

Для вышеперечисленных команд LVM есть также много других вариантов, я просто привел простейшие формы. Я настоятельно рекомендую прочитать справочные страницы, и в Интернете также есть несколько хороших LVM HowTos.

Большое спасибо за то, что нашли время написать этот небольшой урок. LVM отлично смотрится в использовании. Хотя я уже решил свою проблему, буду иметь это в виду.

Я просто использовал OCFS2 (кластерная файловая система Oracle), которая, как и GFS, поддерживает кластеры. У меня это отлично работает, и поскольку это всего лишь тестовая установка, я не буду менять ее на lvm.