Игорь Олемской — практические заметки по системному администрированию Linux CentOS

Hetzner — создаем диск на 9 Tb под CentOS

2 комментария

В Hetzner существует возможность аренды серверов с большими дисками по 3 Tb. Ниже пойдет речь о том, как запустить сервер с 4 x 3 Tb Software RAID-5 и создать диск размером 9 Tb.

Заказываем RESCUE-mode из панели управления Hetzner.
Заходим по SSH и запускаем установку ОС из образа:

installimage

Выбираем CentOS 6 64bit, а в файле конфигурации прописываем следующие параметры:

SWRAIDLEVEL 1
PART /grub ext3 128M
PART swap swap 8G
PART / ext3 30G
PART /vz ext4 all

После установки запрашиваем еще раз в панели управления Hetzner RESCUE-mode и запускаем

reboot

После перезагрузки удаляем ненужные массивы:

mdadm -S /dev/md0
mdadm -S /dev/md3

mdadm --zero-superblock /dev/sda1
mdadm --zero-superblock /dev/sdb1
mdadm --zero-superblock /dev/sdc1
mdadm --zero-superblock /dev/sdd1
mdadm --zero-superblock /dev/sda5
mdadm --zero-superblock /dev/sdb5
mdadm --zero-superblock /dev/sdc5
mdadm --zero-superblock /dev/sdd5

Конвертируем partition table из MSDOS в GPT (запускаем и нажимаем «w», после чего подтверждаем):

gdisk /dev/sda
gdisk /dev/sdb
gdisk /dev/sdd
gdisk /dev/sdc

Задаем загрузочный раздел для GRUB:

parted /dev/sda set 1 bios_grub on
parted /dev/sdb set 1 bios_grub on
parted /dev/sdc set 1 bios_grub on
parted /dev/sdd set 1 bios_grub on

Дублируем таблицу партиций из GPT в MSDOS:

apt-get install gptsync
gptsync /dev/sda
gptsync /dev/sdb
gptsync /dev/sdc
gptsync /dev/sdd

Загружаем GRUB и перезагружаем сервер:

mount /dev/md2 /mnt
mount --bind /sys /mnt/sys
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
chroot /mnt
grub-install /dev/sda
grub-install /dev/sdb
grub-install /dev/sdd
grub-install /dev/sdc

Удаляем из /etc/fstab следующие строки:

/dev/md0 /grub ext3 defaults 0 0

И перезагружаем:

reboot

Устанавливаем parted:

yum install -y parted

Удаляем маленькие партиции, создаем большие и перезагружаем сервер (чтобы перечиталась таблица партиций):

parted /dev/sda rm 5
parted /dev/sdb rm 5
parted /dev/sdd rm 5
parted /dev/sdc rm 5

parted /dev/sda mkpart RAID ext4 40.9GB 2960GB
parted /dev/sdb mkpart RAID ext4 40.9GB 2960GB
parted /dev/sdd mkpart RAID ext4 40.9GB 2960GB
parted /dev/sdc mkpart RAID ext4 40.9GB 2960GB

parted /dev/sda set 4 raid on
parted /dev/sdb set 4 raid on
parted /dev/sdd set 4 raid on
parted /dev/sdc set 4 raid on
reboot

И, после перезагрузки, заново создаем RAID-5 с использованием всех 4-х дисков (ключи «--spare-devices=0» и «--force» принуждают mdadm использовать все 4 диска для RAID-5, в ином случае 4-й диск становится резервным):

mdadm --create /dev/md3 --raid-devices=4 --spare-devices=0 --force --level=5 /dev/sda4 /dev/sdb4 /dev/sdc4 /dev/sdd4

Записываем в /etc/mdadm.conf новые данные о массивах. Получаем новый вывод командой

mdadm --examine --scan

и копируем его в /etc/mdadm.conf.

Дальше проще всего обновить ядро. :-)
При обновлении ядра, создается новый initrd с правильным mdadm.conf, что исключает появление /dev/md127 вместо /dev/md3.
Для примера, устанавливаем vzkernel из репозитория openvz (этот файл можно положить в /etc/yum.repos.d/). И перезагружаем сервер.

yum install vzkernel
reboot

Создаем файловую систему

mkfs.ext4 -m0 /dev/md3

И дожидаемся, когда синхронизируется рейд:

watch cat /proc/mdstat

Похожие записи:

  1. Правильная установка GRUB на Software-RAID1
  2. Восстановление сбойного загрузочного диска в Linux RAID 1
  3. Adaptec 5405 and others on Centos 5
  4. Parsing mdadm output with paste
  5. Настройка nginx-passenger для CentOS

12.10.2011

Написал Игорь Олемской

Рубрики: Мои записи

2 комментария к 'Hetzner — создаем диск на 9 Tb под CentOS'

Подписаться на комментарии RSS или Trackback к 'Hetzner — создаем диск на 9 Tb под CentOS'.

  1. * чтобы перечитывать таблицу разделов без перезагрузки partprobe

    * наверное, опечатка «apt-get install gptsync» видимо, все же, «yum»? или это какая-то виртуализация с дебианом снаружи? (тогда прошу прощения)

    Victor

    24.01.2012 в 13:43

  2. apt-get — потому что RESCUE в Hetzner работает на Debian

Комментировать