Le applicazioni serverless sono più veloci e semplici con OpenShift

Red Hat OpenShift Serverless è un insieme di componenti orientati agli eventi basati su Kubernetes per microservizi, container e implementazioni di Function-as-a-Service (FaaS).

Le applicazioni serverless sono più veloci e semplici con OpenShift

Questa soluzione Knative e Red Hat OpenShift è pronta all'uso e include strumenti di sicurezza e instradamento del traffico, combinando Red Hat Operators,

OpenShift Serverless consente agli sviluppatori di concentrarsi completamente sulla creazione di applicazioni di nuova generazione, offrendo un'ampia gamma di linguaggi di programmazione, framework, ambienti di sviluppo e altri strumenti per la creazione e distribuzione di prodotti innovativi nel settore.

Caratteristiche principali di Red Hat OpenShift Serverless:

  • Ampia scelta di linguaggi di programmazione e componenti runtime per applicazioni serverless. Puoi scegliere esattamente il set di strumenti di cui hai bisogno.
  • Ridimensionamento orizzontale automatico in base all'intensità delle richieste o in occasione di eventi per una gestione efficiente delle risorse basata su necessità reali, e non ipotetiche.
  • Integrazione completa con OpenShift Pipelines, un sistema di Continuous Integration/Delivery (CI/CD) orientato a Kubernetes, basato su Tekton.
  • Fondamenta tramite Red Hat Operator, che consente agli amministratori di gestire in modo sicuro istanze attive e di aggiornarle, organizzando anche il ciclo di vita delle applicazioni come servizi cloud.
  • Monitoraggio continuo delle nuove release della community, inclusi Knative 0.13 Serving, Eventing e kn (CLI ufficiale per Knative); come per tutti gli altri prodotti Red Hat, questo significa rigorosi test e verifica su varie piattaforme e configurazioni di OpenShift.

Inoltre, Red Hat collabora strettamente con diversi partner sulle tecnologie Serverless, incluso Microsoft su Azure Functions e KEDA (maggiori dettagli su qui). In particolare, un operatore certificato per OpenShift è già disponibile presso TriggerMesh, e di recente abbiamo iniziato una collaborazione con Serverless.com, per consentire al Serverless Framework di funzionare con OpenShift Serverless e Knative. Queste partnership possono essere viste come un segno della maturità del serverless e dell'inizio della formazione di un ecosistema settoriale.

Se hai precedentemente installato la versione beta di Red Hat OpenShift Serverless, puoi aggiornarla alla versione GA (disponibile al pubblico). In questo caso, dovrai riconfigurare il canale di aggiornamento dell'abbonamento OLM per la versione Technology Preview, come mostrato nella Figura 1.

Le applicazioni serverless sono più veloci e semplici con OpenShift
Figura 1. Aggiornamento del canale di abbonamento.

Il canale di abbonamento deve essere aggiornato per corrispondere alla versione della OpenShift Container Platform 4.4 o 4.3.

Servizi Knative – servizi di alto livello

OpenShift 4.4 semplifica notevolmente il deploy delle applicazioni con la funzionalità OpenShift Serverless, permettendo di implementare facilmente i Servizi Knative direttamente dalla modalità Developer della console web di OpenShift.

Quando aggiungi una nuova applicazione al progetto, è sufficiente specificare per essa il tipo di risorse Knative Service, attivando immediatamente la funzionalità OpenShift Serverless e abilitando lo scaling a zero in modalità di attesa, come mostrato nella Figura 2.

Le applicazioni serverless sono più veloci e semplici con OpenShift
Figura 2. Selezione del Knative Service come tipo di risorse.

Installazione semplice con Kourier

Come già accennato nella notizia della versione OpenShift Serverless 1.5.0 Tech Preview, l'uso di Kourier ha consentito di ridurre drasticamente l'elenco dei requisiti per l'installazione di Serverless su OpenShift, e nella versione GA questi requisiti sono ulteriormente diminuiti. Tutto ciò riduce il consumo di risorse, accelera l'avvio a freddo delle applicazioni e elimina l'impatto dei carichi di lavoro normali che operano nello stesso spazio dei nomi.

In generale, questi miglioramenti e le modifiche in OpenShift 4.3.5 accelerano la creazione delle applicazioni da un'immagine del container pre-costruita del 40-50% a seconda delle dimensioni dell'immagine.
Come avviene senza l'uso di Kourier può essere visto nella Figura 3:

