Wyszukiwanie w witrynie

LFCS #6: Jak montować partycje jako urządzenia RAID w systemie Linux


Linux Foundation uruchomiła certyfikat LFCS (Linux Foundation Certified Sysadmin), który jest świetną szansą dla administratorów systemów na całym świecie na wykazanie się poprzez egzamin oparty na wydajności, że potrafią zapewnianie całościowego wsparcia operacyjnego na systemach Linux: wsparcie systemowe, diagnozowanie i monitorowanie pierwszego poziomu oraz, w razie potrzeby, eskalacja problemów do innych zespołów wsparcia.

Seria będzie nosiła tytuł Przygotowanie do LFCS (Certyfikowany administrator systemu Linux Foundation) Części 1 do 33 i obejmie następujące tematy:

Part 1

Jak używać polecenia „Sed” do manipulowania plikami w systemie Linux

Part 2

Jak zainstalować i używać Vi/Vim w systemie Linux

Part 3

Jak kompresować pliki i katalogi oraz znajdować pliki w systemie Linux

Part 4

Jak podzielić urządzenia pamięci masowej na partycje w systemie Linux

Part 5

Jak montować systemy plików (Samba i NFS) w systemie Linux

Part 6

Jak montować partycje jako urządzenia RAID i tworzyć kopie zapasowe systemu

Part 7

