8 disk ile veya 4 disk ile ile veya canin nasil isterse Proxmox Uzerinde Software Raid 10 Kurulumu

kurulum icin elimizde uygun bir makinamiz var.

bu makinamizda 4 adet 2tb data diskimiz mevcut,

biz bu disklerimizi software raid 10 olarak proxmox altinda calistirmak istiyoruz

daha onceki bir yazimda once debian wheezy kurmus  daha sonra onun uzerine lvm raid yapip isi hallettmistim

fakat bu bana cazip gelmiyor, bu tur raid kurulumu guncellemelerde sorun cikartiyor.

O yuzden bu kez yapmak istedigim oncelikle 4 diskimizin 1.cisine normal sekilde proxmox kurduktan sonra sistemi proxmox calisirken raid 10 haline getirmek

adimlar su sekildedir:

1- guncel proxmox isosu download edilir
2- /dev/sda uzerine normal proxmox kurulumu yapilir
3- hersey calisir hale geldikden sonra ssh ile sisteme baglanilir
4- proxmox icin gerekli repo ayarlari yapilir ve sistem guncellenir son olarak mdadm paketleri sisteme yuklenir

nano /etc/apt/sources.list
------------
deb http://ftp.de.debian.org/debian wheezy main contrib
# security updates
deb http://security.debian.org/ wheezy/updates main contrib
# PVE pve-no-subscription repository provided by proxmox.com, NOT recommended for production use
deb http://download.proxmox.com/debian wheezy pve-no-subscription
-------------

apt-get update
apt-get dist-upgrade

apt-get install mdadm

5-bu asamada partition tablolarimizi disk1 den disk2,3,ve 4 e kopyalayacagiz
ancak bundan once eger sistemde olurda daha onceden bir mdadm yapilandirmasi varsa eski disklerde bunu halletmek icin diskleri sifirlayalim, bu komut disklerde eski partitionlari ve mbr yi silecek

# dd if=/dev/zero of=/dev/sdx bs=512 count=1

bundan sonra partition tablolarimizi kopyalayalim 4disk icin su sekilde

sfdisk -d /dev/sda | sfdisk -f /dev/sdb
sfdisk -d /dev/sda | sfdisk -f /dev/sdc
sfdisk -d /dev/sda | sfdisk -f /dev/sdd

NOT NOT NOT // GUNCELLEME GUNCELLEME

EGER PARTITIONLARIMIZ OLDUDA GPT OLDU ISE

gdisk kur

Copy the partition scheme from /dev/sda to /dev/sdb:

sgdisk -R=/dev/sdb /dev/sda

buda zorunlu Now randomizes the GUID:

gdisk -G /dev/sdb

 

6- 3 diskimizdeki partition formatini RAID olarak belirleyelim

sfdisk -c /dev/sdb 1 fd
sfdisk -c /dev/sdb 2 fd
sfdisk -c /dev/sdc 1 fd
sfdisk -c /dev/sdc 2 fd
sfdisk -c /dev/sdd 1 fd
sfdisk -c /dev/sdd 2 fd

NOT NOT NOT // GUNCELLEME GUNCELLEME

GPT icin soyle yaptim
Belki baska kolay yolu vardir , bulamadim noobum.

gdisk /dev/sdb
t ye bas
partition sec 1 > FD00 yap

tum disklerdeki tum partititonlara yapinca w kaydet q cik

7- Raid yapilandirmamizi INITIALIZE edelim
ONEMLI NOT: eger daha onceden disk yapilandirmamizda raid kullanmis isek
mdadm yi sisteme entegre ettigimizde bunlar mdadm.conf dosyamiz icine otomatik olarak yazilmis olabilir, o yuzden raid yapimizi initialize ettikten sonra /etc/mdadm/mdadm.conf dosyamizi incelememiz gerek
eger gereksiz eski raid array uuid bilgisi var ise bunlari silmeli ve yeni yapiyi icine olusturmaliyiz.

mdadm --create /dev/md0 --level=1 --raid-disks=4 missing /dev/sdb1 /dev/sdc1 /dev/sdd1
mdadm --create /dev/md1 --level=10 --raid-disks=4 missing /dev/sdb2 /dev/sdc2 /dev/sdd2

conf dosyamiza goz atalim eski yapilar varsa silelim, yeni yapimizi kayit etmek icin

mdadm --examine --scan >> /etc/mdadm/mdadm.conf

islem tamamdir

8- /boot dizinimizi /dev/md0 uzerine tasiyalim ve fstab dosyamizi /dev/md0 dan boot edecek hale getirelim

