Зеркалирование дисков загрузочной среды средствами Solaris Volume Manager.
Содержание Введение
1
Подготовка к выполнению зеркалирования
1
Зеркалирование
1
Разметка второго диска
1
Создание реплики metadb
2
Система имен
2
Создание метаустройств
2
Системные конфигурационные файлы
2
Загрузка со второго диска
5
Сервера на платформе SPARC
5
Сервера на платформе X86
5
Завершение зеркалирования
5
Зеркалирование дисков загрузочной среды средствами Solaris Volume Manager.
Введение Данный документ содержит пошаговую инструкцию по зеркалированию дисков загрузочной среды средствами Solaris Volume Manager и предполагает знание инженером, выполняющим данную операцию, принципов работы ОС Solaris 10 и в частности ПО Solaris Volume Manager. С подробной документации по данным продуктам можно ознакомиться на сайте Sun Microsystems в разделе Solaris 10 System Administrator Collection - http:// docs.sun.com/app/docs/coll/47.16. Данный документ предполагает наличие как минимум двух дисков в сервере, на один из которых произведена инсталляция ОС Solaris 10 в соответствии с требованиями методологии EIS. В примерах используются диски c0t0d0 - диск содержащий ОС Solaris и c1t0d0 - диск на который производится зеркалирование. Разбивка первого диска следующая: Slice
Usage
0
/
1
swap
3
/var
Подготовка к выполнению зеркалирования Перед началом работ необходимо: • Получить актуальный вывод explorer и сохранить его на другой машине. • Выполнить резервное копирование данных. • Убедиться в наличии способа загрузить систему с альтернативного источника (cdrom, net, clone disk). С помощью программы format необходимо убедиться в доступности системе двух дисков, которые соотвествуют следующим требованиям: • Имеют одинаковую геометрию (имеют одинаковые значения параметров alt, hd и sec). В случае расхождения (особенно это касается платформы X86) следует воспользоваться командой type программы format. • Диск на который будет производиться зеркалирование имеет размер равный или больший чем суммарный объем слайсов используемых на исходном. В случае когда второй диск меньше чем требуется можно уменьшить размер слайса используемого как swap или одной из файловых систем. • Исходный диск имеет как минимум один неиспользуемый слайс. Если используются все слайсы можно объединить несколько файловых систем в одну.
Зеркалирование Разметка второго диска Необходимо перенести (один к одному) на второй диск конфигурацию слайсов с первого. В случае полностью идентичных дисков это удобно сделать с помощью пайпа между prtvtoc и fmthard: prtvtoc /dev/dsk/c0t0d0s0 | fmthard -s - /dev/rdsk/c1t0d0s0 В противоположном случае это необходимо сделать вручную средствами программы format.
Илья Воронин , 24082006.0
Зеркалирование дисков загрузочной среды средствами Solaris Volume Manager.
Создание реплики metadb На каждом диске необходимо выделить слайс (предпочтительно под номером 7) для хранения данных реплики metadb. Слайс должен иметь размер равный 12Мб (8192 блоков (размер одной реплики metadb) × 3) с округлением в большую сторону по границе цилиндра. Если дисковое пространство размечено полностью можно уменьшить слайс используемый как swap. После этого выполняется создание реплик metadb: # metadb -a -f -c 3 c0t0d0s7 c1t0d0s7
Система имен При создании метаустройств на дисках загрузочной среды необходимо придерживаться следующей системы имен: для метайстройств зеркал имя должно иметь вид dX0, где X это номер зеркалируемого слайса плюс единица. Т.е. для зеркала содержащего слайсы c0t0d0s0 и c1t0d0s0 имя метаустройства должно выглядеть как d10. Для устройств подзеркал имя метаустройста должно иметь вид dXY где X это номер зеркалируемого слайса плюс единица а Y номер диска. Т.е. для слайса c0t0d0s0 имя метаустройства подзеркала будет иметь вид d11 а для слайса c1t0d0s0 - d12.
Создание метаустройств С помощью программы metainit для всех слайсов (на первом и втором дисках) выполняется создание метаустройств подзеркал с именами соответвующими описанной в предыдущем разделе системе: metainit -f d11 1 1 c0t0d0s0 metainit -f d21 1 1 c0t0d0s1 metainit -f d41 1 1 c0t0d0s3 metainit d12 1 1 c1t0d0s0 metainit d22 1 1 c1t0d0s1 metainit d42 1 1 c1t0d0s3 После этого создаются метаустройства зеркал, содержащие только одно устройство подзеркала: metainit d10 -m d11 metainit d20 -m d21 metainit d40 -m d41 Для обеспечения возможности загрузки с зеркала корневого слайса выполняется команда metaroot: metaroot d10
Системные конфигурационные файлы В соотвествии с произведенными изменениями корректируется файл /etc/vfstab - пути к дискам заменяются на соответствующие им пути к метаустройствам зеркал. С помощью утилиты dumpadm корректируется конфигурация дампера ядра: dumpadm -d /dev/md/dsk/d20 В файл /etc/system добавляются следующие параметры: set md:mirrored_root_flag = 1 set md_mirror:md_resync_bufsz = 2048 set md:md_maxphys = 1048576
Илья Воронин , 24082006.0
Зеркалирование дисков загрузочной среды средствами Solaris Volume Manager. set maxphys = 1048576
Загрузка со второго диска Сервера на платформе SPARC Для обеспечения возможности загрузки со второго диска выполняется запись загрузочного сектора. Для серверов на платформе SPARC выполняется команда installboot: installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c1t0d0s0 корректируются следующие параметры nvram: use-nvramrc?=true nvramrc=”devalias rootdisk /pci@8,700000/ide@6/sd@0,0:a rootmirror /pci@9,700000/ide@6/sd@0,0:a” boot-device=”rootdisk rootmirror”
Сервера на платформе X86 Для обеспечения возможности загрузки со второго диска выполняется запись загрузочного сектора. Для серверов на платформе X86 выполняется команда installgrub: installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t0d0s0 Корректируется конфигурационный файл grub - /boot/grub/menu.lst: добавляется еще один раздел title: title Solaris 10 1/06 s10x_u1wos_19a X86 (hd1) root (hd1,0,a) kernel /platform/i86pc/multiboot module /platform/i86pc/boot_archive А также добавляется опция fallback: fallback X Где X - номер раздела title, описывающий загрузку со второго диска (нумерация с 0).
Завершение зеркалирования На этом этапе производится перезагрузка системы после которой, с помощью команды metaattach, подключаются подзеркала со второго диска: metaattach d10 d12 metaattach d20 d22 metaattach d40 d42 Производится тестирование загрузки с обоих дисков. Выполняется резервное копирование системы.
Илья Воронин , 24082006.0