Я пытаюсь настроить мини-облако с 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.