Panoramica
Gli operatori Red Hat® OpenShift® automatizzano le modalità di creazione, configurazione e gestione delle applicazioni Kubernetes native. Utilizzano definizioni di risorse personalizzate, correzioni automatizzate e cicli continui per configurare i file YAML. Red Hat OpenShift utilizza gli operatori per eseguire la piattaforma applicativa in modo autonomo esponendo la configurazione in modo nativo tramite oggetti Kubernetes, consentendo un'installazione rapida e aggiornamenti frequenti e solidi.
Gli operatori forniscono automazione a ogni livello dell'insieme di tecnologie, dalla gestione dei componenti che costituiscono la piattaforma fino alle applicazioni fornite come servizio gestito. Oltre ai vantaggi dell'automazione degli operatori per la gestione della piattaforma, Red Hat OpenShift rende più semplice trovare, installare e gestire gli operatori in esecuzione nei cluster.
Red Hat OpenShift include OperatorHub incorporato, un registro di operatori certificati da fornitori di software e progetti open source. All'interno di OperatorHub incorporato, puoi esplorare e installare una libreria di operatori il cui funzionamento con Red Hat OpenShift è stato verificato e che sono stati inseriti in un pacchetto per semplificare la gestione del ciclo di vita.
Cos'è un operatore Kubernetes?
Un operatore Kubernetes è un metodo per creare pacchetti, distribuire e gestire un'applicazione Kubernetes nativa. Un'applicazione Kubernetes nativa è un'applicazione distribuita su Kubernetes e gestita tramite le API Kubernetes e gli strumenti kubectl.
Un operatore è essenzialmente un controller personalizzato.
Un controller è un concetto alla base di Kubernetes e viene implementato come un ciclo software che viene eseguito continuamente sui nodi master di Kubernetes confrontando e, se necessario, riconciliando la condizione desiderata espressa e lo stato attuale di un oggetto. Gli oggetti sono risorse note come pod, servizi, ConfigMaps o PersistentVolumes. Gli operatori applicano questo modello a livello di intere applicazioni e sono, di fatto, controller specifici dell'applicazione.
L'operatore è un componente software, eseguito in un pod nel cluster, che interagisce con il server API Kubernetes. Introduce nuovi tipi di oggetti tramite le definizioni delle risorse personalizzate, un meccanismo di estensione in Kubernetes. Questi oggetti personalizzati sono l'interfaccia principale per un utente; coerenti con il modello di interazione basato sulle risorse nel cluster Kubernetes.
Un operatore verifica la presenza di questi tipi di risorse personalizzate e viene avvisato della loro presenza o modifica. Quando l'operatore riceve questa notifica, avvia l'esecuzione di un ciclo per garantire che tutte le connessioni necessarie per il servizio applicativo rappresentato da questi oggetti siano effettivamente disponibili e configurate nel modo espresso dall'utente nella specifica dell'oggetto.
Risorse da Red Hat
Cos'è il framework degli operatori?
Il framework degli operatori è un progetto open source che fornisce agli sviluppatori e agli amministratori di cluster gli strumenti per accelerare lo sviluppo e il deployment di un operatore.
Il progetto include l'operatore SDK (Software Development Kit) per la creazione di applicazioni Kubernetes, un framework di gestione per estendere Kubernetes con gli operatori e un catalogo di operatori esistenti della community di Kubernetes.
Operatori creati
Operatori della community
Con l'accesso agli operatori della community, gli sviluppatori e gli amministratori dei cluster possono provare operatori di vari livelli di maturità compatibili con qualsiasi Kubernetes. Dai un'occhiata agli operatori della community su OperatorHub.io.
Operatori certificati
Grazie agli operatori certificati di Red Hat OpenShift disponibili nell'OperatorHub incorporato, sviluppatori e amministratori dei cluster hanno accesso a una libreria di carichi di lavoro "as-a-service", verificata su Red Hat OpenShift e supportata da Red Hat e dai suoi partner.
Crea con Operator SDK
Operator SDK fornisce gli strumenti per creare, testare e creare pacchetti di operatori. SDK elimina gran parte del codice standard normalmente necessario per l'integrazione con l'API Kubernetes. Fornisce inoltre uno scaffolding utilizzabile che consente agli sviluppatori di concentrarsi sull'aggiunta della logica di business. Ad esempio su come rendere scalabile, aggiornare o eseguire il backup dell'applicazione gestita. SDK include le procedure e i modelli di codice all'avanguardia condivisi tra gli operatori per evitare gli sforzi doppi. Inoltre SDK promuove cicli di sviluppo e test brevi e iterativi con strumenti che consentono la convalida di base dell'operatore e pacchetti automatizzati per il deployment tramite Operator Lifecycle Manager.

Pacchetto con Operator Lifecycle Manager
OLM (Operator Lifecycle Manager) è il backplane che semplifica la gestione degli operatori su un cluster Kubernetes. Gli operatori che forniscono le applicazioni più diffuse saranno carichi di lavoro di lunga durata con, potenzialmente, molte autorizzazioni sul cluster.
Con OLM, gli amministratori possono controllare quali operatori sono disponibili in quali spazi dei nomi e chi può interagire con gli operatori in esecuzione. Le autorizzazioni di un operatore vengono configurate in modo accurato e automatico per seguire un approccio basato sul privilegio minimo. OLM gestisce l'intero ciclo di vita degli operatori e delle relative risorse, ad esempio risolvendo le dipendenze da altri operatori, attivando aggiornamenti sia per un operatore che per l'applicazione che gestisce o concedendo a un team l'accesso a un operatore per la propria parte del cluster.
Le applicazioni stateless semplici possono utilizzare le funzionalità di gestione del ciclo di vita del framework degli operatori, senza scrivere alcun codice, utilizzando un operatore generico (ad esempio Helm Operator). Tuttavia, un operatore può essere particolarmente utile per le applicazioni complesse e stateful. Le funzionalità dei servizi gestiti codificate nel codice dell'operatore possono offrire un'esperienza utente avanzata, automatizzando funzionalità come aggiornamenti, backup e scalabilità.
Guarda una panoramica video sul funzionamento degli operatori e di Helm

Misurazione con Operator Metering
Grazie alle estensioni di metering, i team IT possono avere un maggiore controllo sul budget e i fornitori di software possono monitorare più facilmente l'utilizzo del proprio software commerciale. Operator Metering è progettato per collegarsi ai report della memoria e della CPU del cluster, nonché per calcolare il costo IaaS e metriche personalizzate, come le licenze.
Accelera lo sviluppo delle app con Red Hat OpenShift
Scopri come Red Hat OpenShift può aiutare la tua organizzazione a sviluppare, accelerare e supportare la crescita dei carichi di lavoro tradizionali e basati sull'IA, garantendo al tempo stesso sicurezza e conformità.