Перенос файловой системы на физический том меньшего объема без остановки системы

Освобождение дискового пространства без простоев в работе с помощью Logical Volume Manager (LVM)

IBM® AIX® позволяет легко уменьшить размер файловой системы в онлайновом режиме для высвобождения неиспользуемого дискового пространства, которое затем можно выделить под другие файловые системы, входящие в группу томов. Однако если вам необходимо уменьшить размер физического тома, например, сжать логическое устройство LUN в сети хранения данных SAN, то данные, хранящиеся на физическом томе AIX, могут повредиться. Решение этой проблемы заключается в создании нового физического тома меньшего объема, его добавлении в группу томов и последующей миграции исходной файловой системы при помощи утилит менеджера логических томов (Logical Volume Manager, LVM), таких как mklvcopy или migratepv. После удаления исходного физического тома из группы томов можно удалить для него все сопоставления и использовать его для других задач в сети хранения данных SAN.

Энтони Инглиш, ведущий специалист по AIX, Freelance contractor

фото Энтони ИнглишаЭнтони Инглиш (Anthony English) – независимый консультант, живущий в Сиднее, Австралия. Он работает с AIX-системами с 1991 года и публикует статьи в своем блоге на портале IBM developerWorks и на сайте AIX Down Under. Он также является обладателем звания IBM Champion for Power Systems. С Энтони можно связаться через его почтовый ящик anthonyenglish@levitar.com.au.



03.07.2013

Задача: уменьшить размер физического тома

Менеджер логических томов IBM AIX обладает рядом возможностей, позволяющих высвободить неиспользуемое дисковое пространство без простоев в работе. Вы можете уменьшать размеры файловых систем с помощью утилиты chfs, удалять неиспользуемые физические тома из групп томов, после чего размещать устройства хранения где-то в других местах.

Если же вам необходимо уменьшить размер физического тома AIX для высвобождения неиспользуемого дискового пространства, то данные на этом физическом томе будут повреждены. Если в вашей сети хранения данных имеется логическое устройство (LUN) с большим количеством неиспользуемых физических разделов, вы можете создать резервную копию данных, уменьшить размер LUN и восстановить данные на новый физический том меньшего объема. Однако такой способ может привести к недопустимому простою в работе. Если после чистки данных необходимо высвободить дисковое пространство на устройстве LUN, то эта процедура должна быть как можно более незаметна.


Решение: перенос данных на новый физический том меньшего размера

Возможно, вам не удастся уменьшить размер уже используемого физического тома, но вы можете создать новое устройство LUN меньшего объема, добавить его в существующую группу томов и затем переместить данные с большего физического тома на меньший. После этого исходный физический том можно удалить из группы томов. Жесткий диск можно удалить из базы Object Data Manager (ODM) при помощи команды rmdev. После этого можно использовать хранилище SAN для каких-то других целей.

Для решения этой задачи нам потребуется новый физический том подходящего объема с необходимыми характеристиками, который будет добавлен в существующую группу томов. Он должен иметь объем, достаточный для хранения всех данных, хранящихся на исходном физическом томе (т. е. для хранения используемых физических разделов). Кроме того, нельзя использовать конфигурацию с чередованием логических томов, препятствующим созданию копии логического тома с помощью утилиты mklvcopy.

В нашем примере группа томов называется datavg и занимает на физическом томе 50 ГБ. Команда lspv показывает общий размер физического тома, а также свободные и используемые физические разделы (см. листинг 1).

Листинг 1. Просмотр характеристик физического тома
# lspv hdisk1
PHYSICAL VOLUME:    hdisk1                   VOLUME GROUP:     datavg
PV IDENTIFIER:      00cb07a45a12b4ca VG IDENTIFIER     00cb07a400004c00000001345a26db3e
PV STATE:           active
STALE PARTITIONS:   0                        ALLOCATABLE:      yes
PP SIZE:            512 megabyte(s)          LOGICAL VOLUMES:  1
TOTAL PPs:       99 (50688 megabytes)     VG DESCRIPTORS:   2
FREE PPs:         0 (0 megabytes)          HOT SPARE:        no
USED PPs:        99 (50688 megabytes)     MAX REQUEST:      256 kilobytes
FREE DISTRIBUTION:  00..00..00..00..00
USED DISTRIBUTION:  20..20..19..20..20
MIRROR POOL:        None

В системе присутствует расширенная журналируемая файловая система (JFS2) под названием /scratch общим объемом в 49.50 ГБ, из которых свободно более 35 ГБ. Эта файловая система была создана с журналом INLINE JFS2:

# df -gI /scratch
Filesystem    GB blocks      Used      Free %Used Mounted on
/dev/scratchlv     49.50     14.20     35.30   29% /scratch

Важные замечания

Рассматриваемое решение применимо только к логическим томам без чередования данных (striping) на уровне LVM. Чередование данных в LVM накладывает ряд ограничений, рассмотрение которых выходит за рамки этой статьи. В нашем примере файловая система использует журнал INLINE JFS2.

Кроме того, это решение предполагает наличие хранилища с объемом, достаточным для создания нового устройства LUN в сети хранения данных, обладающего аналогичными производительностью и избыточностью, при которых конечный результат не повлияет на время отклика системы. Новое устройство LUN должно иметь достаточный объем для переноса физических разделов с исходного устройства LUN большего объема.