Le applicazioni serverless sono più veloci e semplici con OpenShift
Figura 3. Tempo di creazione delle applicazioni in assenza di Kourier.

Come avviene quando si utilizza Kourier può essere visto nella Figura 4:

Le applicazioni serverless sono più veloci e semplici con OpenShift
Figura 4. Tempo di creazione delle applicazioni utilizzando Kourier.

TLS/SSL in modo automatico

OpenShift Serverless ora può creare e implementare automaticamente TLS/SSL per il percorso (OpenShift Route) del tuo Knative Service, permettendoti di non dover gestire l'implementazione e la manutenzione di queste funzioni mentre lavori all'applicazione. In altre parole, Serverless libera gli sviluppatori dalle complessità associate a TSL, mantenendo comunque un alto livello di sicurezza, quello che ci si aspetta da Red Hat OpenShift.

Interfaccia della riga di comando di OpenShift Serverless

In OpenShift Serverless, it is called kn and is available directly in the OpenShift console on the Command Line Tools page, as shown in Fig. 5:

Le applicazioni serverless sono più veloci e semplici con OpenShift
Fig. 5. OpenShift Serverless command line interface download page.

When downloading from this page, you get the kn version for MacOS, Windows, or Linux, which is verified by Red Hat and guaranteed to be free from malware.

Fig. 6 shows how to deploy a service in kn with just one command, creating an application instance on the OpenShift platform with URL access in seconds:

Le applicazioni serverless sono più veloci e semplici con OpenShift
Fig. 6. Using the kn command line interface.

This tool allows full management of Serverless Serving and Eventing resources without needing to view or edit any YAML configurations.

Enhanced Topology view in Developer mode of the console

Now let's see how the improved Topology view simplifies the management of Knative Services.

Knative Service-centered visualization

Knative Services in the Topology view page are displayed as rectangles containing all revisions, as shown in Fig. 7:

Le applicazioni serverless sono più veloci e semplici con OpenShift
Fig. 7. Knative Services in the Topology view page.

Here you can instantly view the current traffic distribution percentages for Knative Service and group Knative Services within an application group for easy visual control of what’s happening within the selected group.

Collapsing OpenShift Knative Services lists

Continuing the topic of grouping, it's important to note that in OpenShift 4.4, you can collapse Knative Services within an application group for more convenient viewing and management of services when more complex applications are deployed in the project.

Knative Service in detail

In OpenShift 4.4, the sidebar for Knative Services has also been improved. A Resources tab has been added, displaying service components such as Pods, Revisions, and Routes. These components also provide quick and easy access to the logs of individual pods.

The Topology view also shows traffic distribution percentages and even allows for quick configuration changes. Thus, you can quickly see the traffic distribution for the selected Knative Service in real-time by the number of pods running for a given revision, as shown in Fig. 8.

Le applicazioni serverless sono più veloci e semplici con OpenShift
Fig. 8. Traffic distribution for Knative Service.

A deeper look at Serverless Revisions.

Ora la visualizzazione Topology consente di esaminare più a fondo la revisione selezionata, ad esempio, visualizzando rapidamente tutti i suoi pod e, se necessario, consultando i loro log. Inoltre, in questa visualizzazione è possibile accedere facilmente ai deployment e alle configurazioni della revisione, oltre a una sottorete che punta direttamente a questa revisione, come mostrato in Fig. 9:

Le applicazioni serverless sono più veloci e semplici con OpenShift
Fig. 9. Risorse associate alle revisioni.

Speriamo che le innovazioni sopra descritte siano utili nella creazione e gestione di applicazioni serverless, e che nelle prossime versioni ci saranno ancora più funzionalità utili per gli sviluppatori, come la possibilità di creare fonti di eventi e altro.

Interessati?

Prova OpenShift!

Ci interessa il tuo feedback

Dicci, cosa pensi del serverless. Unisciti al nostro gruppo Google OpenShift Developer Experience per partecipare a discussioni e seminari Office Hours, per collaborare con noi e lasciare le tue opinioni e suggerimenti.

Ulteriori informazioni

Scopri di più sulla sviluppo di applicazioni OpenShift con le seguenti risorse di Red Hat:

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster