MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e...
Transcript of MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e...
![Page 1: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/1.jpg)
MIDDLEWARE TRACK
A cura del Middleware Solution Architect team di Red Hat
#redhatosd
![Page 2: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/2.jpg)
Agenda Middleware Track part 1
● 14.00 MicroServices, le dimensioni non contano○ Ugo Landini, Samuele Dell’Angelo
● 14.30 Wildfly Swarm, Spring Boot & Vertx.io: il nuovo che avanza○ Ugo Landini, Samuele Dell’Angelo
● 15.00 Microservices con JBoss EAP 7: innovare in continuità○ Giuseppe Bonocore
● 15.30 Microregole per grandi progetti con il BRMS○ Andrea Leoncini
![Page 3: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/3.jpg)
Agenda Middleware Track part 2
● 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago○ Filippo Calà, Ugo Landini
● 16.30 API Management con 3Scale nell’era dei microservizi○ Luca Bigotta
● 17.00 SALA PLENARIA
● 17.15 ESTRAZIONE FINALE PREMI
![Page 4: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/4.jpg)
#redhatosd
![Page 5: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/5.jpg)
![Page 6: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/6.jpg)
MicroServices: le dimensioni non contano
Ugo Landini & Samuele Dell’Angelo
#redhatosd
![Page 7: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/7.jpg)
389 project | aeolus-configure | anaconda | attr | Audrey | Augeas | AuthHub | Autofs | Avahi | Beaker | Boxes | Btrfs | CacheFS | Cairo | candlepin | certmonger | CIFS | Cluster 3 | cobbler | colord | Completely Fair Scheduler | Conductor Control Group Configuration Library | Corosync | CRaSH | Crypto API | Cumin | Cygwin | D-Bus | Dashbuilder | Data Grids for the Java Platform | device-mapper | DeviceKit | DistributionUtilities | dlm | Dogtag | DPDK | Dracut | Editline Library EDS | EJB 3 | elfutils | elfutils | Embedded Jopr | Evolution | Evolution-exchange | eXo JCR | ext3 | ext4 | fence-agents | fence-virt | Flannel | fontconfig | func | Gamin | GateIn Portal | gcc | gcc | gcj | gdb | GFS | GFS2 | glib | gss-proxy GTK+ | gvfs | gzip | HTCondor | ID Utils | imagefactory | IPSec-Tools | iptraf-ng | Jandex | Java | JGroups | Jreadline | JRuby | JSFUnit | jUDDI | Katello | Kerberos | Kimchi | Koji | libguestfs | libibverbs | libminidump | libnotify | libqb libstoragemgmt | libuser | libvirt | libxml2 | libxslt | Linux Audit | Linux Infiniband Project | Linux Kernel | Linux PAM | linux-nfs | Luci | LVM2 | LVM2 | lynx | ManageIQ | Matahari | Maven Integration for Eclipse | Maven Integration for Web Tools Platform | Mock | mod_cluster | moVirt | nautilus | netfilter | NetworkManager | NFS-Ganesha | nmap | Open vSwitch | openais | OpenDaylight | OpenJDK | OpenSSH | OpenSSL | OPNFV | OProfile | oVirt | oVirt Engine | oVirt Node | OVMF | Oz pacemaker | PackageKit | PackageKit | pango | PAPI | Paradyn | patchutils | Performance Co-Pilot | PicketBox | PicketLink | piglit | pixman | polkit | Polkit Qt | Poppler | Portlet Bridge | PostgreSQL | PressGang psmisc | Pulp | PulseAudio | pungi | pynfs | QEMU | Red Hat Update Agent | RESTEasy | rgmanager | RHQ | rpm | rpmgrill | RSYSLOG | Samba | Samba | SETroubleshoot ShrinkWrap | slapi-ns | Smokestack | Spacewalk Spherical | Spice | Spice-gtk | Spice-protocol | Stilts | suds | SWI Prolog | SwitchYard | syslog-ng | System Security Services Daemon | systemd | SystemTap | The Foreman | Thin Crust | tin | UberFire | udev udisks | udisks | UPower | util-linux | Valgrind | vc-dwim | vdagent | vdsm | vfs | Virt-clone | Virt-image | Virt-Install | Virt-manager | Virt-viewer | Virtual memory manager | Wallaby | Wayland | Wise | XFS | xinput | XNIO | Xorg | XrandR | yum
![Page 8: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/8.jpg)
10 Deploy al giorno
Come è possibile?
![Page 9: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/9.jpg)
![Page 10: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/10.jpg)
Cos’è una Microservice Architecture (MSA)?Un approccio architetturale per decomporre applicazioni complesse in sistemi indipendenti
● Organizzati per business capabilities
● Scalabilità indipendente
● Ciclo di vita indipendente
● Governo decentralizzato
● Data management decentralizzato
![Page 11: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/11.jpg)
Cos’è una Microservice Architecture (MSA)?
Picco di aspettative
gonfiate
x
Disillusione
Qui si fa sul serio
![Page 12: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/12.jpg)
Your Journey to Microservices :-)
Self-Service,On-Demand,
Elastic,Infrastructure
asCode
(Cloud)
Re-Org ->DevOps
Automazione:Puppet, Chef,
Ansiblee/o
Containers
CI & CDDeployment
Pipeline
UnMicroservizio
SiliconValley
DotComStartup
Cos’è una Microservice Architecture (MSA)?
![Page 13: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/13.jpg)
1. Self-Service, on-demand, elastic infrastructure as codea. Quanti gg per il provisioning di una nuova VM?
2. Dev vs OpsChi risponde al telefono se l’app non funziona?
3. AutomationPhoenix vs Snowflake
4. CI & CDa. Deployment Pipeline
Cos’è una Microservice Architecture (MSA)?
![Page 14: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/14.jpg)
Cos’è una Microservice Architecture (MSA)?
GREENBROWN
![Page 15: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/15.jpg)
A Development / Deployment Time:● Automation● Continuous Integration / Delivery● Configuration Management● Service / API design● Rigorous Testing ● Dependency management● Design for eventual consistency● Artifact repositories
Container: standardizzazione, automation e dependency managementUser Experience: maggiore produttività per gli sviluppatori
A Runtime:● Standardization● Isolation● Service Discovery● Load Balancing● Circuit Breaker, Fallback● Health checks & automated recovery● Distributed logging● Tracing● Infrastructure Monitoring
![Page 16: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/16.jpg)
● Deploy facile e portabile● Creato da immagini immutabili e
a strati (layered)● Isolato dal sistema operativo
dell’host.
I Container impacchettano le applicazioni con le loro dipendenze, isolando il runtimeAlta densità e massima efficienza
HOST OS
SERVER
CONTAINER
LIBS
APP
CONTAINER
LIBS
APP
![Page 17: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/17.jpg)
DEMO BUILD YOUR OWN CONTAINER IN 50 lines
![Page 18: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/18.jpg)
● Isolati e sicuri● Sembrano girare in un loro
ambiente● Se ne possono far girare
centinaia in una sola macchina● Le funzionalità sono nel kernel ● Docker è semplicemente un
formato
I Container sono dei semplici processi Linux
Alta densità e massima efficienza
HOST OS
SERVER
CONTAINER
LIBS
APP
CONTAINER
LIBS
APP
![Page 19: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/19.jpg)
Kubernetes è un container orchestrator per le applicazioni (non per le macchine)Dal greco “pilota”: radice della parola “governatore” (dal latino: gubernator)
MasterNode
Bare Metal Virtual Private Cloud Public Cloud
Storage
OperatorExternal Services
![Page 20: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/20.jpg)
A Development / Deployment Time:● Automation● Continuous Integration / Delivery● Configuration Management● Service / API design● Rigorous Testing ● Dependency management● Design for eventual consistency● Artifact repositories
Kubernetes aggiunge caratteristiche fondamentali per le MSAs (e non solo!)Kubernetes è la versione open di Borg, il sistema usato internamente da Google per scalare.
A Runtime:● Standardization● Isolation● Service Discovery● Load Balancing● Circuit Breaker, Fallback● Health checks & automated recovery● Distributed logging● Tracing● Infrastructure Monitoring
![Page 21: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/21.jpg)
![Page 22: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/22.jpg)
OpenShift Container Platform è la versione ENTERPRISE di Kubernetes
SERVICE CATALOG(LANGUAGE RUNTIMES, MIDDLEWARE, DATABASES, …)
SELF-SERVICE
APPLICATION LIFECYCLE MANAGEMENT(CI / CD)
BUILD AUTOMATION DEPLOYMENT AUTOMATION
CONTAINER CONTAINERCONTAINER CONTAINER CONTAINER
NETWORKING SECURITYSTORAGE REGISTRYLOGS &
METRICS
CONTAINER ORCHESTRATION & CLUSTER MANAGEMENT(KUBERNETES)
RED HAT ENTERPRISE LINUX
CONTAINER RUNTIME & PACKAGING(DOCKER)
ATOMIC HOST
INFRASTRUCTURE AUTOMATION & COCKPIT
![Page 23: MIDDLEWARE TRACK - Red · PDF fileAgenda Middleware Track part 2 16.00 Integrazione e microservizi: come un cammello può passare dalla cruna di un ago Filippo Calà, Ugo Landini](https://reader031.fdocuments.us/reader031/viewer/2022030410/5a988b267f8b9a30358d6e29/html5/thumbnails/23.jpg)
A Development / Deployment Time:● Automation● Continuous Integration / Delivery● Configuration Management● Service / API design● Rigorous Testing ● Dependency management● Design for eventual consistency● Artifact repositories
Openshift Container Platform aggiunge ulteriori servizi per gli sviluppatoriIl developer si deve concentrare solo sul design & development dei microservizi
A Runtime:● Standardization● Isolation● Service Discovery● Load Balancing● Circuit Breaker, Fallback● Health checks & automated recovery● Distributed logging● Tracing● Infrastructure Monitoring