GNU/Linux >> Linux Esercitazione >  >> Linux

Costruire un laboratorio domestico:Sysadmin dopo il tramonto

Nota del redattore:questo articolo è stato scritto mentre James Brigman era membro del programma Red Hat Accelerator.

Qui all'alba del nuovo decennio (o, tra un anno se si preferisce contare dal 2021), quasi tutti possiedono e utilizzano un computer, soprattutto se si considerano gli smartphone come computer (come sono). Gli amministratori di sistema, essendo impiegati nel settore IT, hanno in genere almeno un sistema personale (da cui fanno cose come navigare sul Web, acquistare oggetti o accedere al proprio banking online). Hanno altri sistemi personali, virtuali o bare metal hardware, sul quale eseguono autonomamente le funzioni di amministrazione del sistema in un ambiente privato e sicuro, interamente sotto il loro controllo.

Questa situazione è il motivo per cui molti amministratori di sistema hanno quantità eccessive di hardware nelle loro case. Vedrai di tutto, da una semplice macchina virtuale sul laptop, fino a un rack o mezzo rack pieno di hardware di classe server.

Sia che tu abbia già il tuo laboratorio di casa ingannato a tuo piacimento, o che tu stia pensando di costruirne uno tuo, parleremo dei dettagli dei laboratori di amministrazione del sistema domestico. Spero che tutti, dal principiante all'avanzato, trovino qualcosa di utile in questo articolo in più parti. Documenteremo le build hardware effettive nei post successivi.

Hardware

Iniziamo con cosa considerare per quanto riguarda l'hardware.

Intel contro ARM

Viviamo in un tempo fortunato e moderno. Gli amministratori IT hanno tre CPU tra cui scegliere per la creazione di sistemi domestici.

I processori CISC (Compless Instruction Set CPU) compatibili con Intel e AMD sono sempre disponibili. Inoltre, con l'uso diffuso e l'accettazione del processore ARM, abbiamo anche un'opzione a basso consumo ea basso costo per la costruzione di sistemi a casa o al lavoro.

Il processore ARM può essere trovato in sistemi come Raspberry Pi (RPi) e alcune schede Arduino. Questi computer fisicamente piccoli sono conosciuti come microcontrollori perché di solito vengono implementati per eseguire funzioni singole e limitate e potrebbero presentare un sistema operativo che presenta solo un ambiente di sviluppo integrato (IDE) all'utente.

Il punto in cui i microcontrollori diventano essenziali per gli amministratori di sistema è quando un amministratore di sistema deve essere in grado di collegare in rete quei sistemi a switch aziendali o ingegneristici tramite le loro interfacce Ethernet in rame integrate. Nel mio posto di lavoro, ci sono dozzine di questi piccoli sistemi in uso per funzioni di ingegneria che si connettono alla rete tramite porte Ethernet cablate. Il mio team riceve occasionalmente domande dai dipartimenti di ingegneria su queste minuscole macchine e io ho un interesse personale e le utilizzo personalmente per misurare il tempo o controllare dispositivi come stampanti 3D o sistemi di controllo numerico computerizzato (CNC). Il mio datore di lavoro li usa ampiamente per testare i prodotti.

Quanti anni sono troppo vecchi? (32 bit contro 64 bit)

I termini 32 bit e 64 bit fare riferimento alla larghezza del percorso dati della CPU e alla larghezza del percorso dati del bus di sistema. La larghezza del percorso dei dati in bit è la base per descrivere la capacità del sistema. I sistemi a 32 bit sono generalmente limitati a 4 GB di RAM o meno e i sistemi a 32 bit meno recenti possono avere un limite del disco di un numero ridotto di terabyte.

Nel 2020, i laptop e i PC desktop che puoi facilmente acquistare dispongono in genere di una CPU compatibile con Intel a 64 bit. Se il sistema ha un processore Intel originale, di solito elenca la classe di processore come Core i3, Core i5, Core i7 o Core i9. Queste designazioni sono in aggiunta ai processori Intel serie X. Il termine "Core i-something" è un modo per Intel di marcare e classificare i propri prodotti. "Core" non è un termine del settore, è semplicemente un esercizio di branding di Intel.

Una legittima pretesa di fama per Linux è che possiamo rimettere al lavoro l'antico hardware a 32 bit, spesso per un unico scopo o più piccole attività. Io stesso ho un piccolo set-top a 32 bit computer che continuo a utilizzare per un'applicazione con un unico scopo che deve essere eseguita su hardware e non verrà mai aggiornata per essere eseguita su una macchina virtuale. Quando è disponibile un sistema operativo, un sistema a 32 bit funziona ancora correttamente per singole funzioni, display Web o requisiti sempre attivi a basso consumo.