mkfs.ext3 /dev/md0
mkdir /mnt/md0
mount /dev/md0 /mnt/md0
cp -ax /boot/* /mnt/md0

sonra

nano /etc/fstab su sekilde olmasi gerek, basitce UUID satirimizi devre disi birakiyoruz
-----------------
# /dev/pve/root / ext3 errors=remount-ro 0 1
/dev/pve/data /var/lib/vz ext3 defaults 0 1
#UUID=cc425576-edf6-4895-9aed-ccfd89aeb0fb /boot ext3 defaults 0 1
/dev/md0 /boot ext3 defaults 0 1
/dev/pve/swap none swap sw 0 0
proc /proc proc defaults 0 0
-------------------

9- sistemi reboot ediyoruz.
eger hersey yolunda giderse sistemimiz /dev/md0 uzerinden boot edecek demektir.
bravo ciddi bir asamayi hallettik |:)

sistem acildikdan sonra gerekli kontrolleri yapalim

mount | grep boot
dedigimizde asagidaki gibi bir satir cikmasi gerek
/dev/md0 on /boot type ext3 (rw,relatime,errors=continue,user_xattr,acl,barrier=0,data=ordered)

bunu gorduysek islem tamam demektir.

10- simdi gruba /dev/md0 dan boot etmek istedigimizi soyleyelim kisaca asagidaki komutlari girelim


echo '# customizations' >> /etc/default/grub
echo 'GRUB_DISABLE_LINUX_UUID=true' >> /etc/default/grub
echo 'GRUB_PRELOAD_MODULES="raid dmraid"' >> /etc/default/grub
echo raid1 >> /etc/modules
echo raid10 >> /etc/modules
echo raid1 >> /etc/initramfs-tools/modules
echo raid10 >> /etc/initramfs-tools/modules
grub-install /dev/sda
grub-install /dev/sdb
grub-install /dev/sdc
grub-install /dev/sdd
update-grub
update-initramfs -u

islem tamam

11- simdi /dev/sda1 i raid arrayimiz icine katmaliyiz

sfdisk -c /dev/sda 1 fd
mdadm –add /dev/md0 /dev/sda1

12- simdiki adimdan once burada cok uzun vakit alacak bir lvm tasima islemi yapacagimizdan
screen
kurup calistirip bunun altinda islemleri yapmakta fayda var.

LVM yi /dev/md1 uzerine tasiyacagiz


pvcreate /dev/md1
vgextend pve /dev/md1
pvmove /dev/sda2 /dev/md1

pvmove cok uzun surecek. bu arada yatip uyumak en iyisi, ya da disari cikip hava alin. 2tb disk ve guncel bir islemci ile en az 2-3 saat surecektir 🙂

islem bittikten sonra sda2 uzerindeki pveyi reduce edip remove edecegiz

vgreduce pve /dev/sda2
pvremove /dev/sda2

13- en son asamada /dev/sda2 yide raid yapimiz icine katacagiz

sfdisk --change-id /dev/sda 2 fd
mdadm --add /dev/md1 /dev/sda2

14- bundan sonra raidimizin rebuild edisini guzel guzel izleyebiliriz 🙂

watch -n 5 cat /proc/mdstat

hatta dilersek bunu biraz hizlandirabiliriz

echo 800000 > /proc/sys/dev/raid/speed_limit_min
echo 1600000 > /proc/sys/dev/raid/speed_limit_max

gule gule kullaniniz.
PROXMOX SOFTWARE RAID 10 KURULUMUNUZ KULLANIMA HAZIRDIR

EK:
15– bu islemleri yaptiktan sonra df -h komutumuza makinamiz su sekilde yanit veriyor

Filesystem Size Used Avail Use% Mounted on
udev 10M 0 10M 0% /dev
tmpfs 3.2G 416K 3.2G 1% /run
/dev/mapper/pve-root 20G 1.2G 18G 7% /
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 6.3G 3.1M 6.3G 1% /run/shm
/dev/mapper/pve-data 1.8T 196M 1.8T 1% /var/lib/vz
/dev/md0 495M 58M 412M 13% /boot
/dev/fuse 30M 12K 30M 1% /etc/pve

/var/lib/vz/ 2TB mi? bir yerde yanlislik var 4 TB olmali idi 🙂
Eh normal, Kalan raid 10 diskimiz bos vg alani olarak duruyor. BKNZ:

vgdisplay
--- Volume group ---
VG Name pve
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 11
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 3.64 TiB
PE Size 4.00 MiB
Total PE 953544
Alloc PE / Size 472709 / 1.80 TiB
Free PE / Size 480835 / 1.83 TiB
VG UUID 16k1ou-8jQ7-OB63-Jesb-s7p4-SOPW-deKGGc

Pek Guzel, ne yapmamiz lazim? Bu bos alanimizi mevcut LVM alanimiza dahil edip /var/lib/vz/ altinda kullanilabilir hale getirmeliyiz.
Bu asamada linux LVM engin tecrubelerimizden faydalanacagiz.

once standart komutlar ile duruma bakalim:

lvdisplay
pvdisplay
vgdisplay


root@pmd04:~# vgs
VG #PV #LV #SN Attr VSize VFree
pve 1 3 0 wz--n- 3.64t 1.83t
root@pmd04:~# pvs
PV VG Fmt Attr PSize PFree
/dev/md1 pve lvm2 a-- 3.64t 1.83t
root@pmd04:~# lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
data pve -wi-ao--- 1.78t
root pve -wi-ao--- 20.00g
swap pve -wi-ao--- 8.00g

sonra
VG bos alanimizi extend edelim ve daha sonra LV mize dahil edelim

root@pmd04:~# lvextend -l +100%FREE /dev/pve/data
Extending logical volume data to 3.61 TiB
Logical volume data successfully resized
root@pmd04:~# resize2fs /dev/pve/data
resize2fs 1.42.5 (29-Jul-2012)
Filesystem at /dev/pve/data is mounted on /var/lib/vz; on-line resizing required
old_desc_blocks = 118, new_desc_blocks = 232
Performing an on-line resize of /dev/pve/data to 969089024 (4k) blocks.
The filesystem on /dev/pve/data is now 969089024 blocks long.
root@pmd04:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 10M 0 10M 0% /dev
tmpfs 3.2G 416K 3.2G 1% /run
/dev/mapper/pve-root 20G 1.2G 18G 7% /
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 6.3G 3.1M 6.3G 1% /run/shm
/dev/mapper/pve-data 3.6T 197M 3.6T 1% /var/lib/vz
/dev/md0 495M 58M 412M 13% /boot
/dev/fuse 30M 12K 30M 1% /etc/pve
root@pmd04:~#

cok guzel mi oldu ne oldu ?
evet oldu
tamam o zaman |:)

————————————-

EK – GPT alamanca

————————————-

Proxmox 3.1 auf Softraid mit GPT

unterstützt offiziell kein , man kann es aber nach der Installation in ein verwandeln:
http://boffblog.wordpress.com/2013/08/22/how-to-install-proxmox-ve-3-0-on-software-raid/

Bei großen Festplatten verwendet proxmox aber GPT zur Partitionierung. Daher erhält man schon beim kopieren der Partitionstabelle eine Fehlermeldung:
“WARNING: () detected on ‘/dev/sda’! The util sfdisk doesn’t support . Use GNU Parted.”
Abhilfe schafft die Verwendung von gdisk. Für was genau die 1. Partition belegt ist weiss ich nicht. Boot lag bei mir auf /dev/sda2 und die lvm-Volumes lagen auf /dev/sda3
Somit habe ich folgende Befehle verwendet:

apt-get update
apt-get dist-upgrade
apt-get install mdadm gdisk
sgdisk -R /dev/sdb /dev/sda
!!!ACHTUNG Reihenfolge beachten, wird in dem Fall von recht nach links kopiert
sgdisk -G /dev/sdb
dd if=/dev/sda1 of=/dev/sdb1
NOTWENDIG?
sgdisk -t 2:fd00 /dev/sdb
sgdisk -t 3:fd00 /dev/sdb

Reboot notwendig?

mdadm --create /dev/md0 --level=1 --raid-disks=2 missing /dev/sdb2
mdadm --create /dev/md1 --level=1 --raid-disks=2 missing /dev/sdb3
mkfs.ext3 /dev/md0
mkdir /mnt/md0
mount /dev/md0 /mnt/md0
cp -ax /boot/* /mnt/md0

/etc/fstab editieren und die UUID vor /boot durch /dev/md0 ersetzen
und nochmal booten!

echo ‘GRUB_DISABLE_LINUX_UUID=true’ >> /etc/default/grub
echo ‘GRUB_PRELOAD_MODULES="raid dmraid"‘ >> /etc/default/grub
echo raid1 >> /etc/modules
echo raid1 >> /etc/initramfs-tools/modules
grub-install /dev/sda
grub-install /dev/sdb
update-grub
update-initramfs -u
mdadm --add /dev/md0 /dev/sda2
pvcreate /dev/md1
vgextend pve /dev/md1
pvmove /dev/sda3 /dev/md1
vgreduce pve /dev/sda3
pvremove /dev/sda3
sgdisk -t 3:fd00 /dev/sda
mdadm --add /dev/md1 /dev/sda3
cat /proc/mdstat


 


 

GUNCELLEME 23 MAYIS 2014

Bu is cok Kabak Tadi verdi

Ama ne kadar ugrastigimi ben biliyorum 🙂

Bildigim seyi o yuzden yeni yine yeniden bir daha yazayim

bu kez gene 8 disk ile .bash_history dosyam uzerinden gidecegim

Yukaridaki hersey burada var kisa minik aciklamalar ile

Bir iki puf noktasida var

Bunu goz onune almak son olarak ve ileride uygulamak yerinde bir karar olacaktir.

Yazmamaya karar verdim.

Cok daraltti cunku beni

bir daha ugrasip bir daha yaparim sonra…