Red Hat OpenShift Serverless integra le estensioni Knative di Kubernetes in Red Hat® OpenShift®, per consentirti di realizzare e distribuire applicazioni basate su eventi in Red Hat OpenShift.
Cos'è il serverless computing?
Il serverless computing è un modello di deployment che permette di creare ed eseguire applicazioni senza richiedere una conoscenza approfondita dell'infrastruttura alla base, partendo dal presupposto che la piattaforma è disponibile ovunque e funziona sempre. Adottando questo modello gli sviluppatori possono dedicarsi alla scrittura del codice e decidere dove eseguirlo, senza occuparsi dell'infrastruttura.
Un deployment serverless basato su eventi permette di eseguire il codice e il provisioning dell'infrastruttura solo quando necessario, lasciando inattiva l'applicazione se non serve. Un'applicazione serverless si espande automaticamente in base ai trigger di evento, per rispondere alle richieste in arrivo, e si riduce a zero dopo l'utilizzo.
Importanza del serverless computing
Il modello serverless permette di sfruttare maggiormente il potenziale di innovazione offerto da Red Hat OpenShift. Il serverless computing aiuta le aziende ad accelerare l'innovazione, astraendo l'applicazione dall'infrastruttura alla base. Le applicazioni vengono pacchettizzate come container conformi a OCI che possono essere eseguiti ovunque a prescindere dalle tecniche di programmazione.
La possibilità di eseguire qualsiasi container in modalità serverless è garantita dall'utilizzo di Knative upstream. Knative (che si pronuncia "Kay - Native") estende Kubernetes grazie a una serie di componenti per il deployment, l'esecuzione e la gestione delle moderne applicazioni tramite la metodologia serverless. Con Knative è possibile distribuire ed eseguire le applicazioni serverless su qualunque piattaforma Kubernetes, limitando il rischio di vendor lock in.
A differenza delle funzioni, i container serverless possono essere basati su qualsiasi runtime. Il codice può essere pacchettizzato in un container insieme ai runtime appropriati e la funzionalità serverless avvia i container dell'applicazione quando vengono chiamati da un evento. Quando non è in uso, il container può ridursi a zero per evitare di consumare risorse. Le applicazioni possono essere attivate da varie sorgenti eventi, come gli eventi delle applicazioni proprietarie, i servizi cloud dei diversi provider, i sistemi Software-as-a-Service (SaaS) e altri servizi.
Tutti questi trigger di eventi possono essere utilizzati per eseguire l'applicazione on demand. Questa struttura permette di scomporre un'applicazione monolitica in singoli container, che vengono attivati dalla logica dell'applicazione, utilizzando gli eventi in arrivo per determinare quando avviarla.
Come sfruttare Red Hat OpenShift Serverless per risolvere le problematiche aziendali
Gli sviluppatori possono utilizzare Red Hat OpenShift Serverless per creare, distribuire ed eseguire applicazioni basate su eventi che vengono avviate da un trigger di evento e che, in base alle esigenze, sono in grado di ampliare e ridurre le risorse fino a zero al temine del burst. Grazie a Knative, le applicazioni serverless Red Hat OpenShift possono essere eseguite ovunque sia installato Red Hat OpenShift, ovvero on premise, in ambienti multicloud, di cloud pubblico o all'edge, utilizzando sempre la stessa interfaccia.
La gestione di tutti gli aspetti del deployment di qualsiasi container in modalità serverless è integrata direttamente nell'interfaccia di OpenShift. Gli sviluppatori possono identificare visivamente gli eventi che determinano l'avvio delle proprie applicazioni containerizzate, con la possibilità di modificare i parametri degli eventi in vari modi.
La vasta gamma di sorgenti eventi supportate permette di scegliere e controllare i trigger che avviano i container, li espandono quando necessario e li riducono a zero quando non servono più.
Poiché le funzionalità serverless sono completamente integrate nella piattaforma Red Hat OpenShift, per i team operativi è molto più facile gestirne l'implementazione, mentre gli sviluppatori possono gestire più agevolmente i deployment basati su eventi. Il personale operativo può sfruttare l'allineamento fra l'allocazione delle risorse e l'utilizzo delle applicazioni per ottimizzare la disponibilità all'interno di un insieme ibrido di destinazioni di elaborazione. Gli sviluppatori possono verificare rapidamente come viene attivato il loro codice, evidenziando le sorgenti eventi in entrata che sono state definite per l'avvio dei singoli servizi.
In questo modo si ottiene un framework che coniuga le capacità operative con le modalità di deployment delle applicazioni offerte da Red Hat OpenShift.