Il problema è che i sistemi Intel/AMD a 32 bit possono avere vantaggi limitati per la riproduzione di un ambiente IT a casa. Sebbene sia possibile eseguire alcuni software aziendali su un sistema a 32 bit, non è possibile ospitare macchine virtuali nel sistema vSphere ESXi su sistemi a 32 bit. La maggior parte dei tipi di origini dati avanzate non funzioneranno più su un sistema a 32 bit. Ciò include videoconferenza, browser basati sul Web, apprendimento online e strumenti di chat IT avanzati come Slack.

Certo, ti ho mentito solo ora. Il mondo è pieno zeppo di telefoni cellulari in grado di eseguire Slack, riprodurre video, ospitare l'apprendimento online e videoconferenze. (In realtà preferisco il mio cellulare per le videoconferenze).

Tuttavia, la maggior parte degli amministratori di sistema deve essere in grado di gestire le macchine virtuali utilizzando un hypervisor per controllare e gestire una o più macchine virtuali. Gli hypervisor moderni come vSphere ESXi funzionano in genere su sistemi a 64 bit. Pertanto, ad eccezione dei microcontrollori, l'hardware a 64 bit è la nuova normalità. Questa architettura offre capacità di RAM di 8 GB (e fino a 1 TB di RAM non è insolito negli ambienti IT aziendali) e capacità del disco di molti terabyte. Negli ambienti Big Data del 2020, non è raro trovare un petabyte di spazio su disco in un data center, una quantità di spazio di archiviazione che un tempo si pensava fosse impossibile nella pratica.

Soprattutto, per eseguire hypervisor come ESXi o KVM, è necessario un processore Intel con estensioni Intel VT-x o Intel-64. Per i processori AMD, sono necessarie le estensioni AMD-V o AMD64. Quindi, la mia raccomandazione fondamentale è quella di costruire la tua piattaforma di amministrazione del sistema domestico su una moderna CPU Intel a 64 bit con 8 GB di RAM o più e almeno 1 TB di spazio su disco. Questa configurazione è un sistema ragionevole per ospitare un hypervisor ed eseguire più di una macchina virtuale.

Chipset, grafica e interfacce di rete

Per eseguire Hypervisor, devi preoccuparti della compatibilità hardware. VMware fornisce un sofisticato sito Web rivolto al pubblico per verificare la compatibilità con l'hardware. vSphere ed ESXi sono state a lungo considerate le piattaforme hypervisor più restrittive, mentre KVM ha un requisito più fondamentale sulle CPU ed è meno severo su chipset, grafica e interfacce di rete.

Cose di cui essere a conoscenza

Ho spesso detto ad amici, familiari e colleghi che l'ambiente domestico ha requisiti molto più severi per l'hardware del computer rispetto al datacenter. Le persone non vivono nei data center, quindi sono dotate di aria condizionata per adattarsi all'hardware. Una casa è il luogo in cui vivono le persone che hanno bisogno di temperatura ambiente, un consumo di energia silenzioso e (preferibilmente) efficiente. Quindi, qualsiasi sistema che usi in casa renderà gli esseri umani più felici se è piccolo, silenzioso, non crea molto calore e utilizza meno energia elettrica possibile.

Le aziende di router Internet hanno davvero annullato questa formula. La maggior parte dei router Internet sono senza ventola, silenziosi e a basso consumo. Le build di computer di cui discutiamo in questo articolo non sono sistemi di gioco mostruosi, svolgono una o più specifiche funzioni di amministrazione del sistema, quindi aderire a questi standard è una buona idea.

Un'altra enorme differenza nell'ambiente domestico è che i tuoi sistemi possono (e perderanno) energia alla fine. Se non hai un gruppo di continuità (UPS) o un generatore a casa, il tuo sistema domestico deve essere in grado di tollerare i problemi di alimentazione o la perdita improvvisa di energia senza danni. Vuoi che il tuo sistema domestico si avvii ancora correttamente dopo un'interruzione di corrente significativa.

Tuttavia, non è raro che le unità disco rotanti si guastino dopo un'interruzione di corrente. Ciò accade perché quando i piatti smettono di girare, l'unità si raffredda al di sotto della sua temperatura di esercizio nominale. Queste due modifiche possono generare abbastanza stinti per evitare che le unità girino e si riavviino dopo un'interruzione di corrente. (Sì, l'aderenza è davvero una cosa.) La cosa buona è che i dispositivi di archiviazione dati a stato solido, o SSD, non hanno motori o piatti rotanti. Per loro, l'aderenza non una cosa. Gli SSD sono dispositivi fantastici da utilizzare per un sistema a basso consumo. Devi solo fornire la manutenzione del software per il numero di volte che leggi e scrivi sull'unità.