Zarządzanie procesami i usługami uruchamiania systemu (SysVinit, Systemd i Upstart

Part 8

Jak zarządzać użytkownikami i grupami, uprawnieniami do plików i dostępem Sudo

Part 9

Zarządzanie pakietami systemu Linux za pomocą Yum, RPM, Apt, Dpkg, Aptitude i Zypper

Part 10

Nauka podstawowych skryptów powłoki i rozwiązywania problemów z systemem plików

Part 11

Jak zarządzać i tworzyć LVM za pomocą poleceń vgcreate, lvcreate i lvextend

Part 12

Jak poznawać system Linux z zainstalowaną dokumentacją pomocy i narzędziami

Part 13

Jak skonfigurować i rozwiązać problemy z programem Grand Unified Bootloader (GRUB)

Part 14

Monitoruj wykorzystanie zasobów procesów systemu Linux i ustawiaj limity procesów dla poszczególnych użytkowników

Part 15

Jak ustawić lub zmodyfikować parametry wykonawcze jądra w systemach Linux

Part 16

Wdrażanie obowiązkowej kontroli dostępu za pomocą SELinux lub AppArmor w systemie Linux

Part 17

Jak ustawić listy kontroli dostępu (ACL) i przydziały dysku dla użytkowników i grup

Part 18

Instalowanie usług sieciowych i konfigurowanie automatycznego uruchamiania podczas rozruchu

Part 19

Kompletny przewodnik po konfigurowaniu serwera FTP w celu umożliwienia logowania anonimowego

Part 20

Skonfiguruj podstawowy serwer DNS z buforowaniem rekurencyjnym i skonfiguruj strefy dla domeny

Part 21

Jak zainstalować, zabezpieczyć i dostroić wydajność serwera bazy danych MariaDB

Part 22

Jak zainstalować i skonfigurować serwer NFS do udostępniania systemu plików

Part 23

Jak skonfigurować Apache z wirtualnym hostingiem opartym na nazwach z certyfikatem SSL

Part 24

Jak skonfigurować zaporę sieciową Iptables, aby umożliwić zdalny dostęp do usług w systemie Linux

Part 25

Jak zamienić Linuksa w router do obsługi ruchu statycznego i dynamicznego

Part 26

Jak skonfigurować zaszyfrowane systemy plików i dokonać zamiany za pomocą narzędzia Cryptsetup

Part 27

Jak monitorować wykorzystanie systemu, awarie i rozwiązywać problemy z serwerami Linux

Part 28

Jak skonfigurować repozytorium sieciowe w celu instalacji lub aktualizacji pakietów

Part 29

Jak kontrolować wydajność sieci, bezpieczeństwo i rozwiązywanie problemów

Part 30

Jak instalować maszyny wirtualne i kontenery oraz zarządzać nimi

Part 31

Naucz się podstaw Git, aby efektywnie zarządzać projektami

Part 32

Przewodnik dla początkujących dotyczący konfigurowania adresów IPv4 i IPv6 w systemie Linux

Part 33

Przewodnik dla początkujących dotyczący tworzenia połączeń sieciowych i mostowania w systemie Ubuntu

Ten post jest Częścią 6 z serii 33-samouczków. W tej części wyjaśnimy, jak montować partycje jako urządzenia RAID oraz tworzyć i zarządzać kopiami zapasowymi systemu, czyli wymagane do egzaminu certyfikacyjnego LFCS.

Zrozumienie RAID w systemie Linux

Technologia znana jako Redundant Array of Independent Disks (RAID) to rozwiązanie pamięci masowej, które łączy wiele dysków twardych w jedną jednostkę logiczną, aby zapewnić redundancję danych i/lub poprawić wydajność w operacjach odczytu/zapisu na dysk.

Jednak rzeczywista odporność na błędy i wydajność we/wy dysku zależą od konfiguracji dysków twardych w celu utworzenia macierzy dyskowej. W zależności od dostępnych urządzeń i wymagań dotyczących odporności na awarie/wydajności, definiowane są różne poziomy RAID.

Bardziej szczegółowe wyjaśnienie każdego poziomu RAID można znaleźć w następującym artykule dotyczącym serii RAID.

Zainstaluj mdadm w systemie Linux

Nasze wybrane narzędzie do tworzenia, składania, zarządzania i monitorowania naszych programowych macierzy RAID nazywa się mdadm (skrót od administrator wielu dysków).

sudo apt install mdadm         [On Debian, Ubuntu and Mint]
sudo yum install mdadm         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo zypper install mdadm      [On OpenSUSE]    

Montaż partycji jako urządzeń RAID

Proces montażu istniejących partycji jako urządzeń RAID składa się z następujących kroków.

1. Utwórz nową tablicę za pomocą mdadm

Jeśli jedna z partycji była już wcześniej sformatowana lub stanowiła część innej macierzy RAID, zostaniesz poproszony o potwierdzenie utworzenia nowej tablicy.

Zakładając, że podjąłeś niezbędne środki ostrożności, aby uniknąć utraty ważnych danych, które mogły się na nich znajdować, możesz bezpiecznie wpisać y i nacisnąć Enter.

mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1

2. Sprawdź status tworzenia tablicy

Aby sprawdzić status utworzenia tablicy, użyjesz poniższych poleceń – niezależnie od typu RAID. Są one tak samo ważne, jak wtedy, gdy tworzymy RAID0 (jak pokazano powyżej) lub gdy jesteś w trakcie konfigurowania RAID5, jak pokazano na obrazku poniżej.

cat /proc/mdstat
or 
mdadm --detail /dev/md0	[More detailed summary]

3. Sformatuj urządzenie RAID

Sformatuj urządzenie za pomocą systemu plików zgodnie ze swoimi potrzebami/wymaganiami, jak wyjaśniono w części 4 tej serii.

4. Monitoruj usługę macierzy RAID

Poinstruuj usługę monitorującą, aby „pilnie obserwowała” tablicę. Dodaj wyjście mdadm --detail --scan do /etc/mdadm/mdadm.conf (Debian i pochodne) lub /etc/mdadm.conf (CentOS/openSUSE), podobnie.

mdadm --detail --scan

mdadm --assemble --scan 	[Assemble the array]

Aby mieć pewność, że usługa uruchomi się podczas uruchamiania systemu, uruchom następujące polecenia jako root.

systemctl start mdmonitor
systemctl enable mdmonitor

5. Sprawdź awarię dysku RAID

Na poziomach RAID obsługujących nadmiarowość w razie potrzeby wymień uszkodzone dyski. Kiedy urządzenie w macierzy dyskowej ulegnie awarii, przebudowa rozpoczyna się automatycznie tylko wtedy, gdy podczas pierwszego tworzenia macierzy dodano urządzenie zapasowe.

W przeciwnym razie musimy ręcznie podłączyć dodatkowy dysk fizyczny do naszego systemu i uruchomić go.

mdadm /dev/md0 --add /dev/sdX1

Gdzie /dev/md0 to tablica, w której wystąpił problem, a /dev/sdX1 to nowe urządzenie.

6. Zdemontuj macierz roboczą

Być może będziesz musiał to zrobić, jeśli chcesz utworzyć nową tablicę przy użyciu urządzeń – (Krok opcjonalny).

mdadm --stop /dev/md0 		#  Stop the array
mdadm --remove /dev/md0 		# Remove the RAID device
mdadm --zero-superblock /dev/sdX1 	# Overwrite the existing md superblock with zeroes

7. Utwórz powiadomienia pocztowe

Możesz skonfigurować prawidłowy adres e-mail lub konto systemowe, na które będą wysyłane powiadomienia (upewnij się, że masz tę linię w pliku mdadm.conf). – (Krok opcjonalny)

MAILADDR root

W takim przypadku wszystkie alerty zebrane przez demona monitorowania RAID zostaną wysłane na skrzynkę pocztową lokalnego konta root. Jeden z takich alertów wygląda następująco.

Uwaga: To zdarzenie jest powiązane z przykładem z KROKU 5, gdzie urządzenie zostało oznaczone jako wadliwe, a urządzenie zapasowe zostało automatycznie wbudowane w tablicę przez mdadm. W związku z tym „skończyły nam się” zdrowe urządzenia zapasowe i otrzymaliśmy powiadomienie.

Zrozumienie poziomów RAID w systemie Linux

Oto krótki przegląd typowych poziomów RAID:

RAID0

Całkowity rozmiar tablicy jest n razy większy od rozmiaru najmniejszej partycji, gdzie n to liczba niezależnych dysków w tablicy (potrzebne będą co najmniej dwa dyski). Uruchom następujące polecenie, aby złożyć tablicę RAID 0 przy użyciu partycji /dev/sdb1 i /dev/sdc1.

mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1

Typowe zastosowania: konfiguracje obsługujące aplikacje czasu rzeczywistego, w których wydajność jest ważniejsza niż odporność na awarie.

RAID 1 (inaczej kopiowanie lustrzane)

Całkowity rozmiar tablicy jest równy rozmiarowi najmniejszej partycji (potrzebne będą co najmniej dwa dyski). Uruchom następujące polecenie, aby złożyć tablicę RAID 1 przy użyciu partycji /dev/sdb1 i /dev/sdc1.

mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1

Typowe zastosowania: instalacja systemu operacyjnego lub ważnych podkatalogów, takich jak /home.

RAID 5 (inaczej dyski z parzystością)

Całkowity rozmiar tablicy będzie (n – 1) razy większy od rozmiaru najmniejszej partycji. Przestrzeń „lost” w (n-1) jest używana do obliczenia parzystości (nadmiarowości) (będziesz potrzebować co najmniej trzech dysków).

Pamiętaj, że możesz określić urządzenie zapasowe (w tym przypadku /dev/sde1), które zastąpi wadliwą część w przypadku wystąpienia problemu. Uruchom następujące polecenie, aby złożyć tablicę RAID 5 przy użyciu partycji /dev/sdb1, /dev/sdc1, /dev/sdd1 i /dev/sde1 jako zapasowy.

mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1

Typowe zastosowania: serwery internetowe i serwery plików.

RAID 6 (inaczej dyski z podwójną parzystością

Całkowity rozmiar tablicy wyniesie (n*s)-2*s, gdzie n to liczba niezależnych dysków w macierzy, a s to rozmiar najmniejszego dysku. Pamiętaj, że możesz określić urządzenie zapasowe (w tym przypadku /dev/sdf1), które zastąpi wadliwą część w przypadku wystąpienia problemu.

Uruchom następujące polecenie, aby złożyć tablicę RAID 6 przy użyciu partycji /dev/sdb1, /dev/sdc1, /dev/sdd1 , /dev/sde1 i /dev/sdf1 jako zapasowe.

mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde --spare-devices=1 /dev/sdf1

Typowe zastosowania: Serwery plików i kopii zapasowych o dużej pojemności i wymaganiach wysokiej dostępności.

RAID 1+0 (inaczej Pasek Luster)

Całkowity rozmiar tablicy jest obliczany na podstawie wzorów dla RAID 0 i RAID 1, ponieważ RAID 1+0 jest kombinacją obu. Najpierw oblicz rozmiar każdego lustra, a następnie rozmiar paska.

Pamiętaj, że możesz określić urządzenie zapasowe (w tym przypadku /dev/sdf1), które zastąpi wadliwą część w przypadku wystąpienia problemu. Uruchom następujące polecenie, aby złożyć tablicę RAID 1+0 przy użyciu partycji /dev/sdb1, /dev/sdc1, /dev /sdd1, /dev/sde1 i /dev/sdf1 jako zapasowe.

mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]1 --spare-devices=1 /dev/sdf1

Typowe zastosowania: serwery baz danych i aplikacji wymagające szybkich operacji we/wy.

Tworzenie i zarządzanie kopiami zapasowymi systemu w systemie Linux

Nie zaszkodzi pamiętać, że RAID ze wszystkimi jego nagrodami NIE ZASTĘPUJE KOPII ZAPASOWYCH! Napisz to 1000 razy na tablicy, jeśli zajdzie taka potrzeba, ale pamiętaj, aby to zachować pomysł cały czas w głowie.

Zanim zaczniemy, musimy zauważyć, że nie ma jednego uniwersalnego rozwiązania do tworzenia kopii zapasowych systemu, ale jest kilka rzeczy, które należy wziąć pod uwagę podczas planowania strategii tworzenia kopii zapasowych.

  • Do czego używasz swojego systemu? (Desktop czy serwer? Jeśli ma zastosowanie ten drugi przypadek, jakie usługi są najbardziej krytyczne – czyja konfiguracja byłaby naprawdę trudna do stracenia?)
  • Jak często trzeba wykonywać kopie zapasowe systemu?
  • Jakie dane (np. pliki/katalogi/zrzuty baz danych) chcesz wykonać w kopii zapasowej? Możesz także rozważyć, czy naprawdę potrzebujesz tworzenia kopii zapasowych dużych plików (takich jak pliki audio lub wideo).
  • Gdzie (tzn. miejsce fizyczne i nośnik) będą przechowywane te kopie zapasowe?

1. Utwórz kopię zapasową dysków za pomocą polecenia dd

Wykonaj kopię zapasową całych dysków za pomocą polecenia dd. Można utworzyć kopię zapasową całego dysku twardego lub partycji, tworząc w dowolnym momencie dokładny obraz. Należy pamiętać, że działa to najlepiej, gdy urządzenie jest w trybie offline, co oznacza, że nie jest zamontowane i nie ma żadnych procesów uzyskujących do niego dostęp w celu wykonania operacji we/wy.

Wadą tej metody tworzenia kopii zapasowych jest to, że obraz będzie miał ten sam rozmiar co dysk lub partycja, nawet jeśli rzeczywiste dane zajmują niewielki procent tego obrazu.

Na przykład, jeśli chcesz utworzyć obraz partycji o wielkości 20 GB, która jest zapełniona tylko w 10%, plik obrazu nadal będzie miał pojemność 20 GB rozmiar. Innymi słowy, kopia zapasowa obejmuje nie tylko rzeczywiste dane, ale całą partycję. Możesz rozważyć użycie tej metody, jeśli potrzebujesz dokładnych kopii zapasowych swoich urządzeń.

Tworzenie obrazu partycji

dd if=/dev/sda of=/system_images/sda.img
OR
--------------------- Alternatively, you can compress the image file --------------------- 
dd if=/dev/sda | gzip -c > /system_images/sda.img.gz 

Przywracanie obrazu partycji

dd if=/system_images/sda.img of=/dev/sda
OR 
gzip -dc /system_images/sda.img.gz | dd of=/dev/sda 

2. Utwórz kopię zapasową plików za pomocą polecenia tar

Utwórz kopię zapasową niektórych plików w katalogach / za pomocą polecenia tar – omówiono to już w części 3 tej serii. Możesz rozważyć użycie tej metody, jeśli chcesz zachować kopie określonych plików i katalogów (pliki konfiguracyjne, katalogi domowe użytkowników itp.).

2. Kopia zapasowa i synchronizacja plików za pomocą polecenia rsync

Synchronizuj pliki za pomocą polecenia rsync, które jest wszechstronnym narzędziem do zdalnego (i lokalnego) kopiowania plików. Jeśli chcesz tworzyć kopie zapasowe i synchronizować pliki na/z dysków sieciowych, rsync jest dobrym rozwiązaniem.

Niezależnie od tego, czy synchronizujesz dwa katalogi lokalne, czy lokalne zdalne katalogi < --- zamontowane w lokalnym systemie plików, podstawowa składnia jest taka sama.

Synchronizowanie dwóch katalogów lokalnych

rsync -av source_directory destination directory

Gdzie -a powoduje powrót do podkatalogów (jeśli istnieją), zachowanie dowiązań symbolicznych, znaczników czasu, uprawnień i pierwotnego właściciela/grupy oraz -v szczegółowe.

Dodatkowo, jeśli chcesz zwiększyć bezpieczeństwo przewodowego przesyłania danych, możesz użyć ssh przez rsync.

Synchronizowanie katalogów lokalnych → zdalnych przez SSH

rsync -avzhe ssh backups root@remote_host:/remote_directory/

Ten przykład zsynchronizuje katalog kopii zapasowych na hoście lokalnym z zawartością katalogu /root/remote_directory na hoście zdalnym.

Gdzie opcja -h pokazuje rozmiary plików w formacie czytelnym dla człowieka, a flaga -e służy do wskazania połączenia SSH.

Synchronizowanie zdalnych → katalogów lokalnych przez SSH

W takim przypadku zamień katalogi źródłowy i docelowy z poprzedniego przykładu.

rsync -avzhe ssh root@remote_host:/remote_directory/ backups 

Pamiętaj, że to tylko 3 przykłady (najczęstsze przypadki, z którymi możesz się spotkać) użycia rsync. Więcej przykładów i zastosowań poleceń rsync można znaleźć w następującym artykule.

Streszczenie

Jako administrator systemu musisz upewnić się, że Twoje systemy działają tak dobrze, jak to możliwe. Jeśli jesteś dobrze przygotowany, a integralność Twoich danych jest dobrze wspierana przez technologię przechowywania, taką jak RAID i regularne kopie zapasowe systemu, będziesz bezpieczny.

E-Book LFCS jest już dostępny w sprzedaży. Zamów swój egzemplarz już dziś i rozpocznij swoją podróż do zostania certyfikowanym administratorem systemu Linux!

Product Name Price Buy
The Linux Foundation’s LFCS Certification Preparation Guide $19.99 [Buy Now]

Na koniec, rozważ zakup kuponu egzaminacyjnego za pomocą poniższych linków, aby otrzymać niewielką prowizję, która pomoże nam aktualizować tę książkę.

Jeśli masz pytania, uwagi lub dalsze pomysły na ulepszenie tego artykułu, nie wahaj się wyrazić poniżej. Ponadto rozważ udostępnienie tej serii na swoich profilach w sieciach społecznościowych.