Уменьшение размера файловой системы

Поскольку данные файловой системы /scratch занимают менее 30% от ее объема, можно уменьшить ее размер с помощью утилиты chfs. Следующая команда уменьшает размер файловой системы на 30 ГБ:

# chfs -a size=-30G /scratch
Filesystem size changed to 40894464
Inlinelog size changed to 78 MB.

Теперь файловая система занимает на диске объем в 19.50 ГБ:

# df -gI /scratch
Filesystem    GB blocks      Used      Free %Used Mounted on
/dev/scratchlv     19.50     14.08      5.42   73% /scratch

Команда lspv в листинге 2 показывает, что в результате этой операции на физическом томе освободилось несколько физических разделов:

Листинг 2. Утилита lspv показывает наличие свободных физических разделов
# lspv hdisk1
PHYSICAL VOLUME:    hdisk1                   VOLUME GROUP:     datavg
PV IDENTIFIER:      00cb07a45a12b4ca VG IDENTIFIER     00cb07a400004c00000001345a26db3e
PV STATE:           active
STALE PARTITIONS:   0                        ALLOCATABLE:      yes
PP SIZE:            512 megabyte(s)          LOGICAL VOLUMES:  1
TOTAL PPs:          99 (50688 megabytes)     VG DESCRIPTORS:   2
FREE PPs:        60 (30720 megabytes)     HOT SPARE:        no
USED PPs:           39 (19968 megabytes)     MAX REQUEST:      256 kilobytes
FREE DISTRIBUTION:  00..01..19..20..20
USED DISTRIBUTION:  20..19..00..00..00
MIRROR POOL:        None

Добавление физического тома меньшего объема в группу томов

Следующий шаг – это добавление нового физического тома меньшего объема в существующую группу томов. Этот физический том должен иметь, как минимум, такую же избыточность и производительность ввода/вывода, что и исходный физический том большего объема. Например, у обоих томов должны совпадать конфигурации RAID-массивов. Все остальные характеристики (например, глубина очереди) должны быть заданы таким образом, чтобы производительность нового физического тома соответствовала производительности исходного.

Создайте новое устройство LUN и разместите его в логическом разделе AIX (LPAR). В этом примере размер нового устройства LUN составляет 20 ГБ:

# cfgmgr

Из вывода команды lspv видно, что новый диск называется hdisk2 (см. листинг 3) и пока еще не входит в состав группы томов.

Листинг 3. Просмотр информации о новом диске
# lspv
hdisk0          00c5a47e3f356f3c                    rootvg          active
hdisk1          00cb07a45a12b4ca                    datavg          active
hdisk2          none                                None

С помощью команды getconf можно узнать объем диска, даже если он еще не добавлен в группу томов. Объем диска выводится в мегабайтах:

# getconf DISK_SIZE /dev/hdisk2
20480

Добавьте диск в существующую группу томов с помощью команды extendvg:

# extendvg datavg hdisk2
0516-1254 extendvg: Changing the PVID in the ODM.

Копирование или перенос логических разделов на новый физический том

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

mklvcopy -k scratchlv 2

Перенос вместо копирования

Вместо копирования вы можете перенести логический том с помощью команды migratepv. За дополнительной информацией обратитесь к разделу Ресурсы.

У команды mklvcopy есть и другие опции. Например, можно отложить синхронизацию на более удобное время. Также можно выбрать политику распределения дисков. Всю необходимую информацию вы можете найти в официальной документации команды mklvcopy (см. раздел Ресурсы).

Удаление данных с исходного физического тома

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

rmlvcopy scratchlv 1 hdisk1

С помощью команды lspv можно убедиться в том, что на исходном физическом томе не осталось используемых физических разделов. В противном случае с помощью команды lspv –lИМЯ_ФИЗИЧЕСКОГО_ТОМА можно просмотреть, какие логические тома присутствуют на физическом томе. После того как вы убедитесь в том, что все физические разделы перемещены на другой физический том, исходный физический том можно удалить из группы томов с помощью команды reducevg:

reducevg datavg hdisk1

Также вы сможете удалить исходный физический том большего объема из базы ODM с помощью команды rmdev:

rmdev -d -l hdisk1

Наконец, можно удалить устройство LUN или использовать его для каких-то других целей.


Устранение простоев

Как видите, возможности менеджера логических томов LVM позволяют перемещать данные даже на диски меньшего объема, не останавливая работу системы. Используя возможности копирования и миграции данных LVM, можно обеспечить непрерывную работу системы, параллельно перераспределяя дисковое пространство в соответствии с возникающими задачами.

Ресурсы

Научиться

Обсудить

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Профиль создается, когда вы первый раз заходите в developerWorks. Информация в вашем профиле (имя, страна / регион, название компании) отображается для всех пользователей и будет сопровождать любой опубликованный вами контент пока вы специально не укажите скрыть название вашей компании. Вы можете обновить ваш IBM аккаунт в любое время.

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=AIX и UNIX, Open source
ArticleID=936545
ArticleTitle=Перенос файловой системы на физический том меньшего объема без остановки системы
publish-date=07032013