Quindi, se puoi acquisire sistemi a 64 bit che funzionano a freddo (o addirittura senza ventola), sono silenziosi e piccoli, vedrai molta più accettazione da parte della tua famiglia. Inoltre, troverai il sistema più affidabile e molto più facile essere nella stessa stanza. Ecco un collegamento di esempio al tipo di PC che massimizza il funzionamento fresco, silenzioso e piccolo. Questo prodotto non è una raccomandazione, ma semplicemente un esempio di ciò che è possibile fare.

Casi grandi e casi piccoli

Per decenni, grandi case per computer da scrivania hanno dominato i laboratori domestici e persino le macchine da gioco domestiche. La possibilità di ospitare una scheda madre con fattore di forma di grandi dimensioni con enormi quantità di RAM, molte unità disco e più schede video era desiderabile, oltre alla possibilità di raffreddare correttamente tutto l'hardware. Ora ci sono laptop e PC fanless che possono eseguire in modo efficiente molte macchine virtuali. Scegli una custodia grande se hai molti dischi rigidi legacy che devi utilizzare, ma se puoi scegliere lo spazio di archiviazione, una custodia grande non è un requisito rigoroso per la costruzione di un laboratorio domestico.

Monitor, mouse, tastiere e console

Linux accoglie con favore vecchi monitor, mouse e tastiere. Puoi contare sulla disponibilità di driver per il tuo vecchio monitor 640x480, la tua tastiera Dvorak o il tuo mouse a tre pulsanti. Ma, sebbene questi componenti siano economici, le nuove versioni portano con sé funzionalità utili e utili.

I monitor di oggi hanno risoluzioni di 1920x1080 e superiori. I mouse hanno più pulsanti e funzioni della rotellina di scorrimento. Le tastiere sono programmabili e dispongono di nuovi utili tasti funzione. Un nuovo grande monitor, tastiera o mouse fornisce un aggiornamento immediato, visibile o tattile a un computer. Questo fatto giustifica spendere un po' di soldi per questi articoli e raramente è una cattiva idea. Inoltre, sono ottimi regali per feste e compleanni a basso costo per gli amministratori di sistema.

Tuttavia, se hai parti, monitor e tastiere in casa o hai accesso gratuito a hardware più vecchio, vai avanti. Potrebbe essere necessario sopportare prestazioni o capacità inferiori, ma per far girare la palla non puoi battere.

Software

Ora, diamo un'occhiata a cosa considerare per quanto riguarda il software.

Bare metal vs. hypervisor o VM

Esistono considerazioni fondamentali tra l'esecuzione di software su bare metal e in un hypervisor o una macchina virtuale. L'esecuzione di software su bare metal di solito significa che hai solo hardware e un sistema operativo, il che significa che raggiungi il tuo obiettivo per il sistema utilizzando solo l'hardware e il sistema operativo. Se descriviamo questa configurazione utilizzando un paradigma di livello, ottieni questo:

  • Livello applicazione
  • Livello del sistema operativo
  • Livello hardware

Quindi, un esempio reale di questa configurazione potrebbe essere:

  • Livello applicazione: Software per fogli di calcolo
  • Livello del sistema operativo: Sistema operativo Raspbian
  • Livello hardware: Raspberry Pi

L'esecuzione di bare-metal significa utilizzare hardware meno recente e con prestazioni inferiori con meno memoria e spazio di archiviazione su disco. Questa configurazione potrebbe funzionare perfettamente per soddisfare un'esigenza particolare, soprattutto se non sono necessarie prestazioni elevate.

La virtualizzazione introduce un livello di hypervisor e astrae la macchina fisica in una macchina virtuale. Utilizzando lo stesso esempio Raspberry Pi:

  • Livello applicazione: Software per fogli di calcolo
  • Livello del sistema operativo: Sistema operativo Raspbian
  • Livello virtuale: Macchina virtuale
  • Livello di virtualizzazione: Hypervisor
  • Livello hardware: Hardware 

