ZFS kök dizininde arızalı bir diski değiştirme

Giriş Kavramları

Bu belge, bilgisayar donanım platformları ve RAID gibi depolama kavramları hakkında belirli bir düzeyde bilgi sahibi olan yöneticiler ve bireyler için bir kılavuz niteliğindedir. Genel arıza sürecini zaten iyi anlıyorsanız, bir sürücünün değiştirilmesi ve havuzun onarılması bölümlerine geçebilirsiniz.

Ayrıntı dereceleri

Bir sürücü arızalandığında ya da hata verdiğinde SmartOS çok sayıda bilgiyi günlüğe kaydeder. Disk arızasına neyin neden olduğunu bulmak için daha fazla ayrıntıya inmek gerekir. Aşağıda azalan ayrıntı sırasına göre komutlar verilmiştir:

'zpool status' komutu havuzun sağlığına genel bir bakış sağlar.

iostat bize üst düzey hata sayılarının yanı sıra aygıtlar hakkında özel bilgiler de sağlar.

fmadm faulty disk arızasına neyin neden olduğunu daha kesin olarak belirlememize yardımcı olacaktır. fmadm geçici hataları da temizleyebilir;

fmdump komutu bize son {n} günlük hata olaylarının bir günlüğünü sağlar.

Arızalı diskleri değiştirmenin yanı sıra, sorun basit bir disk arızasından daha karmaşıksa, bu bilgiler sorunun temel nedenini izole etmede son derece yararlı olabilir.

Genel arıza süreci

Sistemde, bir disk arızası meydana geldiğinde, ZFS bunu tespit eden ve yanıt veren ilk bileşen değildir. Bunun yerine, aşağıdaki genel olay sırası gerçekleşir:

1. FMA (Hata Yönetimi Mimarisi) arızalı bir diski algılar ve günlüğe kaydeder. FMA sistemdeki donanım hatalarını izler ve yönetir.

2. FMA arızalı diski tespit ettiğinde, işletim sistemi devreye girer ve diski sistemden kaldırır.

3. Sağlam ve ölçeklenebilir bir dosya sistemi olan ZFS daha sonra değişen durumun farkına varır. ZFS diskin kaldırıldığını algılar ve aygıtı hataya geçirerek yanıt verir. Aygıtın arızalanması, ZFS'nin diski arızalı olarak işaretlediği ve veri bütünlüğünü ve kullanılabilirliğini korumak için gerekli önlemleri aldığı anlamına gelir.

Bu genel arıza süreci, sistemdeki herhangi bir disk arızasının derhal tespit edilmesini, kaydedilmesini ve ilgili bileşenler tarafından yanıtlanmasını sağlar. FMA arızalı diski tanımlamak için ilk adımı atar, ardından işletim sistemi diski kaldırır ve son olarak ZFS aygıtı arızalayarak değişen duruma tepki verir. Bu olay sırasını takip ederek, sistem disk arızalarını etkili bir şekilde ele alabilir ve depolama altyapısının genel kararlılığını ve güvenilirliğini koruyabilir.

Lütfen bunun arıza sürecinin genel bir açıklaması olduğunu ve sistemin özel uygulamasına ve yapılandırmasına bağlı olarak değişebileceğini unutmayın.

Bir sürücü nasıl değiştirilir

ZFS kökünde başarısız bir disk değişimine üst düzey genel bakış

Not: Disk değiştirme işlemine devam etmeden önce, arızalı diski doğru şekilde tanımladığınızdan emin olun. Ayrıca, değiştirmek için yedek bir diskiniz olduğundan emin olun.

ZFS kökünde arızalı bir diski değiştirmek için Adım Adım Kılavuz

Sunucunun 2 diski olduğunu varsayalım: /dev/sda ve /dev/sdb
Disklerden biri başarısız oldu, örneğin /dev/sdb
Hasarlı diskin değiştirilmesi gerekiyor.

İlk olarak komut ile havuzumuzu tanımlayalım:

zpool list
ZFS kök dizininde arızalı bir diski değiştirme

Diski değiştirmeden önce diski diziden çıkarmanız tavsiye edilir:

zpool detach rpool /dev/sdb

Ardından, diskleri çalışırken değiştiremiyorsanız sunucuyu kapatın, ancak aşağıda açıklanan her şey sunucuyu durdurmadan yapılabilir - bir denetleyiciniz ve çalışırken değiştirilebilir diskiniz varsa

poweroff

Arızalı diski fiziksel olarak değiştirin.

Bölümleme tablosunun (GPT veya MBR) belirlenmesi ve yeni diske aktarılması

Hasarlı bir diski değiştirdikten sonra, bölümleme tablosunun GPT mi yoksa MBR mi olduğunu belirlemeniz gerekir.
Bunu yapmak için gdisk kullanın. gdisk'i yükleyin:

apt-get install gdisk -y

Komutu çalıştırın:

gdisk -l /dev/sda

Burada /dev/sda RAID'de geçerli bir disktir.

MBR için çıktı yaklaşık olarak aşağıdaki gibi olacaktır:

Partition table scan:
MBR: MBR only
BSD: not present
APM: not present
GPT: not present

GPT için kabaca aşağıdaki gibidir:

Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present

Diziye bir disk eklemeden önce, tam olarak iyi bir sda diski gibi bölümlendirilmesi gerekir. Bu, diskin bölümlendirmesine bağlı olarak farklı şekilde yapılır.

GPT için Bölümlendirmeyi Kopyalama

GPT bölümlemesini kopyalamak için:

Not!Birincisi bölümlemenin kopyalandığı disk, ikincisi ise bölümlemenin kopyalandığı disktir. Bunları karıştırırsanız, orijinal olarak hizmet verilebilir diskteki bölümleme yok olur.

sgdisk -R /dev/sdb /dev/sda

Diske yeni bir rastgele UUID atayın:

sgdisk -G /dev/sdb

MBR için bölümlemeyi kopyalama

MBR bölümlemesini kopyalamak için:

Not!
Burada ilk olarak bölümlemeyi aktardığınız diski ve ikinci olarak aktardığınız diski yazarsınız.

sfdisk -d /dev/sda | sfdisk /dev/sdb

Eğer bölümler sistemde görünmüyorsa, bölüm tablosunu komutla yeniden okuyabilirsiniz:

sfdisk -R /dev/sdb

Önyükleyicinin yüklenmesi

Diski bölümlendirdikten sonra, üzerine önyükleyiciyi yüklemeniz gerekir:

grub-install /dev/sdb

Disk ekleme

Hangi diski değiştireceğimizi belirtin (bizim durumumuzda /dev/sdb3):

zpool replace rpool /dev/sdb3

Raid'e bir disk ekleme:

zpool online rpool /dev/sdb3

Dizi senkronizasyonunun bitmesini bekleyin:

zpool status

Sonuç

Bu talimatları izleyerek, ZFS kökündeki arızalı bir diski verilerinizin bütünlüğünden ödün vermeden başarıyla değiştirebilirsiniz. Olası veri kaybını önlemek ve sorunsuz çalışmayı sağlamak için önlem almak ve yedekleme ve doğrulama adımlarını gerçekleştirmek çok önemlidir.