Langkau ke kandungan utama

Tahap Kesediaan Tinggi Komputer Server - episod 'Software Raid 5 dengan 6 HDD'



Dengan Nama Allah Yang Maha Pemurah Lagi Maha Pengasihani

Assalamualaikum Warahmatullahi Wabarokatuh


Objektif :

Gabungkan 6 buah HDD 1 TeraByte dengan menggunakan software RAID5.


Resepi :

6 Buah HDD 1 TB
Server dengan 6 slot sata (Dalam kes aku, how swappable - boleh sedia-tukar)
linux installer ( aku guna slackware hanya untuk buat RAID, tapi server nanti install debian)

Struktur bahagian HDD:

bahagian 0 : / : raid5 (bahagian root) : 20GB, akan menjadi 100GB setelah RAID5
bahagian 1 : /boot : raid1 (mirror) : 10GB
bahagian 2 : /swap : raid 1 (mirror) : 8GB
bahagian 3 : [data] : raid5 (tidak dimount, khusus untuk tujuan DRBD)

Methodologi :

1. pasang HDD pada keenam-enam sata

2. pasang installer linux

3. Boot server pada installer linux (DVD)

4. Mulakan mod arahan (command mode)

5. pastikan HDD yang terpasang cukup 6.
(check pada bios / gunakan arahan fdisk -l)

6. buat bahagian mengikut keperluan masing2. Akunyer server ikut di bawah ni dan tutorial ini berdasarkan bahagian di bawah ni. gunakan cfdisk lebih mudah jika anda guna slackware.

- Pastikan jenis bahagian untuk setiapnya adalah FD ( Linux Raid Autodetect )

root@skodra:~# cfdisk /dev/sda


   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63    19535039     9767488+  fd  Linux raid autodetect
/dev/sda2        19535040   117194174    48829567+  fd  Linux raid autodetect
/dev/sda3       117194175   132825419     7815622+  fd  Linux raid autodetect
/dev/sda4       132825420  1953134504   910154542+  fd  Linux raid autodetect

7. salin jadual bahagian HDD dari sda kepada HDD lain

root@skodra:~# sfdisk -d /dev/sda | sfdisk /dev/sdb
root@skodra:~# sfdisk -d /dev/sda | sfdisk /dev/sdc
root@skodra:~# sfdisk -d /dev/sda | sfdisk /dev/sdd
root@skodra:~# sfdisk -d /dev/sda | sfdisk /dev/sde
root@skodra:~# sfdisk -d /dev/sda | sfdisk /dev/sdf


8. Mulakan mdadm untuk raid md0.

aku buat md0 sebagai linux swap partition. Oleh kerana swap partition perlu ada disetiap HDD, maka gunakan raid1

root@skodra:~# mdadm --create /dev/md0 --level 1 --raid-devices 6 /dev/sd[a-f]1 --metadata 0

(untuk slackware dan debian, perlu memasukkan setting --metadata 0)
9. periksa status

root@skodra:~# cat /proc/mdstat

Personalities : [raid1] [raid6] [raid5] [raid4]

md0 : active raid1 sda1[0] sdf1[5] sde1[4] sdd1[3] sdc1[2] sdb1[1]
      9767424 blocks [6/6] [UUUUUU]


10. raid5 untuk md1

md1 aku buat saiz dalam 50 GB yang akan menjadi 250GB apabila telah disatukan dalam raid5. Mount untuk / ( root)


root@skodra:~# mdadm --create /dev/md1 --level 5 --raid-devices 6 /dev/sd[a-f]2 --metadata 0

11. raid1 untuk md2

md2 adalah untuk mount /boot. Dalam raid5, perlu ada partition raid1 untuk partition /boot

root@skodra:~# mdadm --create /dev/md2 --level 1 --raid-devices 6 /dev/sd[a-f]3 --metadata 0


12. raid5 untuk md3

ini adalah bahagian untuk data. aku akan buat DRBD nanti jadi selepas setkan DRBD barulah aku akan mount bahagian ini. Untuk mount pula, pacemaker dan corosync yang akan main peranan.

root@skodra:~# mdadm --create /dev/md3 --level 5 --raid-devices 6 /dev/sd[a-f]4 --metadata 0

13. Periksa status

root@skodra:~# cat /proc/mdstat


Personalities : [raid1] [raid6] [raid5] [raid4] 
md3 : active raid5 sda4[0] sdf4[5] sde4[4] sdd4[3] sdc4[2] sdb4[1]
      4550771200 blocks level 5, 512k chunk, algorithm 2 [6/6] [UUUUUU]
      
md2 : active (auto-read-only) raid1 sda3[0] sdf3[5] sde3[4] sdd3[3] sdc3[2] sdb3[1] 7815552 blocks [6/6] [UUUUUU]
      
md1 : active raid5 sda2[0] sdf2[5] sde2[4] sdd2[3] sdc2[2] sdb2[1]
      244147200 blocks level 5, 512k chunk, algorithm 2 [6/6] [UUUUUU]
      