A causa di questa ulteriore complessità, l'esecuzione di macchine virtuali richiede hardware a 64 bit più veloce con più RAM e una maggiore velocità del disco (o SSD) per l'archiviazione. Anche se sarebbe fantastico poter eseguire macchine virtuali con le massime prestazioni su sistemi a 32 bit, gli utenti domestici in genere passano a sistemi a 64 bit con specifiche superiori con più RAM e più unità.

Docker su Raspberry Pi

Docker e container sono quasi l'opposto del modello di virtualizzazione. Utilizzando i container, puoi eseguire un sistema operativo su bare metal. Quindi, installi e gestisci il livello dell'applicazione all'interno dei contenitori.

Puoi eseguire Docker su Raspberry Pi e questo rende una piattaforma di apprendimento ragionevolmente buona per Docker e concetti di container. Dimostreremo questa capacità in un articolo successivo. Ecco un buon articolo di riferimento per Docker su RPi.

Server multimediale, backend e frontend

Molti amministratori di sistema creano un server multimediale o un server multimediale/streaming back-end. È importante notare che quando includi amici, familiari o coinquilini in questa configurazione, ora hai un server di produzione , piuttosto che un laboratorio domestico dell'amministratore di sistema.

I media server sono spesso un backend e ciò richiede un frontend che decodifica il video o l'audio per la riproduzione. In questi giorni, non è raro trovare un Raspberry Pi da $ 35 come frontend perché ha un display hardware di alta qualità e un chip di decodifica integrato. Questa configurazione si abbina bene con la CPU ARM a bassa velocità di clock scaricando le attività video.

JBOD vs RAID vs Unraid

RAID viene sottoposto a hash e rehashing tutto il tempo, quindi non entrerò in tutti i livelli RAID e simili qui. Invece, elencherò le tre opzioni in ordine di costo crescente:

  • JBOD: (costo più basso) Questa opzione può consistere in un solo mandrino o in una chiavetta USB.
  • Unraid: (Costo medio) Questa opzione è un livello software sull'hardware del disco che aiuta a gestire il disco.
  • RAID: (Costo più alto) Un array ridondante di dischi indipendenti (RAID) - pensavi di cavartela senza vedere l'acronimo esplicitato? - è in genere l'opzione più costosa perché richiede un controller in grado di connettersi a più unità. La necessità di parità fa aumentare i costi perché è lo spazio su disco che non puoi utilizzare per archiviare i tuoi dati, fungendo da sovraccarico per poter interrompere un'unità e continuare a funzionare.

Non è una cattiva idea testare un concetto di server con un singolo mandrino e, se ritieni di aver bisogno di prestazioni o affidabilità più elevate, scegli UNRAID o RAID.

[Cerchi ulteriori informazioni su RAID? Dai un'occhiata a "RAID per coloro che lo evitano". ]

Prossimi esempi di build

Negli articoli successivi daremo un'occhiata alle seguenti build:

  • BRACCIO
  • Informazioni
  • AMD
  • NFS/disco

Dimostrerò build a partire dal costo più basso possibile (RPi) fino a sistemi di qualità commerciale che eseguono hardware RAID. Parleremo dei pro e dei contro di ogni build.

Prima di concludere, voglio essere chiaro:il basso costo ha vantaggi oltre al semplice risparmio di denaro. Basso costo significa anche usa e getta, riconfigurabile e persino "da regalare". Seguirò la progressione dal costo basso a quello alto e spero di dimostrare come l'hardware a basso costo sia più flessibile e potente nell'ambiente domestico rispetto alle altre opzioni.

Riferimenti

Ecco i riferimenti su cui sbrigarti:

  • Unraid ti offre il massimo controllo sui tuoi dati e sulle tue applicazioni
  • 5 motivi per cui Unraid è la soluzione NAS definitiva per la casa
  • Serverbuilds.net
  • Hardware di Tom 
  • Guida alla compatibilità hardware VMware

Linux
  1. 4 strumenti per la creazione di sistemi Linux embedded

  2. Come migrare i file system Ext2/Ext3 su Ext4 su Linux

  3. Sicurezza Linux:proteggi i tuoi sistemi con fail2ban

  4. Come costruire un laboratorio domestico per apprendere nuove abilità Linux

  5. Laboratorio Linux:SysAdmin 101

L'amministrazione del sistema è morta, lunga vita all'amministrazione del sistema!

Come utilizzare gli snapshot LVM per ripristinare i sistemi Linux

Migliora le tue abilità Ansible divertendoti:Sysadmin dopo il tramonto

Risolvi gli errori dopo aver creato un server da un'immagine salvata

I 15 migliori sistemi di gestione dei documenti per il sistema Linux

Come riparare gli errori del file system nei sistemi basati su Debian