Живая миграция LVM-Based виртуальных машин Xen c iSCSI на Debian Lenny , часть 2
Метки: Debian | Linux | LVM | Xen
Вторник, 19 мая 2009 г.
Просмотров: 13372
Подписаться на комментарии по RSS
4 Настраиваем доступ к общему хранилищу на серверах Xen
server1/server2:
Установим инициатор на server1 and server2:
aptitude install open-iscsi
Затем открываем файл /etc/iscsi/iscsid.conf...
vi /etc/iscsi/iscsid.conf
... и установим для параметра node.startup значение automatic:
[...] node.startup = automatic [...]
Перезапускаем инициатор:
/etc/init.d/open-iscsi restart
Теперь подключимся к таргету (iscsi.example.com):
iscsiadm -m discovery -t st -p 192.168.0.102
server1:~# iscsiadm -m discovery -t st -p 192.168.0.102 192.168.0.102:3260,1 iqn.2001-04.com.example:storage.lun1 server1:~#
iscsiadm -m node
server1:~# iscsiadm -m node 192.168.0.102:3260,1 iqn.2001-04.com.example:storage.lun1 server1:~#
Настройки стораджа храняться в файле /etc/iscsi/nodes/iqn.2001-04.com.example:storage.lun1/192.168.0.102,3260,1/default. Нам необходимо прописать в этом файле логин и пароль для доступа к инициатору. Вместо редактирования этого файла вручную, воспользуемся командой iscsiadm:
iscsiadm -m node --targetname "iqn.2001-04.com.example:storage.lun1" --portal "192.168.0.102:3260" --op=update --name node.session.auth.authmethod --value=CHAP iscsiadm -m node --targetname "iqn.2001-04.com.example:storage.lun1" --portal "192.168.0.102:3260" --op=update --name node.session.auth.username --value=someuser iscsiadm -m node --targetname "iqn.2001-04.com.example:storage.lun1" --portal "192.168.0.102:3260" --op=update --name node.session.auth.password --value=secret
Теперь залогинимся...
iscsiadm -m node --targetname "iqn.2001-04.com.example:storage.lun1" --portal "192.168.0.102:3260" --login
И выполним команду
fdisk -l
вы должы увидеть новый жесткий диск, который и является нашим iSCSI устройством (в этом примере на server1 /dev/sdf и /dev/sdc на server2):
server1:~# fdisk -l Disk /dev/sda: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00023cd1 Device Boot Start End Blocks Id System /dev/sda1 * 1 62 497983+ 83 Linux /dev/sda2 63 60801 487886017+ 5 Extended /dev/sda5 63 60801 487885986 8e Linux LVM Disk /dev/dm-0: 107.3 GB, 107374182400 bytes 255 heads, 63 sectors/track, 13054 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-0 doesn't contain a valid partition table Disk /dev/dm-1: 1073 MB, 1073741824 bytes 255 heads, 63 sectors/track, 130 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-1 doesn't contain a valid partition table Disk <span class="highlight">/dev/sdf</span>: 21.4 GB, 21474836480 bytes 64 heads, 32 sectors/track, 20480 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Disk identifier: 0x00000000 Disk /dev/sdf doesn't contain a valid partition table server1:~#
server2:~# fdisk -l Disk /dev/sda: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00036268 Device Boot Start End Blocks Id System /dev/sda1 * 1 62 497983+ 83 Linux /dev/sda2 63 60801 487886017+ 5 Extended /dev/sda5 63 60801 487885986 8e Linux LVM Disk /dev/dm-0: 107.3 GB, 107374182400 bytes 255 heads, 63 sectors/track, 13054 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-0 doesn't contain a valid partition table Disk /dev/dm-1: 1073 MB, 1073741824 bytes 255 heads, 63 sectors/track, 130 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-1 doesn't contain a valid partition table Disk <span class="highlight">/dev/sdc</span>: 21.4 GB, 21474836480 bytes 64 heads, 32 sectors/track, 20480 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Disk identifier: 0x00000000 Disk /dev/sdc doesn't contain a valid partition table server2:~#
Для использования этого устройства его необходимо отформатировать. Так как я хочу создать LVM-based виртуальные машины, я буду форматировать его в LVM:
server1:
fdisk /dev/sdf
server1:~# fdisk /dev/sdf Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0x353f5965. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. The number of cylinders for this disk is set to 20480. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help): <span class="highlight"><-- n</span> <span class="system">Command action e extended p primary partition (1-4)</span> <span class="highlight"><-- p</span> <span class="system">Partition number (1-4):</span> <span class="highlight"><-- 1</span> <span class="system">First cylinder (1-20480, default 1):</span> <span class="highlight"><-- ENTER</span> <span class="system">Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-20480, default 20480):</span> <span class="highlight"><-- ENTER</span> <span class="system">Using default value 20480 Command (m for help):</span> <span class="highlight"><-- t</span> <span class="system">Selected partition 1 Hex code (type L to list codes):</span> <span class="highlight"><-- L</span> <span class="system">0 Empty 1e Hidden W95 FAT1 80 Old Minix be Solaris boot 1 FAT12 24 NEC DOS 81 Minix / old Lin bf Solaris 2 XENIX root 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT- 3 XENIX usr 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT- 4 FAT16 <32M 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT- 5 Extended 41 PPC PReP Boot 85 Linux extended c7 Syrinx 6 FAT16 42 SFS 86 NTFS volume set da Non-FS data 7 HPFS/NTFS 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / . 8 AIX 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility 9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM df BootIt a OS/2 Boot Manag 50 OnTrack DM 93 Amoeba e1 DOS access b W95 FAT32 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O c W95 FAT32 (LBA) 52 CP/M 9f BSD/OS e4 SpeedStor e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs f W95 Ext'd (LBA) 54 OnTrackDM6 a5 FreeBSD ee EFI GPT 10 OPUS 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/ 11 Hidden FAT12 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b 12 Compaq diagnost 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 14 Hidden FAT16 <3 61 SpeedStor a9 NetBSD f4 SpeedStor 16 Hidden FAT16 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary 17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fd Linux raid auto 18 AST SmartSleep 65 Novell Netware b8 BSDI swap fe LANstep 1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid ff BBT 1c Hidden W95 FAT3 75 PC/IX Hex code (type L to list codes):</span> <span class="highlight"><-- 8e</span> <span class="system">Changed system type of partition 1 to 8e (Linux LVM) Command (m for help):</span> <span class="highlight"><-- w</span> <span class="system">The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. server1:~#</span>
После этого вывод команды
fdisk -l
должен выглядеть так:
server1:~# fdisk -l Disk /dev/sda: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00023cd1 Device Boot Start End Blocks Id System /dev/sda1 * 1 62 497983+ 83 Linux /dev/sda2 63 60801 487886017+ 5 Extended /dev/sda5 63 60801 487885986 8e Linux LVM Disk /dev/dm-0: 107.3 GB, 107374182400 bytes 255 heads, 63 sectors/track, 13054 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-0 doesn't contain a valid partition table Disk /dev/dm-1: 1073 MB, 1073741824 bytes 255 heads, 63 sectors/track, 130 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-1 doesn't contain a valid partition table Disk /dev/sdf: 21.4 GB, 21474836480 bytes 64 heads, 32 sectors/track, 20480 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Disk identifier: 0x353f5965 Device Boot Start End Blocks Id System /dev/sdf1 1 20480 20971504 8e Linux LVM server1:~#
Так как это общее хранилище, устройство /dev/sdc на server2 также должно измениться:
server2:
fdisk -l
server2:~# fdisk -l Disk /dev/sda: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00036268 Device Boot Start End Blocks Id System /dev/sda1 * 1 62 497983+ 83 Linux /dev/sda2 63 60801 487886017+ 5 Extended /dev/sda5 63 60801 487885986 8e Linux LVM Disk /dev/dm-0: 107.3 GB, 107374182400 bytes 255 heads, 63 sectors/track, 13054 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-0 doesn't contain a valid partition table Disk /dev/dm-1: 1073 MB, 1073741824 bytes 255 heads, 63 sectors/track, 130 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Disk /dev/dm-1 doesn't contain a valid partition table Disk /dev/sdc: 21.4 GB, 21474836480 bytes 64 heads, 32 sectors/track, 20480 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes Disk identifier: 0x353f5965 Device Boot Start End Blocks Id System /dev/sdc1 1 20480 20971504 8e Linux LVM server2:~#
Теперь инициализируем /dev/sdf1 на server1 для использования LVM и создадим группу томов vg_xen:
server1:
pvcreate /dev/sdf1
vgcreate vg_xen /dev/sdf1
Чтобы убедиться что новая группа доступна втором сервере, необходимо сначала разлогиниться с iSCSI а затем подключиться обратно:
server2:
iscsiadm -m node --targetname "iqn.2001-04.com.example:storage.lun1" --portal "192.168.0.102:3260" --logout
iscsiadm -m node --targetname "iqn.2001-04.com.example:storage.lun1" --portal "192.168.0.102:3260" --login
Затем запустить...
vgscan
server2:~# vgscan Reading all physical volumes. This may take a while... Found volume group "vg_xen" using metadata type lvm2 Found volume group "vg0" using metadata type lvm2 server2:~#
... и ...
vgchange -a y
server2:~# vgchange -a y 0 logical volume(s) in volume group "vg_xen" now active 2 logical volume(s) in volume group "vg0" now active server2:~#
... для активации vg_xen на server2.
На сегодня все... Заключительная часть статьи появится в ближайшем будущем.
Постовой
Вам нужен сайт, но у вас нет возможностей и желаний разбираться самому во всех тонкостях создания? Этого и не нужно, к чему засорять мозг ненужной информацией . Рекомендую заказать разработку сайта у профессионалов своего дела.
Оставьте комментарий!