Abbiamo spesso parlato dell'automazione all'interno dei progetti IT, di come possa portare vantaggi ma anche svantaggi. Oggi vogliamo focalizzare la nostra attenzione su una soluzione che si occupa proprio di questo aspetto, ovvero Apache OpenWhisk. La piattaforma è stata creata da IBM e Adobe ma ora il suo codice si trova all'interno di Apache Incubator, in modo da supportare al meglio la sua evoluzione. Si tratta nello specifico di una Functions-as-a-Service (FaaS) platform totalmente Cloud Based.
Questa Cloud platform si occupa in pratica di eseguire funzionalità in risposta a determinati eventi. Il gestore del servizio infatti più impostare delle regole che possono essere attivate ed eseguite a seguito di specifici eventi. Con Apache OpenWhisk dunque è possibile creare delle regole e delle azioni, testarle, connetterle con altre azioni ed eseguire il debug di queste ultime.
Gli sviluppatori dovranno dunque occuparsi di scrivere delle funzioni standalone che poi vengono caricate su Apache OpenWhisk come Actions, esse saranno completamente autonome ed indipendenti dagli eventi che li attiveranno. Perché vengano invocate è necessario creare un sistema di Trigger e Rule che andranno a richiamarle, ad esempio un trigger può essere la modifica del codice su di un repository di Gitub, la rule quindi farà attivare una Action che andrà a scaricare il nuovo codice per poi eseguirlo o conservarne il backup.
Una delle caratteristiche chiave di Apache OpenWhisk è la sua natura Serverless. Il suo network infatti non è incentrato su dei server ma viene dislocato tra i vari utenti e il lavoro di gestione del network viene eseguito dagli stessi utilizzatori. Evitando quindi ai vari team di sviluppo i costi di affitto dei server e il lavoro di manutenzione di questi ultimi.
Apache OpenWhisk si presta dunque come ottimo alleato per gestire il ciclo di vita di un'applicazione, visto che può automatizzare una serie di operazioni di manutenzione e debug che di solito vengono svolte manualmente dal team di sviluppo.
Via Apache OpenWhisk