md0 : active raid1 sda1[0] sdf1[5] sde1[4] sdd1[3] sdc1[2] sdb1[1]
      9767424 blocks [6/6] [UUUUUU]
      
unused devices:



14. Dalam kes diatas, setiap peranti raid telahpun siap synchronization.

15. Tunggu sehingga synchronization siap barulah buat DRBD. Untuk keselamatan.. :-)

16. Buang DVD slackware dari pemacu DVD dan masukkan DVD Debian.

17. Reboot server kepada DVD debian.

18. Setup macam biasa

19. Semasa pemilihan bahagian HDD, setkan

md0 sebagai swap
md1 sebagai / dan format sebagai ext4
md2 sebagai /boot dan format ext4
md3 tidak perlu lakukan apa-apa


20. Install debian.

21. Dalam kes aku, aku guna lilo untuk boatloader. terpulang pada anda juga.

* Sifir RAID5

katakan anda ada 6 HDD dengan setiap satunya 1TB
dengan RAID5 anda akan dapat jumlah saiz sebanyak 5TB boleh digunakan kerana 1TB lagi akan menyimpan metadata.

sama juga dengan kes diatas, jika setiap bahagian HDD bersaiz 50GB, dengan raid5, jumlah saiz akan menjadi 250GB, dengan 50GB lagi untuk menyimpan metadata.


InsyaAllah dapat memberikan manfaat.

Ulasan

Catatan popular daripada blog ini

Apa Maksud RON dalam pengkelasan Petrol?

RON dan Petrol Oleh yusdirman, Oktober 2014 RON adalah singkatan daripada Research Octane Number Ianya kaedah penarafan bahan api. Lebih tinggi nilai RON, lebih mahal harga PETROL. Adakah minyak RON 97 lebih berkuasa berbanding RON 95? RON merujuk kepada tahap bahan api menahan rintangan "ketukan" semasa proses pembakaran oleh palam pencucuh dalam enjin. Ianya merujuk kepada tahap ketahanan bahan api untuk tidak terbakar sebelum dinyalakan oleh palam pencucuh dalam enjin. "ketukan" dalam konteks RON ini adalah apabila campuran bahan api dan udara dalam enjin terbakar lebih awal sebelum api dari palam pencucuh menbakarnya. Pembakaran awal ini mungkin disebabkan enjin terlalu panas. Haba dari silinder enjin itu sendiri mungkin telah menyalakan bahan api sebelum palam pencucuh menyala. Ini boleh menurunkan prestasi dan mungkin boleh memudaratkan enjin! Jadi, RON bukannya bermaksud LEBIH KUASA! Ianya bermaksud bahan api itu dapat menahan tekanan dari

Load Balancing dengan Nginx dan Puma

Load Balancing dengan Nginx dan Puma Tutorial ini adalah sangat ringkas hanya untuk menunjukkan kebolehan nginx sebagai load balancer yang dapat menjadi 'orang tengah' antara banyak server di belakangnya Keperluan 1. Paling kurang 2 server aplikasi 2. Satu server diinstall nginx Contoh Persekitaran yang sekarang 1. server1: os: debian application: ruby on rails web server : puma dns : myaplication1.yusdirman.com 2. server2: myaplication2.yusdirman.com os:debian application: ruby on rails web server : puma dns : myaplication1.yusdirman.com 3. nginx diinstall di server1 /ets/nginx/nginx.conf setup (default): worker_processes  2; worker_processes  auto; worker_rlimit_nofile 65536; error_log  logs/error.log  notice; error_log  logs/error.log  info; events {   worker_connections  65536; } http {   include       mime.types;   default_type  application/octet-stream;   sendfile        on;   tcp_nopush on;   tcp_nodelay on;   keepalive_tim

Server Redundancy - Pertindanan Komputer Pelayan

alkisahnya tercari-cari untuk buat server redundancy ( pertindihan komputer pelayan ) atas sebab perlunya server yang sentiasa on-line tanpa ada downtime yang lama. Dan, cabarannya adalah memang kami tak pernah jalani apa-apa latihan, pengalaman dan apa jua pengetahuan berkenaan teknologi ini. Yang pastinya, perlu banyak mengoogle. Setakat ini, ada banyak kaedah untuk memastikan aplikasi masih terus boleh berfungsi walaupun server mati/rosak. 1. guna 2 server yang sama. Bila satu mati, satu lagi yang masih hidup dapat terus melayan pengguna. 2. guna 2 talian rangkaian yang berbeza. Bila satu talian rosak/putus, masih ada satu lagi talian rangkaian yang berfungsi. 3. storan di server guna raid ( redundant array of independent disk ) atau dalam bahasa melayu : barisan disk berlainan yang bertindan. Raid dapat menjadikan sebilangan hd menjadi 1 dengan semua data pada 1 hd adalah sama dengan data pada hd 2. (mirroring) 4. satu IP maya untuk sebilangan server. 2 server yang mena