Costruisci, condividi, collabora

I contenitori sono una versione leggera dello spazio utente del sistema operativo Linux: in effetti, è il minimo indispensabile. Tuttavia, è ancora un sistema operativo a tutti gli effetti, e quindi la qualità di questo contenitore stesso è altrettanto importante di un sistema operativo a tutti gli effetti. Ecco perché per molto tempo abbiamo offerto Immagini Red Hat Enterprise Linux (RHEL)., in modo che gli utenti possano disporre di contenitori di livello aziendale certificati, moderni e aggiornati. Lancio immagini del contenitore (immagini contenitore) RHEL su host contenitore RHEL fornisce compatibilità e portabilità tra ambienti, per non parlare del fatto che si tratta di strumenti già familiari. C'era però un problema. Non potevi semplicemente consegnare quell'immagine a qualcun altro, anche se si trattava di un cliente o di un partner che utilizza Red Hat Enterprise Linux.

Costruisci, condividi, collabora

Ma ora tutto è cambiato

Con il rilascio di Red Hat Universal Base Image (UBI), ora puoi ottenere l'affidabilità, la sicurezza e le prestazioni che ti aspetti dalle immagini ufficiali dei container Red Hat, indipendentemente dal fatto che tu abbia un abbonamento o meno. Ciò significa che puoi creare un'applicazione containerizzata su UBI, inserirla nel registro dei container di tua scelta e condividerla con il mondo. Red Hat Universal Base Image ti consente di creare, condividere e collaborare su un'applicazione containerizzata in qualsiasi ambiente, dove vuoi.

Costruisci, condividi, collabora

Con UBI puoi pubblicare ed eseguire le tue applicazioni praticamente su qualsiasi infrastruttura. Ma se li esegui su piattaforme Red Hat come Red Hat OpenShift e Red Hat Enterprise Linux, puoi ottenere ulteriori vantaggi (più oro!). E prima di passare a una descrizione più dettagliata di UBI, consentitemi di fornire una breve domanda frequente sul motivo per cui è necessario l'abbonamento RHEL. Quindi, cosa succede quando si esegue un'immagine UBI sulla piattaforma RHEL/OpenShift?

Costruisci, condividi, collabora

E ora che siamo soddisfatti del marketing, parliamo più in dettaglio dell’UBI

Motivi per utilizzare l'UBI

Come dovresti sentirti sapendo che l'UBI ti avvantaggerà:

  • Il mio sviluppatori desidera utilizzare immagini contenitore che possano essere distribuite ed eseguite in qualsiasi ambiente
  • La mia squadra operazioni desidera un'immagine di base supportata con un ciclo di vita di livello aziendale
  • Il mio architetti vuole offrire Operatore Kubernetes ai miei clienti/utenti finali
  • Il mio i clienti non vogliono rimanere a bocca aperta con il supporto di livello aziendale per l'intero ambiente Red Hat
  • il mio la comunità vuole condividere, eseguire, pubblicare applicazioni containerizzate letteralmente ovunque

Se almeno uno degli scenari ti soddisfa, allora dovresti assolutamente dare un’occhiata all’UBI.

Più di una semplice immagine di base

UBI è più piccolo di un sistema operativo completo, ma UBI ha tre cose importanti:

  1. Un insieme di tre immagini di base (ubi, ubi-minimal, ubi-init)
  2. Immagini con ambienti runtime già pronti per vari linguaggi di programmazione (nodejs, ruby, python, php, perl, ecc.)
  3. Un insieme di pacchetti correlati nel repository YUM con le dipendenze più comuni

Costruisci, condividi, collabora

UBI è stato creato come base per le applicazioni web e native del cloud sviluppate e distribuite in contenitori. Tutto il contenuto di UBI è un sottoinsieme di RHEL. Tutti i pacchetti in UBI vengono distribuiti tramite canali RHEL e sono supportati in modo simile a RHEL quando vengono eseguiti su piattaforme supportate da Red Hat come OpenShift e RHEL.

Costruisci, condividi, collabora

Garantire un supporto di alta qualità per i container richiede un grande impegno da parte di ingegneri, specialisti della sicurezza e altre risorse aggiuntive. Ciò richiede non solo il test delle immagini di base, ma anche l'analisi del loro comportamento su qualsiasi host supportato.

Per alleviare l'onere dell'aggiornamento, Red Hat sta sviluppando e supportando in modo proattivo in modo che UBI 7 possa essere eseguito su host RHEL 8, ad esempio, e UBI 8 possa essere eseguito su host RHEL 7. Ciò offre agli utenti la flessibilità, la sicurezza e la tranquillità di mente di cui hanno bisogno durante il processo, ad esempio, gli aggiornamenti della piattaforma nelle immagini del contenitore o negli host utilizzati. Ora tutto questo può essere diviso in due progetti indipendenti.

Tre immagini fondamentali

Costruisci, condividi, collabora

Minimo: progettato per applicazioni con tutte le dipendenze (Python, Node.js, .NET, ecc.)

  • Insieme minimo di contenuti preinstallati
  • Nessun eseguibile suid
  • Strumenti minimi di gestione dei pacchetti (installazione, aggiornamento e rimozione)

Piattaforma: per qualsiasi applicazione in esecuzione su RHEL

  • Stack crittografico unificato OpenSSL
  • Stack YUM completo
  • Utili utilità di base del sistema operativo incluse (tar, gzip, vi, ecc.)

Multiservizio: semplifica l'esecuzione di più servizi in un unico contenitore

  • Configurato per eseguire systemd all'avvio
  • Capacità di abilitare i servizi in fase di creazione

