Annuncio pubblicitario
I sistemi operativi Linux sono disponibili in vari gusti. Mentre i sistemi operativi Linux come Ubuntu sono abbastanza generici, altri ancora prendono di mira una nicchia. C'è Kali Linux orientato alla sicurezza. Distribuzioni leggere come Xubuntu e persino Hannah Montana Linux (!). Per l'uso desktop, un sistema operativo Linux vanilla funziona bene. Tuttavia, per attività specializzate come l'esecuzione di un server, è meglio trovare una versione su misura.
I contenitori sono sempre più popolari. Container Linux, precedentemente noto come CoreOS, è un sistema operativo Linux progettato per distribuzioni containerizzate semplici. È uno dei i più recenti sistemi operativi Linux di nicchia I più recenti sistemi operativi Linux per ogni nicchiaI sistemi operativi Linux vengono costantemente aggiornati, con alcuni più sostanziali di altri. Non sei sicuro di aggiornare? Dai un'occhiata a questi nuovi sistemi operativi Linux e vedi se dovresti provarli. Leggi di più . Dai un'occhiata a questa panoramica e sguardo pratico a Container Linux.
Hands-On con Container Linux: conoscenza di base
Prima di immergerci in Container Linux, iniziamo con una breve panoramica dell'architettura del server. Container Linux è progettato per distribuzioni in cluster. Una distribuzione in cluster sembra piuttosto complessa, ma è piuttosto semplice. In sostanza, un cluster di computer è composto da più server che lavorano insieme. Pertanto, funzionano come un'unità o sistema anziché come multiplo. Inoltre, i computer in un cluster presentano nodi o server che svolgono la stessa funzione. Quindi un nodo è una singola macchina mentre un cluster è un gruppo di server che lavorano insieme.
Le distribuzioni Linux container più comuni si trovano all'interno di ambienti cluster. La distribuzione precedentemente nota come CoreOS include anche i mezzi per girare a cluster da una sola macchina. La caratteristica distintiva di Container Linux, tuttavia, è la sua dipendenza contenitori.
A differenza di un sistema operativo desktop tradizionale, tutte le applicazioni vengono eseguite in contenitori. Mentre entrambe le macchine virtuali (VM) e i contenitori utilizzano metodi di virtualizzazione, i contenitori differiscono. A differenza delle macchine virtuali, i contenitori utilizzano lo stesso kernel del sistema operativo del computer host. Poiché le app in container e il computer host utilizzano lo stesso kernel, le distribuzioni di container beneficiano di una maggiore efficienza. Nella configurazione di una macchina virtuale, ogni VM esegue un'app e un sistema operativo guest. Funziona su hardware e sistema operativo host.
Le distribuzioni in container eseguono invece app nei propri contenitori in cima al software di virtualizzazione. docker rimane il software container più popolare, anche se chroot, LXC e Linux-VServer si collocano tra le alternative Docker.
Hands-On con Container Linux: perché usare i container?
OK, quindi i contenitori sono un metodo di virtualizzazione. Perché optare per un ambiente containerizzato? In genere i contenitori offrono prestazioni migliorate. Evitando sistemi operativi separati e invece usando un kernel condiviso, massimizzi l'efficienza della CPU, dello spazio di archiviazione e della memoria.
Poiché non è necessario eseguire più istanze del sistema operativo come in una configurazione di una macchina virtuale, è possibile eseguire più contenitori. I miglioramenti delle prestazioni derivano dalla necessità di un singolo sistema operativo. Allo stesso modo, è possibile creare contenitori più velocemente che in un ambiente di macchina virtuale. Pertanto i contenitori sono più adatti a mantenere l'agilità e consentire consegne e integrazioni continue.
Sviluppo agile si concentra sull'iterazione e il factoring nell'imprevedibilità. Puoi leggere il Manifesto Agile per ulteriori approfondimenti sulla filosofia agile. Tuttavia, nonostante i vantaggi dei contenitori, non è un metodo di virtualizzazione perfetto. Poiché i container condividono il kernel del sistema operativo host, esiste un rischio per la sicurezza. Qualsiasi vulnerabilità o violazione che colpisce un contenitore ottiene l'accesso al sistema operativo. Ma esiste una soluzione alternativa all'esecuzione di app in container su un sistema operativo all'interno di una macchina virtuale. Ciò garantisce che il sistema operativo della macchina host sia isolato dal sistema operativo host del contenitore singolare.
La containerizzazione richiede inoltre che i container utilizzino lo stesso sistema operativo. Con le macchine virtuali, ogni applicazione ottiene il proprio sistema operativo. Quindi non puoi eseguire app progettate per Windows Server in un ambiente Linux containerizzato e viceversa.
Hands-On con Container Linux: che cos'è Container Linux?
CoreOS, o Container Linux come viene ora chiamato, è un sistema operativo Linux open source. È una distro leggera destinata alle distribuzioni in cluster. Più specificamente CoreOS si concentra su implementazioni semplici, affidabili e scalabili. Non troverai un gestore di pacchetti. Invece Container Linux richiede l'esecuzione di tutte le app all'interno di container. Container Linux utilizza Chrome OS come base. Pertanto, Container Linux rimane piuttosto leggero. Per testare, ho eseguito il sistema operativo Linux precedentemente noto come CoreOS in una macchina virtuale su un vecchio laptop HP Envy m6-1205dx AMD A10. Il consumo di risorse di sistema è rimasto piuttosto basso.
Poiché Container Linux evita diverse funzionalità del sistema operativo desktop Linux tradizionale, mantiene la distribuzione leggera. A differenza di un sistema operativo desktop, non troverai un gestore di pacchetti. Al contrario, tutte le applicazioni vengono eseguite come contenitori Docker. Ciò garantisce portabilità e isolamento del servizio. Se desideri un ambiente desktop, sei sfortunato. Container Linux manca di un'interfaccia utente grafica. Invece, tutto è basato sulla riga di comando. Il Dashboard di CoreUpdate offre informazioni sullo stato della macchina, i servizi in esecuzione e lo stato del cluster. Ma è disponibile solo come componente in Abbonamento Premium a Managed Linux.
Architettura Linux contenitore
Container Linux è leggero e progettato per containerizzare e raggruppare. Poiché non esiste un ambiente desktop, la configurazione funziona in modo diverso rispetto a un sistema operativo Linux come CentOS o Ubuntu. All'avvio iniziale, Container Linux carica un file di configurazione cloud. Dovrai inserire le informazioni in cloud-config. Questo può essere un po 'complicato, specialmente per coloro che non hanno familiarità con la configurazione del cloud. Ma è un file essenziale che offre a Container Linux la sua capacità di caricare servizi essenziali, modificare parametri e gestire i cluster.
Inoltre, il etcd
e flotta
i demoni rimangono parte integrante di Container Linux. Entrambi questi servizi vengono avviati all'avvio per impostazione predefinita. Inoltre, all'avvio il file cloud-config consente all'host di sapere come unirsi a un cluster esistente. Il etcd
il demone distribuisce e archivia i dati per gli host all'interno di un cluster. È essenziale per mantenere le configurazioni e scoprire il servizio. Il flotta
il demone è simile a un init distribuito. Questo demone si collega a systemd
init per host in un cluster e si occupa di attività come la pianificazione del servizio.
Ogni sistema in a flotta
il cluster ne esegue solo uno fleetd
demone. Questo demone si assume due responsabilità principali in qualità di agente e motore. Come motore, il demone esegue le decisioni di pianificazione. Considerando che il lato agente esegue le unità. Nel cluster della flotta, etcd
è l'unico archivio dati. Tali informazioni come la presenza del cluster, lo stato dell'unità e i file dell'unità sono tutti archiviati all'interno di etcd
demone. Inoltre, è il mezzo per comunicare con l'agente della flotta e il motore.
Hands-On con Container Linux: chi dovrebbe usarlo?
Container Linux è scaricabile gratuitamente, leggero e abbastanza semplice da installare in una macchina virtuale. Chiunque abbia bisogno di implementazioni rapide, scalabili e containerizzate dovrebbe optare per Container Linux. Principalmente gli amministratori di sistema e gli amministratori di database trarranno il massimo beneficio da Container Linux. Dato che Container Linux non ha un ambiente desktop, è più adatto per la gestione dei cluster e nelle impostazioni del server. Se stai cercando un sistema operativo per server Linux, Container Linux è uno dei 12 migliori distribuzioni di server Linux 12 migliori sistemi operativi per server Linux e chi dovrebbe usarliCostruire un server? Linux è l'ideale, in genere offre autorizzazioni avanzate, maggiore flessibilità e stabilità. Ma quale scegliere? Scopri i 12 migliori sistemi operativi per server Linux e chi dovrebbe usarli. Leggi di più S.
Air Pair offre un'eccellente scrittura su Incentivi CoreOS. Questo articolo menziona l'alta disponibilità, la manutenzione dell'ambiente di produzione, il controllo della versione del software e così via come disegni principali per l'utilizzo di Container Linux. In particolare, esiste anche una community open source incredibilmente dedicata. Container Linux è su misura per utenti Linux esperti. La documentazione di aiuto, sebbene completa, presuppone un moderato grado di familiarità con Linux. Gli utenti principianti e principianti potrebbero avere qualche problema con l'installazione iniziale.
Più specificamente, il cloud-config può essere una sfida. Nella sezione commenti di uno Video di installazione di CoreOS, Utente YouTube Setyoso Nugroho ha dichiarato: "Bel tutorial! Abbastanza confuso quando si impara # configurazione del file cloud-config in CoreOS. ” Mentre la configurazione non è tremendamente difficile, Container Linux assume una forte conoscenza delle funzionalità di Linux come il VIM editore.
Hands-On con Container Linux: come installare
Esistono molti modi per installare Container Linux. Secondo il sito Web CoreOS, le piattaforme ufficiali includono Amazon EC2, DigitalOcean, Microsoft Azure, bare metal e OpenStack. Accanto a artisti del calibro di Oracle Linux, CentOS e Suse, CoreOS è uno dei pochi Sistemi operativi Linux compatibili con Azure Microsoft ama davvero Linux dopo tutto?Microsoft e Linux hanno avuto una relazione tumultuosa. Nel corso degli anni, i CEO hanno espresso il desiderio di vedere scomparire Linux, ma in questi giorni la storia è diversa. Dopo tutto, a Microsoft piace davvero Linux? Leggi di più . Grazie a una vivace comunità, sono supportate anche piattaforme come Packet, Rackspace, Brightbox, VirtualBox e VMware. Ho scoperto che il metodo più semplice era installare Container Linux su VirtualBox usando un file ISO. Ecco un guida rapida per l'uso di VirtualBox Come usare VirtualBox: Guida per l'utenteCon VirtualBox puoi facilmente installare e testare più sistemi operativi. Ti mostreremo come configurare Windows 10 e Ubuntu Linux come macchina virtuale. Leggi di più .
Configurazione di VirtualBox
Apri VirtualBox e ti verrà richiesto un nome di macchina virtuale, un tipo di sistema operativo e una versione. Ho chiamato il mio semplicemente CoreOS. Per il tipo, selezionare Linux. Come versione, usa Linux 2.6 / 3.x / 4 / x (64-bit). Fai clic su Avanti.
Ora dovrai allocare la tua RAM. CoreOS suggerisce un minimo di 1024 MB di RAM.
Dopo aver selezionato la RAM, dovrai aggiungere un disco rigido virtuale. Utilizzare l'opzione Crea un disco rigido virtuale ora.
Nella schermata successiva, ti verrà richiesto un tipo di file sul disco rigido. Seleziona VDI o Immagine disco VirtualBox.
Successivamente, configura lo spazio di archiviazione. Consiglio di utilizzare un file del disco rigido allocato dinamicamente.
Quindi scegli la posizione e la dimensione del file. Ho lasciato CoreOS predefinito come nome e ho optato per una dimensione dei dati di file di 8 GB.
Con la tua macchina virtuale CoreOS VirtualBox correttamente configurata, vai avanti e fai clic sul pulsante verde Avvia.
Dopo aver fatto clic su Avvia, dovrai selezionare un disco di avvio. Passa alla cartella in cui hai il tuo ISO CoreOS e continua.
Configurazione di Container Linux
Dopo aver avviato il tuo CoreOS ISO, Container Linux inizia a caricarsi. Alla fine vedrai che una riga fornisce la tua versione CoreOS e una lettura della riga di comando:
nucleo @ localhost
Digitare:
sudo openssl passwd -1> file-config-cloud
La riga di comando presenta un avviso che se non è possibile aprire il file di configurazione. Inserisci la password desiderata e continua. Successivamente inserisci:
cat file-config-file
Ciò restituisce una stringa lunga e crea un nuovo file di configurazione cloud. Ora apri il cloud-config in un editor visivo:
vi file di configurazione cloud
Questo carica un file di configurazione cloud che puoi modificare. CoreOS include un file di esempio avanzato di configurazione cloud:
Il mio sembrava:
# utenti cloud-config: moe passwd: gruppi [password SSL]: - sudo - docker.
Puoi controllare il tuo file di configurazione cloud inserendo:
cat file-config-file
Questo restituisce il tuo file di configurazione. Se tutto sembra a posto, procedere con l'installazione di CoreOS:
sudo coreos-install -d / dev / sda -C stabile -c cloud-config-file
Vedrai un messaggio che CoreOS viene scaricato, scritto e verificato. Al termine, vedrai un messaggio che dice "Successo! CoreOS [versione] è installato su / dev / sda. ”
Spegni la tua macchina virtuale CoreOS e poi riavviala. Quando si avvia il backup, assicurarsi di smontare CoreOS ISO altrimenti il CD live verrà eseguito nuovamente.
CoreOS verrà caricato e verrà visualizzato un prompt di accesso nella riga di comando:
accesso localhost:
Inserisci il tuo nome utente e password. Questo caricherà un messaggio che dice "Container Linux di CoreOS [versione]" e una nuova riga di comando.
Hands-On con Container Linux: i prossimi passi
Ora che Container Linux di CoreOS è installato correttamente, è possibile iniziare a configurare contenitori e cluster. La documentazione di CoreOS presenta un eccellente Guida Rapida. Sono disponibili informazioni sulla scoperta di servizi tramite etcd e una sezione sulla gestione dei container con Docker. Ho eseguito alcuni test rapidi come un pull Docker "Hello World". Inoltre, ho installato un'immagine Plex Docker perché sono un grande appassionato di media server. Infine, ho creato una flotta per la gestione dei cluster.
Quello che vorrai fare prima è configurare i componenti principali di Container Linux:
- etcd
- docker
- Flotta
Configurando queste tre basi principali, sarai pronto per il rilevamento del servizio, la gestione dei cluster e l'impostazione dei contenitori. Quindi puoi iniziare a containerizzare app e testare in sicurezza app desktop in un contenitore Docker sicuro Come testare in sicurezza le applicazioni desktop in un contenitore sicuro con DockerDocker è una piattaforma popolare per lo sviluppo e il test di applicazioni basate su server. Ma sapevi che puoi anche usarlo per eseguire in modo sicuro nuovi programmi sul desktop? Leggi di più .
Hands-On con Container Linux: pensieri finali
Non utilizzo spesso i container, ma la distribuzione semplificata di Container Linux. La documentazione è eccellente con file di configurazione di esempio. Si noti che per i principianti, molti non ufficiali tutorial di installazione video semplificare le installazioni di CoreOS. Mentre CoreOS afferma che Container Linux è leggero, inizialmente ero scettico. Eppure ho avviato Container Linux in una macchina virtuale con un consumo di risorse abbastanza basso. E poiché volevo testare se Container Linux era veramente leggero, ho usato il mio vecchio laptop HP e non ho riscontrato problemi.
Tuttavia, alcuni passaggi dell'installazione iniziale non sono molto "adatti ai principianti". L'installazione e la configurazione di Container Linux richiede una solida familiarità con Linux. In particolare, non ho provato la dashboard CoreUpdate, che CoreOS offre come funzionalità premium a pagamento. Mentre non ho problemi ad usare la riga di comando, un ambiente grafico per il monitoraggio farebbe una bella aggiunta.
Gli amministratori di sistema e gli amministratori di database traggono il massimo beneficio da Container Linux. Tuttavia, per i server domestici, è un mezzo semplice e leggero per creare un ambiente cluster. Inoltre, con Container Linux è possibile creare un cluster da una singola macchina. Ma Container Linux è un'ottima introduzione al lavoro con i container. Se stai cercando di saperne di più su Docker e i contenitori, Container Linux funziona davvero bene in una macchina virtuale e offre tutte le risorse necessarie per iniziare.
È un'eccellente soluzione pronta all'uso per i neofiti del Container, oltre a esperti ingegneri DevOps, amministratori di sistema e amministratori di database. In definitiva Container Linux di CoreOS è un mezzo semplice per creare un ambiente scalabile, efficiente e containerizzato.
Stai usando CoreOS? Hai intenzione di? Facci sapere come stai containerizzando su Linux nella sezione commenti qui sotto!
Moe Long è uno scrittore ed editore che copre tutto, dalla tecnologia all'intrattenimento. Ha conseguito un inglese A.A. presso l'Università della Carolina del Nord a Chapel Hill, dove era uno studioso di Robertson. Oltre a MUO, è stato descritto in htpcBeginner, Bubbleblabber, The Penny Hoarder, Tom's IT Pro e Cup of Moe.