LFCS #6: Come assemblare partizioni come dispositivi RAID in Linux
La Linux Foundation ha lanciato la certificazione LFCS (Linux Foundation Certified Sysadmin), una brillante opportunità per gli amministratori di sistema di tutto il mondo di dimostrare, attraverso un esame basato sulle prestazioni, di essere in grado di esecuzione del supporto operativo complessivo sui sistemi Linux: supporto del sistema, diagnosi e monitoraggio di primo livello, oltre all'escalation dei problemi, quando richiesto, ad altri team di supporto.
La serie sarà intitolata Preparazione per le LFCS (Linux Foundation Certified Sysadmin) dalla Parti 1 alla 33 e coprirà gli argomenti seguenti argomenti:
- Part 1
Come utilizzare il comando "Sed" per manipolare i file in Linux
- Part 2
Come installare e utilizzare Vi/Vim in Linux
- Part 3
Come comprimere file e directory e trovare file in Linux
- Part 4
-
Come partizionare i dispositivi di archiviazione in Linux
- Part 5
Come montare filesystem (Samba e NFS) in Linux
- Part 6
Come assemblare partizioni come dispositivi RAID e creare backup di sistema
- Part 7
Gestione dei processi e dei servizi di avvio del sistema (SysVinit, Systemd e Upstart
- Part 8
Come gestire utenti e gruppi, autorizzazioni file e accesso Sudo
- Part 9
Gestione dei pacchetti Linux con Yum, RPM, Apt, Dpkg, Aptitude e Zypper
- Part 10
Apprendimento degli script di shell di base e della risoluzione dei problemi del file system
- Part 11
Come gestire e creare LVM utilizzando i comandi vgcreate, lvcreate e lvextend
- Part 12
Come esplorare Linux con la documentazione e gli strumenti della Guida installati
- Part 13
Come configurare e risolvere i problemi di Grand Unified Bootloader (GRUB)
- Part 14
-
Monitora l'utilizzo delle risorse dei processi Linux e imposta i limiti dei processi in base al singolo utente
- Part 15
Come impostare o modificare i parametri di runtime del kernel nei sistemi Linux
- Part 16
Implementazione del controllo degli accessi obbligatorio con SELinux o AppArmor in Linux
- Part 17
Come impostare elenchi di controllo di accesso (ACL) e quote disco per utenti e gruppi
- Part 18
Installazione dei servizi di rete e configurazione dell'avvio automatico all'avvio
- Part 19
Una guida definitiva per configurare il server FTP per consentire accessi anonimi
- Part 20
Configura un server DNS di memorizzazione nella cache ricorsiva di base e configura le zone per il dominio
- Part 21
Come installare, proteggere e ottimizzare le prestazioni del server database MariaDB
- Part 22
Come installare e configurare il server NFS per la condivisione del file system
- Part 23
Come configurare Apache con hosting virtuale basato sul nome con certificato SSL
- Part 24
-
Come configurare un firewall Iptables per abilitare l'accesso remoto ai servizi in Linux
- Part 25
Come trasformare un Linux in un router per gestire il traffico in modo statico e dinamico
- Part 26
Come impostare filesystem crittografati e scambiare utilizzando lo strumento Cryptsetup
- Part 27
Come monitorare l'utilizzo del sistema, le interruzioni e la risoluzione dei problemi dei server Linux
- Part 28
Come configurare un repository di rete per installare o aggiornare i pacchetti
- Part 29
Come controllare le prestazioni, la sicurezza e la risoluzione dei problemi della rete
- Part 30
Come installare e gestire macchine virtuali e contenitori
- Part 31
Impara le basi di Git per gestire i progetti in modo efficiente
- Part 32
Una guida per principianti alla configurazione degli indirizzi IPv4 e IPv6 in Linux
- Part 33
Una guida per principianti alla creazione di collegamenti e bridging di rete in Ubuntu
Questo post è la Parte 6 di una serie di 33 tutorial, in questa parte spiegheremo come assemblare le partizioni come dispositivi RAID e creare e gestire i backup di sistema, che sono richiesto per l'esame di certificazione LFCS.
Comprendere il RAID in Linux
La tecnologia nota come Redundant Array of Independent Disks (RAID) è una soluzione di archiviazione che combina più dischi rigidi in un'unica unità logica per fornire ridondanza di dati e/o migliorare le prestazioni nelle operazioni di lettura/scrittura su disco.
Tuttavia, la tolleranza agli errori effettiva e le prestazioni I/O del disco dipendono dalla modalità di configurazione dei dischi rigidi per formare l'array di dischi. A seconda dei dispositivi disponibili e delle esigenze di tolleranza agli errori/prestazioni, vengono definiti diversi livelli RAID.
È possibile fare riferimento al seguente articolo sulla serie RAID per una spiegazione più dettagliata di ciascun livello RAID.
Installa mdadm su Linux
Il nostro strumento preferito per creare, assemblare, gestire e monitorare i nostri RAID software si chiama mdadm (abbreviazione di amministratore di più dischi).
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]
Assemblaggio di partizioni come dispositivi RAID
Il processo di assemblaggio delle partizioni esistenti come dispositivi RAID consiste nei seguenti passaggi.
1. Crea un nuovo array utilizzando mdadm
Se una delle partizioni è stata formattata in precedenza o faceva parte in precedenza di un altro array RAID, ti verrà richiesto di confermare la creazione del nuovo array.
Supponendo che tu abbia preso le precauzioni necessarie per evitare di perdere dati importanti che potrebbero risiedere al loro interno, puoi tranquillamente digitare y e premere Invio.
mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1
2. Controllare lo stato di creazione dell'array
Per verificare lo stato di creazione dell'array, utilizzerai i seguenti comandi, indipendentemente dal tipo di RAID. Questi sono validi quanto quando stiamo creando un RAID0 (come mostrato sopra) o quando stai configurando un RAID5, come mostrato nell'immagine sotto.
cat /proc/mdstat
or
mdadm --detail /dev/md0 [More detailed summary]
3. Formattare il dispositivo RAID
Formatta il dispositivo con un filesystem secondo le tue esigenze/richieste, come spiegato nella Parte 4 di questa serie.
4. Monitorare il servizio dell'array RAID
Chiedere al servizio di monitoraggio di "tenere d'occhio" l'array. Aggiungi l'output di mdadm --detail --scan
a /etc/mdadm/mdadm.conf (Debian e derivati) o /etc/mdadm.conf (CentOS/openSUSE), in questo modo.
mdadm --detail --scan
mdadm --assemble --scan [Assemble the array]
Per garantire che il servizio venga avviato all'avvio del sistema, eseguire i seguenti comandi come root.
systemctl start mdmonitor
systemctl enable mdmonitor
5. Controllare il guasto del disco RAID
Nei livelli RAID che supportano la ridondanza, sostituire le unità guaste quando necessario. Quando un dispositivo nell'array di dischi diventa difettoso, viene avviata automaticamente una ricostruzione solo se è stato aggiunto un dispositivo di riserva al momento della creazione dell'array.
Altrimenti, dobbiamo collegare manualmente un'unità fisica aggiuntiva al nostro sistema ed eseguirla.
mdadm /dev/md0 --add /dev/sdX1
Dove /dev/md0 è l'array su cui si è verificato il problema e /dev/sdX1 è il nuovo dispositivo.
6. Smontare un array funzionante
Potrebbe essere necessario farlo se è necessario creare un nuovo array utilizzando i dispositivi – (Passaggio facoltativo).
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. Crea avvisi di posta
Puoi configurare un indirizzo email o un account di sistema valido a cui inviare gli avvisi (assicurati di avere questa riga in mdadm.conf). – (Passaggio facoltativo)
MAILADDR root
In questo caso, tutti gli avvisi raccolti dal demone di monitoraggio RAID verranno inviati alla casella di posta dell'account root locale. Uno di questi avvisi è simile al seguente.
Nota: questo evento è correlato all'esempio nel PASSO 5, in cui un dispositivo è stato contrassegnato come difettoso e il dispositivo di riserva è stato automaticamente integrato l'array di mdadm. Pertanto, abbiamo "esaurito" i dispositivi di riserva integri e abbiamo ricevuto l'avviso.
Comprensione dei livelli RAID in Linux
Ecco una breve panoramica dei livelli RAID comuni:
RAID0
La dimensione totale dell'array è n volte la dimensione della partizione più piccola, dove n è il numero di dischi indipendenti nell'array (saranno necessarie almeno due unità). Eseguire il comando seguente per assemblare un array RAID 0 utilizzando le partizioni /dev/sdb1 e /dev/sdc1.
mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1
Utilizzi comuni: configurazioni che supportano applicazioni in tempo reale in cui le prestazioni sono più importanti della tolleranza agli errori.
RAID 1 (aka Mirroring)
La dimensione totale dell'array corrisponde alla dimensione della partizione più piccola (saranno necessarie almeno due unità). Eseguire il comando seguente per assemblare un array RAID 1 utilizzando le partizioni /dev/sdb1 e /dev/sdc1.
mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
Utilizzi comuni: installazione del sistema operativo o di sottodirectory importanti, come /home.
RAID 5 (ovvero unità con parità)
La dimensione totale dell'array sarà (n – 1) volte la dimensione della partizione più piccola. Lo spazio "perso" in (n-1) viene utilizzato per il calcolo della parità (ridondanza) (saranno necessarie almeno tre unità).
Tieni presente che puoi specificare un dispositivo di riserva (/dev/sde1 in questo caso) per sostituire una parte difettosa quando si verifica un problema. Eseguire il comando seguente per assemblare un array RAID 5 utilizzando le partizioni /dev/sdb1, /dev/sdc1, /dev/sdd1 e /dev/sde1 come riserva.
mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1
Utilizzi comuni: server Web e file.
RAID 6 (ovvero unità con doppia parità
La dimensione totale dell'array sarà (n*s)-2*s, dove n è il numero di dischi indipendenti nell'array e s è la dimensione del disco più piccolo. Tieni presente che puoi specificare un dispositivo di riserva (/dev/sdf1 in questo caso) per sostituire una parte difettosa quando si verifica un problema.
Eseguire il comando seguente per assemblare un array RAID 6 utilizzando le partizioni /dev/sdb1, /dev/sdc1, /dev/sdd1 , /dev/sde1 e /dev/sdf1 come riserva.
mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde --spare-devices=1 /dev/sdf1
Utilizzi comuni: server di file e di backup con requisiti di grande capacità e disponibilità elevata.
RAID 1+0 (noto anche come Striscia di specchi)
La dimensione totale dell'array viene calcolata in base alle formule per RAID 0 e RAID 1 poiché RAID 1+0 è una combinazione di entrambi. Per prima cosa calcola la dimensione di ciascuno specchio e poi la dimensione della striscia.
Tieni presente che puoi specificare un dispositivo di riserva (/dev/sdf1 in questo caso) per sostituire una parte difettosa quando si verifica un problema. Eseguire il comando seguente per assemblare un array RAID 1+0 utilizzando le partizioni /dev/sdb1, /dev/sdc1, /dev /sdd1, /dev/sde1 e /dev/sdf1 come riserva.
mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]1 --spare-devices=1 /dev/sdf1
Utilizzi comuni: database e server applicazioni che richiedono operazioni I/O veloci.
Creazione e gestione dei backup di sistema in Linux
Non fa mai male ricordare che RAID con tutti i suoi vantaggi NON È UN SOSTITUZIONE DEI BACKUP! Scrivilo 1000 volte alla lavagna se necessario, ma assicurati di conservarlo idea in mente in ogni momento.
Prima di iniziare, dobbiamo notare che non esiste una soluzione unica per tutti per i backup di sistema, ma ecco alcune cose che devi tenere in considerazione durante la pianificazione di una strategia di backup.
- Per cosa usi il tuo sistema? (Desktop o server? Se si applica quest’ultimo caso, quali sono i servizi più critici – la cui configurazione sarebbe una vera seccatura da perdere?)
- Con quale frequenza è necessario eseguire i backup del sistema?
- Quali sono i dati (ad esempio file/directory/dump del database) di cui desideri eseguire il backup? Potresti anche considerare se hai davvero bisogno di eseguire il backup di file di grandi dimensioni (come file audio o video).
- Dove (intendendo luogo fisico e supporto) verranno archiviati tali backup?
1. Unità di backup utilizzando il comando dd
Effettua il backup di intere unità con il comando dd. Puoi eseguire il backup di un intero disco rigido o di una partizione creando un'immagine esatta in qualsiasi momento. Tieni presente che funziona meglio quando il dispositivo è offline, ovvero non è montato e non ci sono processi che vi accedono per operazioni di I/O.
Lo svantaggio di questo approccio di backup è che l'immagine avrà le stesse dimensioni del disco o della partizione, anche quando i dati effettivi ne occupano una piccola percentuale.
Ad esempio, se desideri creare l'immagine di una partizione di 20 GB piena solo al 10%, il file immagine sarà comunque di 20 GB in misurare. In altre parole, non viene eseguito il backup solo dei dati effettivi, ma dell'intera partizione stessa. Potresti prendere in considerazione l'utilizzo di questo metodo se hai bisogno di backup esatti dei tuoi dispositivi.
Creazione di un'immagine della partizione
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
Ripristino di un'immagine della partizione
dd if=/system_images/sda.img of=/dev/sda
OR
gzip -dc /system_images/sda.img.gz | dd of=/dev/sda
2. Backup dei file utilizzando il comando tar
Esegui il backup di determinati file nelle directory /
con il comando tar – già trattato nella Parte 3 di questa serie. Potresti prendere in considerazione l'utilizzo di questo metodo se devi conservare copie di file e directory specifici (file di configurazione, directory home degli utenti e così via).
2. Backup e sincronizzazione dei file utilizzando il comando rsync
Sincronizza i file con il comando rsync, che è uno strumento versatile per la copia di file remota (e locale). Se hai bisogno di eseguire il backup e sincronizzare i tuoi file da/verso unità di rete, rsync è la soluzione giusta.
Sia che tu stia sincronizzando due directory locali o directory remote < --- >
locali montate sul filesystem locale, la sintassi di base è la stessa.
Sincronizzazione di due directory locali
rsync -av source_directory destination directory
Dove, -a
ricorsiva nelle sottodirectory (se esistono), preserva i collegamenti simbolici, i timestamp, i permessi e il proprietario/gruppo originale e -v verboso.
Inoltre, se desideri aumentare la sicurezza del trasferimento dei dati via cavo, puoi utilizzare ssh su rsync.
Sincronizzazione delle directory locali → remote su SSH
rsync -avzhe ssh backups root@remote_host:/remote_directory/
Questo esempio sincronizzerà la directory di backup sull'host locale con il contenuto di /root/directory_remota sull'host remoto.
Dove l'opzione -h
mostra le dimensioni dei file in formato leggibile dall'uomo e il flag -e
viene utilizzato per indicare una connessione SSH.
Sincronizzazione delle directory remote → locali su SSH
In questo caso, scambiare le directory di origine e di destinazione dell'esempio precedente.
rsync -avzhe ssh root@remote_host:/remote_directory/ backups
Tieni presente che questi sono solo 3 esempi (i casi più frequenti in cui potresti imbatterti) dell'uso di rsync. Per ulteriori esempi e utilizzi dei comandi rsync è possibile trovare il seguente articolo.
Riepilogo
In qualità di amministratore di sistema, devi assicurarti che i tuoi sistemi funzionino nel miglior modo possibile. Se sei ben preparato e se l’integrità dei tuoi dati è ben supportata dalla tecnologia di archiviazione come RAID e backup regolari del sistema, sarai al sicuro.
L'eBook LFCS è ora disponibile per l'acquisto. Ordina la tua copia oggi e inizia il tuo viaggio per diventare un amministratore di sistema Linux certificato!
Product Name | Price | Buy |
---|---|---|
The Linux Foundation’s LFCS Certification Preparation Guide | $19.99 | [Buy Now] |
Ultimo ma non meno importante, considera l'acquisto del voucher per l'esame utilizzando i seguenti collegamenti per guadagnarci una piccola commissione, che ci aiuterà a mantenere aggiornato questo libro.
Se hai domande, commenti o ulteriori idee su come migliorare questo articolo, sentiti libero di parlare di seguito. Inoltre, considera la possibilità di condividere questa serie attraverso i tuoi profili di social network.