Immagini contenitore con ambienti runtime del linguaggio di programmazione già pronti

Oltre alle immagini di base che consentono di installare il supporto del linguaggio di programmazione, gli UBI includono immagini predefinite con ambienti runtime già pronti per una serie di linguaggi di programmazione. Molti sviluppatori possono semplicemente prendere l'immagine e iniziare a lavorare sull'applicazione che stanno sviluppando.

Con il lancio di UBI, Red Hat offre due set di immagini, basate su RHEL 7 e basate su RHEL 8. Erano basate rispettivamente su Red Hat Software Collections (RHEL 7) e Application Streams (RHEL 8). Questi runtime vengono mantenuti aggiornati e ricevono fino a quattro aggiornamenti all'anno come standard, quindi hai sempre le versioni più recenti e più stabili.

Ecco un elenco delle immagini del contenitore UBI 7:

Costruisci, condividi, collabora

Ecco un elenco di immagini contenitore per UBI 8:

Costruisci, condividi, collabora

Pacchetti associati

Usare immagini già pronte è davvero molto conveniente. Red Hat li mantiene aggiornati e li aggiorna con il rilascio di una nuova versione di RHEL, nonché quando diventano disponibili aggiornamenti CVE critici in conformità con la politica di aggiornamento Politica sull'immagine di RHEL in modo che tu possa scattare una di queste immagini e iniziare immediatamente a lavorare sull'applicazione.

Costruisci, condividi, collabora

Ma a volte, quando crei un'applicazione, potresti improvvisamente aver bisogno di qualche pacchetto aggiuntivo. Oppure, a volte, per far funzionare l'applicazione, è necessario aggiornare l'uno o l'altro pacchetto. Ecco perché le immagini UBI vengono fornite con una serie di RPM disponibili tramite yum e distribuiti utilizzando una rete di distribuzione dei contenuti veloce e altamente disponibile (hai il pacchetto!). Quando esegui un aggiornamento yum sul tuo CI/CD in quel punto di rilascio critico, puoi essere sicuro che funzionerà.

RHEL è la fondazione

Non ci stanchiamo mai di ripetere che RHEL è la base di tutto. Sai quali team di Red Hat lavorano alla creazione di immagini di base? Ad esempio questi:

  • Team di ingegneri responsabile di garantire che le librerie principali come glibc e OpenSSL, nonché i runtime di linguaggi come Python e Ruby, forniscano prestazioni costanti ed eseguano carichi di lavoro in modo affidabile quando utilizzati in contenitori.
  • Il team di sicurezza del prodotto è responsabile della correzione tempestiva di errori e problemi di sicurezza nelle biblioteche e negli ambienti linguistici, l'efficacia del loro lavoro viene valutata utilizzando un indice speciale Grado dell'indice di salute del contenitore.
  • Un team di product manager e ingegneri si impegna ad aggiungere nuove funzionalità e a garantire un lungo ciclo di vita del prodotto, dandoti fiducia nel tuo investimento su cui costruire.

Red Hat Enterprise Linux costituisce un host e un'immagine eccellenti per i contenitori, ma molti sviluppatori apprezzano la capacità di lavorare con il sistema in una varietà di formati, alcuni dei quali potrebbero essere al di fuori dei casi d'uso supportati del sistema Linux. È qui che le immagini UBI universali vengono in soccorso.

Diciamo che adesso, in questa fase, stai solo cercando un'immagine di base per iniziare a lavorare su una semplice applicazione containerizzata. Oppure sei già più vicino al futuro e stai passando da contenitori autonomi in esecuzione su un motore di contenitore a una cronologia nativa del cloud utilizzando la creazione e la certificazione di operatori in esecuzione su OpenShift. In ogni caso, l’UBI costituirà un’ottima base a questo scopo.

Costruisci, condividi, collabora

I contenitori includono una versione leggera dello spazio utente del sistema operativo in un nuovo formato di packaging. Il rilascio delle immagini UBI stabilisce un nuovo standard di settore per lo sviluppo containerizzato, rendendo i contenitori di classe enterprise disponibili a qualsiasi utente, sviluppatori di software indipendenti e comunità open source. In particolare, gli sviluppatori di software possono standardizzare i propri prodotti utilizzando un'unica base comprovata per tutte le loro applicazioni containerizzate, comprese Operatori Kubernetes. Le società di sviluppo che utilizzano UBI hanno accesso anche alla certificazione Red Hat Container Certification e alla certificazione Red Hat OpenShift Operator, che a loro volta consentono la verifica continua del software in esecuzione su piattaforme Red Hat come OpenShift.

Costruisci, condividi, collabora

Come iniziare a lavorare con un'immagine

In breve, è molto semplice. Podman è disponibile non solo su RHEL, ma anche su Fedora, CentOS e molte altre distribuzioni Linux. Tutto quello che devi fare è scaricare l'immagine da uno dei seguenti repository e sei a posto.

Per UBI 8:

podman pull registry.access.redhat.com/ubi8/ubi
podman pull registry.access.redhat.com/ubi8/ubi-minimal
podman pull registry.access.redhat.com/ubi8/ubi-init

Per UBI 7:

podman pull registry.access.redhat.com/ubi7/ubi
podman pull registry.access.redhat.com/ubi7/ubi-minimal
podman pull registry.access.redhat.com/ubi7/ubi-init

Bene, dai un'occhiata alla guida completa all'immagine di base universale

Fonte: habr.com

Aggiungi un commento