'Mdadm' Aracı ile Linux'ta Yazılım RAID'leri Nasıl Yönetilir - Bölüm 9


RAID dizileriyle ilgili önceki deneyiminiz ne olursa olsun ve bu RAID serisindeki tüm eğitimleri izlemiş olsanız da olmasanız da, Linux'ta yazılım RAID'lerini yönetmek, mdadm --manage komut.

Bu eğitimde, ihtiyaç duyduğunuzda elinizin altında olabilmesi için bu aracın sağladığı işlevleri inceleyeceğiz.

RAID Test Senaryosu

Bu serinin son makalesinde olduğu gibi, basitlik açısından iki 8 GB diskten (/dev/sdb) oluşan bir RAID 1 (ayna) dizisini kullanacağız. ve /dev/sdc) ve örnek olarak bir başlangıç yedek cihazı (/dev/sdd) verilebilir, ancak burada listelenen komutlar ve kavramlar diğer türdeki cihazlar için de geçerlidir. kurulumları da. Bununla birlikte, bu sayfayı tarayıcınızın yer imlerine eklemekten çekinmeyin ve başlayalım.

Mdadm Seçeneklerini ve Kullanımını Anlamak

Neyse ki mdadm, ana seçeneklerin her biri için açıklamalar ve belgeler sağlayan bir yerleşik --help bayrağı sağlar.

O halde şunu yazarak başlayalım:


mdadm --manage --help

mdadm --manage'in gerçekleştirmemize izin vereceği görevlerin neler olduğunu ve nasıl yapılacağını görmek için:

Yukarıdaki resimde görebileceğimiz gibi, bir RAID dizisini yönetmek, aşağıdaki görevlerin bir anda gerçekleştirilmesini içerir:

  1. (Yeniden) Diziye bir cihaz ekleme.
  2. Bir cihazı arızalı olarak işaretleyin.
  3. Arızalı bir cihazın diziden çıkarılması.
  4. Arızalı cihazın yedek bir cihazla değiştirilmesi.
  5. Kısmen oluşturulmuş bir dizi başlatın.
  6. Bir diziyi durdurun.
  7. Bir diziyi ro (salt okunur) veya rw (okuma-yazma) olarak işaretleyin.

Mdadm Aracıyla RAID Aygıtlarını Yönetme

--manage seçeneğini atlarsanız mdadm'nin yine de yönetim modunu üstleneceğini unutmayın. İleride sorunla karşılaşmamak için bu gerçeği aklınızda bulundurun.

Önceki resimde vurgulanan metin, RAID'leri yönetmek için temel sözdizimini gösterir:


mdadm --manage RAID options devices

Birkaç örnekle açıklayalım.

Örnek 1: RAID dizisine bir aygıt ekleme

Arızalı bir cihazı değiştirirken veya arıza durumunda elinizin altında olmasını istediğiniz bir yedek parçanız olduğunda genellikle yeni bir cihaz ekleyeceksiniz:


mdadm --manage /dev/md0 --add /dev/sdd1

Örnek 2: Bir RAID aygıtını arızalı olarak işaretleme ve diziden çıkarma

Bu, cihazı diziden mantıksal olarak çıkarmadan ve daha sonra bu sırayla fiziksel olarak makineden çıkarmadan önce zorunlu bir adımdır (bu adımlardan birini kaçırırsanız cihaza gerçek zarar verebilirsiniz):


mdadm --manage /dev/md0 --fail /dev/sdb1

Başarısız diski otomatik olarak değiştirmek için önceki örnekte eklenen yedek cihazın nasıl kullanıldığına dikkat edin. Sadece bu değil, RAID verilerinin kurtarılması ve yeniden inşa edilmesi de hemen başlıyor:

Cihazın manuel olarak arızalı olduğu belirtildikten sonra diziden güvenli bir şekilde çıkarılabilir:


mdadm --manage /dev/md0 --remove /dev/sdb1
Örnek 3: Daha önce kaldırılan dizinin parçası olan bir cihazı yeniden ekleme

Bu noktaya kadar, 2 aktif cihazdan oluşan çalışan bir RAID 1 dizimiz var: /dev/sdc1 ve /dev/sdd1. Şu anda /dev/sdb1'i /dev/md0'a yeniden eklemeye çalışırsak:


mdadm --manage /dev/md0 --re-add /dev/sdb1

bir hatayla karşılaşacağız:


mdadm: --re-add for /dev/sdb1 to /dev/md0 is not possible

çünkü dizi zaten mümkün olan maksimum sayıda sürücüden oluşuyor. Dolayısıyla 2 seçeneğimiz var: a) Örnek 1'de gösterildiği gibi /dev/sdb1'i yedek olarak ekleyin veya b) /dev/sdd1'i diziden kaldırın ve ardından /dev/sdb1'i yeniden ekleyin.

b) seçeneğini seçiyoruz ve daha sonra yeniden birleştirmek için diziyi durdurarak başlayacağız:


mdadm --stop /dev/md0
mdadm --assemble /dev/md0 /dev/sdb1 /dev/sdc1

Yukarıdaki komut /dev/sdb1'i başarıyla diziye ekleyemezse, bunu yapmak için Örnek #1'deki komutu kullanın.

mdadm başlangıçta yeni eklenen aygıtı yedek olarak algılasa da, verileri yeniden oluşturmaya başlayacak ve bunu tamamladığında aygıtın RAID'in etkin bir parçası olduğunu tanıyacaktır:

Örnek 4: Raid aygıtını belirli bir diskle değiştirme

Dizideki bir diski yedek bir diskle değiştirmek şu kadar kolaydır:


mdadm --manage /dev/md0 --replace /dev/sdb1 --with /dev/sdd1

Bu, --with anahtarını takip eden aygıtın RAID'e eklenmesine ve --replace ile gösterilen diskin hatalı olarak işaretlenmesine neden olur:

Örnek 5: Raid dizisini ro veya rw olarak işaretleme

Diziyi oluşturduktan sonra kullanabilmek için üzerinde bir dosya sistemi oluşturmuş ve onu bir dizine monte etmiş olmanız gerekir. O zamanlar muhtemelen bilmediğiniz şey, RAID'i ro olarak işaretleyebileceğiniz, böylece yazmak için yalnızca okuma işlemlerinin (veya rw) gerçekleştirilmesine izin verebileceğinizdir. cihaza da.

Cihazı ro olarak işaretlemek için öncelikle bağlantısının kesilmesi gerekir:


umount /mnt/raid1
mdadm --manage /dev/md0 --readonly
mount /mnt/raid1
touch /mnt/raid1/test1

Diziyi yazma işlemlerine de izin verecek şekilde yapılandırmak için --readwrite seçeneğini kullanın. rw bayrağını ayarlamadan önce cihazın bağlantısını kesip durdurmanız gerekeceğini unutmayın:


umount /mnt/raid1
mdadm --manage /dev/md0 --stop
mdadm --assemble /dev/md0 /dev/sdc1 /dev/sdd1
mdadm --manage /dev/md0 --readwrite
touch /mnt/raid1/test2

Özet

Bu seri boyunca kurumsal ortamlarda kullanılan çeşitli yazılım RAID dizilerinin nasıl kurulacağını açıkladık. Makaleleri ve bu makalelerde verilen örnekleri takip ettiyseniz, Linux'taki yazılım RAID'lerinin gücünden yararlanmaya hazırsınız demektir.

Sorularınız veya önerileriniz varsa aşağıdaki formu kullanarak bizimle iletişime geçmekten çekinmeyin.