Küçük bir açıklama: Bu LR sentetiktir.
Burada açıklanan görevlerden bazıları çok daha basit bir şekilde yapılabilir, ancak l/r'nin görevi onu tanımak olduğundan
Raid ve lvm işlevselliği ile bazı işlemler yapay olarak karmaşıktır.
LR gerçekleştirecek araçlara yönelik gereksinimler:
Virtualbox gibi sanallaştırma araçları
Örneğin Linux kurulum görüntüsü Debian9
Çeşitli paketlerin indirilmesi için İnternet'in varlığı
Kurulu VM'ye ssh aracılığıyla bağlanın (isteğe bağlı)
DİKKAT
Bu laboratuvar çalışması veri güvenliği gibi incelikli bir konu ile ilgilidir.
Bu, en küçük bir hata nedeniyle (fazladan bir harf veya rakam) tüm verilerinizi kaybetmenize olanak tanır.
Laboratuar çalışması yaptığınız için, her şeye yeniden başlamanız gerekmesi dışında tehlikede değilsiniz.
Gerçek hayatta her şey çok daha ciddidir, bu nedenle disk adlarını çok dikkatli, anlayarak girmelisiniz.
geçerli komutla tam olarak ne yapıyorsunuz ve hangi disklerle çalışıyorsunuz?
İkinci önemli nokta ise disklerin ve bölümlerin isimlendirilmesidir: duruma göre disk numaraları farklılık gösterebilir
laboratuvar çalışmasındaki komutlarda sunulan değerlerden.
Yani örneğin sda diskini diziden çıkarırsanız ve ardından yeni bir disk eklerseniz yeni disk görüntülenecektir.
sda adlı bir sistemde. Yeni bir disk eklemeden önce yeniden başlatırsanız, yeni
diskin adı sdb olacak ve eskisine sda adı verilecek
Komutların çoğunun gerektirdiğinden laboratuvarın süper kullanıcı (kök) olarak çalıştırılması gerekir
yükseltilmiş ayrıcalıklar ve sudo yoluyla ayrıcalıkları sürekli olarak yükseltmenin bir anlamı yok
Çalışma materyalleri
RAID
LVM
Linux işletim sisteminde disk adlandırma
Bölüm nedir
Bölümleme tablosu nedir ve nerede saklanır?
Grub nedir
Kullanılan yardımcı programlar
1) disk bilgilerini görüntüleyin
lsblk -o İSİM,BOYUT,FSTÜRÜ,TÜR,MONTAJ NOKTASI
fdisk -l
2) bilgileri görüntüleme ve LVM ile çalışma
pv'ler
Pvextend
pvc oluşturmak
yeniden boyutlandırmak
vb
azaltmak
seviye
uzatmak
3) bilgileri görüntüleme ve RAID ile çalışma
anında diskleri değiştirmek, yeni diskler eklemek ve bölümleri taşımak.
Görev 1 (İşletim Sistemi kurulumu ve LVM, RAID yapılandırması)
1) Aşağıdaki özellikleri sağlayan yeni bir sanal makine oluşturun:
1 gb ram
1 işlemci
2 hdd (bunlara ssd1, ssd2 adını verin ve eşit boyutlar atayın, çalışırken değiştirilebilir ve ssd kutularını işaretleyin)
4 bağlantı noktası için yapılandırılmış SATA denetleyicisi
2) Linux'u kurmaya başlayın ve sabit sürücüleri seçmeye başladığınızda aşağıdakileri yapın:
Bölümleme yöntemi: manuel, ardından bu resmi görmelisiniz:
/boot için ayrı bir bölüm oluşturma: İlk diski seçin ve üzerinde yeni bir bölüm tablosu oluşturun.
Bölüm boyutu: 512M
Bağlantı noktası: /boot
Ayarları ikinci disk için tekrarlayın, ancak aynı anda iki kez bağlayamayacağınız için /boot yapamayacağınız için, bağlama noktası: yok seçeneğini seçin, sonunda aşağıdakini elde edin (söveli resim, yeniden yapmak için çok tembel):
RAID kurulumu:
İlk diskteki boş alanı seçin ve bölüm türünü RAID için fiziksel birim olarak yapılandırın
"Bölümün kurulumu tamamlandı" seçeneğini seçin
İkinci disk için de aynı ayarları tekrarlayın; sonuçta aşağıdakiler ortaya çıkar:
"Yazılım RAID'ini yapılandır" seçeneğini seçin
MD cihazı oluştur
Yazılım RAID aygıt türü: Yansıtılmış bir dizi seçin
RAID XXXX dizisi için aktif cihazlar: Her iki sürücüyü de seçin
Yedek cihazlar: Varsayılan olarak 0'ı bırakın
RAID XX dizisi için aktif cihazlar: baskın altında oluşturduğunuz bölümleri seçin
Geçerli bölüm düzenini koruyun ve LVM'yi yapılandırın: Evet
Birim grubu oluştur
Birim grubu adı: sistem
Yeni birim grubuna yönelik cihazlar: Oluşturduğunuz RAID'i seçin
Mantıksal birim oluştur
mantıksal birim adı: kök
mantıksal birim boyutu: disk boyutunuzun 25'i
Mantıksal birim oluştur
mantıksal birim adı: var
mantıksal birim boyutu: disk boyutunuzun 25'i
Mantıksal birim oluştur
mantıksal birim adı: günlük
mantıksal birim boyutu: disk boyutunuzun 15'i
Yapılandırma ayrıntılarını görüntüle'yi seçerek aşağıdaki resmi elde etmelisiniz:
LVM kurulumunu tamamladıktan sonra aşağıdakileri görmelisiniz:
Bölüm düzeni: LVM'de oluşturulan her birimi tek tek seçin ve bunları örneğin kök için şu şekilde düzenleyin:
Şu şekilde kullanın: ext4
bağlama noktası: /
Kök bölümü işaretlemenin sonucu şöyle görünmelidir:
uygun bağlama noktalarını seçerek (/var ve /var/log manuel olarak girilir) var ve log için bölümleme işlemini tekrarlayın ve aşağıdaki sonucu elde edin:
Bölümlemeyi Bitir'i seçin
Hala monte edilmemiş bir bölümünüz olduğu ve takasın yapılandırılmadığı konusunda size birkaç soru sorulacaktır. Her iki soruya da olumsuz yanıt verilmesi gerekiyor.
Nihai sonuç şöyle görünmelidir:
3) İlk cihaza (sda) grub yükleyerek işletim sistemi kurulumunu tamamlayın ve sistemi önyükleyin.
4) /boot bölümünün içeriğini sda sürücüsünden (ssd1) sdb sürücüsüne (ssd2) kopyalayın
Sanal makine dosyalarınızın depolandığı dizini bulun ve ssd1.vmdk dosyasını silin
2) Sanal makinenizin hala çalıştığından emin olun
3) Sanal makineyi yeniden başlatın ve hala çalıştığından emin olun
4) RAID dizisinin durumunu kontrol edin: cat /proc/mdstat
5) VM arayüzüne aynı boyutta yeni bir disk ekleyin ve onu ssd3 olarak adlandırın
6) işlemleri gerçekleştirin:
fdisk -l komutunu kullanarak yeni diskin sisteme ulaştığını görün
bölüm tablosunu eski diskten yenisine kopyalayın: sfdisk -d /dev/XXXX | sfdisk /dev/YYY
fdisk -l kullanarak sonuca bakın
Baskın dizisine yeni bir disk ekleyin: mdadm —manage /dev/md0 —add /dev/YYY
Sonuca bakın: cat /proc/mdstat. Senkronizasyonun başladığını görmelisiniz
7) Artık RAID'in parçası olmayan bölümleri manuel olarak senkronize etmeniz gerekiyor.
Bunu yapmak için, "canlı" diskten yakın zamanda kurduğunuz yeni diske kopyalayarak dd yardımcı programını kullanacağız.
dd if=/dev/XXX of=/dev/YYY
8) Senkronizasyon tamamlandıktan sonra grubu yeni sürücüye yükleyin
9) Her şeyin çalıştığından emin olmak için VM'yi yeniden başlatın
Ne yaptığınızı ve görevden nasıl bir sonuç elde ettiğinizi kendi kelimelerinizle açıklayın.
Sonuç: Disk ssd1 çıkarıldı, disk ssd2 kaydedildi, disk ssd3 eklendi.
Görev 3 (Yeni diskler ekleme ve bölümü taşıma)
Bu, sunulanların en karmaşık ve hacimli görevidir.
Ne yaptığınızı ve hangi diskler ve bölümlerle yaptığınızı çok dikkatli bir şekilde kontrol edin.
Çalıştırmadan önce bir kopya almanız önerilir.
Bu görev 2 numaralı görevden bağımsızdır; disk adlarına göre ayarlanan 1 numaralı görevden sonra gerçekleştirilebilir.
Bu laboratuvar görevinin ikinci kısmı, ilk kısmın tamamlanmasından sonraki durumun tamamen aynısına yol açmalıdır.
İşinizi kolaylaştırmak için, diskleri ana makineden fiziksel olarak çıkarmamanızı, yalnızca
makine özelliklerinde bunları ayırın. VM'deki işletim sistemi açısından tamamen aynı görünecek, ancak
bir şey olursa diski tekrar bağlayın ve birkaç nokta geri alarak çalışmaya devam edin.
sorunlar yaşıyorsunuz. Örneğin, yanlış yapmış olabilirsiniz veya /boot bölümünü yeni diske kopyalamayı unutmuş olabilirsiniz.
Size yalnızca hangi diskler ve bölümlerle çalıştığınızı birkaç kez veya daha iyisi tekrar kontrol etmenizi tavsiye edebilirim.
Diskler, bölümler ve "fiziksel" disk numarası arasındaki yazışmaları bir kağıda yazın. Güzel ve temiz ağaç
takım berabere lsblk, ne yaptığınızı ve ne yapılması gerektiğini analiz etmek için mümkün olduğunca sık kullanın.
Hikayeye...
Sunucunuzun uzun süredir 2 SSD sürücüde çalıştığını düşünün, aniden...
1) Diski VM özelliklerinden çıkarıp yeniden başlatarak ssd2 disk arızasını simüle edin
2) Disklerin ve RAID'in mevcut durumunu görüntüleyin:
5) Öncelikle eski diskteki verilerin güvenliğine dikkat etmelisiniz.
Bu sefer verileri LVM kullanarak aktaracağız:
Öncelikle dosya tablosunu eski diskten yenisine kopyalamanız gerekir:
sfdisk -d /dev/XXX | sfdisk /dev/YYY
X,y'yi doğru disklerle değiştirin ve bu komutun ne yaptığını bulun.
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT komutunu çalıştırın ve çıktısını önceki çağrıyla karşılaştırın.
Ne değişti?
/boot verilerini yeni diske kopyalamak için dd komutunu kullanın
dd if=/dev/XXX of=/dev/YYY
/boot eski diske takılı kaldıysa, canlı diske yeniden takılması gerekir:
mount | grep boot # смотрим куда смонтирован диск
lsblk # смотрим какие диски есть в системе и смотрим есть ли диск, полученный из предыдущего пункта
umount /boot # отмонтируем /boot
mount -a # выполним монтирование всех точек согласно /etc/fstab.
# Поскольку там указана точка монтирования /dev/sda, то будет выполнено корректное перемонтирование на живой диск
Önyükleyiciyi yeni SSD sürücüsüne yükleyin
grub-install /dev/YYY
Bu operasyonu neden yapıyoruz?
yalnızca bir yeni ssd diski içeren yeni bir baskın dizisi oluşturun:
Yukarıdaki komut özel bir anahtar belirtmeden çalışmayacaktır.
Yardımı okuyun ve bu anahtarı komuta ekleyin.
İşleminizin sonucunu kontrol etmek için cat /proc/mdstat komutunu kullanın. Ne değişti?
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT komutunu çalıştırın ve çıktısını önceki çağrıyla karşılaştırın.
Ne değişti?
6) Bir sonraki adım LVM'yi yapılandırmaktır
Geçerli fiziksel birimler hakkındaki bilgileri görüntülemek için pvs komutunu çalıştırın
önceden oluşturulan RAID dizisini içeren yeni bir fiziksel birim oluşturun:
pvcreate /dev/md63
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT komutunu çalıştırın ve çıktısını önceki çağrıyla karşılaştırın.
Ne değişti?
Pvs komutunu tekrar çalıştırın. Ne değişti?
Aşağıdaki komutu kullanarak Volume Group sisteminin boyutunu artıralım:
vgextend system /dev/md63
Komutları çalıştırın ve ne gördüğünüzü ve nelerin değiştiğini yazın.
vgdisplay system -v
pvs
vgs
lvs -a -o+devices
LV var,log,root şu anda hangi fiziksel diskte bulunuyor?
Doğru cihaz adlarını kullanarak verileri eski sürücüden yenisine taşıyın.
Komutları çalıştırın ve ne gördüğünüzü ve nelerin değiştiğini yazın.
vgdisplay system -v
pvs
vgs
lvs -a -o+devices
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
İçinden eski raid diskini çıkararak VG'mizi değiştirelim. Doğru baskın adını değiştirin.
vgreduce system /dev/md0
Komutları çalıştırın ve ne gördüğünüzü ve nelerin değiştiğini yazın.
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
pvs
vgs
Resmi daha güzel hale getirmek için ikinci ssd diskine (ssd4) yeniden bağlanın / önyükleyin ve lsblk'i çalıştırın. Sonuç olarak, ssd3 diski çalışmıyor
hiçbir şey monte edilmemelidir. /boot bölümünün boş olmadığını dikkatlice kontrol edin! ls /boot göstermeli
birkaç dosya ve klasör. Bu bölümde nelerin saklandığını inceleyin ve hangi dosya dizininin neden sorumlu olduğunu yazın.
7) ssd3 diskini çıkarın ve yukarıda açıklanan teknik özelliklere göre ssd5, hdd1, hdd2'yi ekleyin; sonuçta:
ssd4 - ilk yeni ssd
ssd5 - ikinci yeni ssd
hdd1 - ilk yeni hdd
hdd2 - ikinci yeni hdd
8) Diskleri ekledikten sonra ne olduğunu kontrol edin:
9) Ana baskın dizisinin çalışmasını yeniden sağlayalım:
doğru diskleri değiştirerek bölüm tablosunu kopyalayın:
sfdisk -d /dev/XXX | sfdisk /dev/YYY
Bölüm tablosunu eski diskten kopyaladığımızda, yeni boyutun göründüğünü lütfen unutmayın.
sabit disk kapasitesinin tamamını kullanmaz.
Bu nedenle, yakında bu bölümü yeniden boyutlandırmamız ve baskını genişletmemiz gerekecek.
Komutu çalıştırarak kendiniz görün:
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
10) önyükleme bölümünü / önyüklemeyi ssd4'ten ssd5'e kopyalayın
dd if=/dev/XXX of=/dev/YYY
11) Grub'u yeni sürücüye (ssd5) yükleyin
12) ssd5 diskinin ikinci bölümünü yeniden boyutlandırın
disk bölümleme yardımcı programını çalıştırın:
fdisk /dev/XXX
Mevcut bir bölümü silmek için d tuşunu girin (2'yi seçin)
yeni bir bölüm oluşturmak için n anahtarını girin
Bölüm tipinin “birincil” olduğunu belirtmek için p anahtarını girin
yeni bölümün ikinci numaraya sahip olması için anahtar 2'yi girin
İlk sektör: bölümün başlangıcının otomatik olarak hesaplanan boyutunu kabul etmek için enter tuşuna basın
Son sektör: bölümün sonunun otomatik olarak hesaplanan boyutunu kabul etmek için enter tuşuna basın
Tüm olası bölüm türlerinin listesini görmek ve içinde Linux raid auto'yu bulmak için l tuşuna girin
Oluşturulan bölümün (2) türünü değiştirmek için t tuşuna basın ve önceki adımda bulunan sayıyı girin.
Değişikliği diske yazmak için w tuşuna basın.
12) bölümleme tablosunu tekrar okuyun ve sonucu kontrol edin
mevcut baskın dizisine yeni bir disk ekleyin (doğru diskleri değiştirmeyi unutmayın)
mdadm --manage /dev/md63 --add /dev/sda2
Dizimizdeki disk sayısını 2'ye çıkaralım:
mdadm --grow /dev/md63 --raid-devices=2
Sonuca bakın: işaretlenmiş 2 dizimiz var, ancak bu dizide yer alan her iki bölümün boyutları farklı
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
13) ssd4 diskindeki bölüm boyutunu artırın
disk bölümleme yardımcı programını çalıştırın:
fdisk /dev/XXX
Mevcut bir bölümü silmek için d tuşunu girin (2'yi seçin)
yeni bir bölüm oluşturmak için n anahtarını girin
Bölüm tipinin “birincil” olduğunu belirtmek için p anahtarını girin
yeni bölümün ikinci numaraya sahip olması için anahtar 2'yi girin
İlk sektör: bölümün başlangıcının otomatik olarak hesaplanan boyutunu kabul etmek için enter tuşuna basın
Son sektör: bölümün sonunun otomatik olarak hesaplanan boyutunu kabul etmek için enter tuşuna basın
İşaretlemenin sonunda, bölümün üyeliğinin imzasını dizide bırakmak için Hayır'ı seçin.
Değişikliği diske yazmak için w tuşuna basın.
12) bölümleme tablosunu tekrar okuyun ve sonucu kontrol edin
Tüm boş alanın boyutunda mantıksal bir birim oluşturalım ve buna val_log adını verelim
lvcreate -l 100%FREE -n var_log data # lvs # посмотрим результат
oluşturulan bölümü ext4'te biçimlendirin
mkfs.ext4 /dev/mapper/data-var_log
sonucu görelim
lsblk
17) günlük verilerini eski bölümden yenisine aktarın
geçici olarak yeni bir günlük depolama alanı yükleyin
mount /dev/mapper/data-var_log /mnt
hadi bölümleri senkronize edelim
apt install rsync
rsync -avzr /var/log/ /mnt/
/var/log'da şu anda hangi işlemlerin çalıştığını öğrenelim
apt install lsof
lsof | grep '/var/log'
bu işlemleri durdur
systemctl stop rsyslog.service syslog.socket
bölümlerin son senkronizasyonunu gerçekleştirin (son senkronizasyondan bu yana değişmiş olabilecek veriler)
rsync -avzr /var/log/ /mnt/
bölümleri değiştir
umount /mnt
umount /var/log
mount /dev/mapper/data-var_log /var/log
hadi ne olduğunu kontrol edelim
lsblk
18) /etc/fstab dosyasını düzenleyin
fstab - önyükleme sırasında bölümlerin bağlanacağı kuralları kaydeden bir dosya
görevimiz /var/log'un monte edildiği satırı bulmak ve cihazı düzeltmek system-log üzerinde data-var_log
19) Bu aşamada en önemli şey radela tablosunu (örneğin ext4) değiştirmeyi unutmamaktır. Çünkü herhangi bir raid'i, lvm'yi nasıl değiştirirsek değiştirelim, partition üzerindeki FS'ye partition boyutunun artık değiştiği bildirilinceye kadar yeni alanı kullanamayacağız. Komutu kullanın resize2fs FS'yi değiştirmek için.
20) Son akor
Yeniden başlatalım. Her şeyi doğru yaptıysanız işletim sisteminize geri yönlendirileceksiniz (bu, her şeyin çalıştığından emin olmak için gereklidir. Bu adımın kendi kendini test etmekten başka bir anlamı yoktur)
yapmak istediğimiz her şeyin gerçekten yapılıp yapılmadığını kontrol edin:
pvs
lvs
vgs
lsblk
cat /proc/mdstat
21) [İSTEĞE BAĞLI] Adımları izleyin
Önyükleme yapabildiğinizden emin olmak için önyükleme sırasında farklı sürücüleri belirtmek üzere F12 tuşuna basarak yeniden başlatın
herhangi bir ssd sürücüsünden, böylece bunlardan birinin arızalanmasından korkmuyoruz
artık VG sisteminde gereksiz LV kaydınız var. Bu alanı root veya var arasında ayırın, ancak şunu kullanmak yerine
%100 ÜCRETSİZ tasarımlar -L tuşunu kullanarak boyutu elle belirtin:
-L 500M
/boot'un senkronizasyon olmadan iki bölümde bulunması sorununu düzeltin, bunu doğru şekilde yapmanıza gerek yok,
örnek olarak buraya eklenmiştir. Öncelikle /boot içeriğini bir yere kopyalamayı unutmayın.
yeni bir baskın oluşturun ve buna sda1,sda2'yi ekleyin
bu bölümleri mevcut baskına dahil edin ve ana baskını geri yükleyin / önyükleyin, ancak onu monte etmeden.