Creare Cloud Ready App con Spring Cloud, Docker e Kubernetes

Impariamo a progettare e creare ecosistemi di microservizi con Spring Boot 2, Spring Cloud, Docker e Kubernetes

Ratings: 3.82 / 5.00




Description

Benvenuti nel corso 'Creare Cloud Ready Apps con Spring Cloud, Docker e Kubernetes'.

Seguendo questo corso avrete la possibilità di padroneggiare le tecniche di pianificazione, sviluppo, gestione e deploy delle applicazioni cloud ready e l'architettura di sviluppo basata sui micro servizi (microservices).

Le principali tecnologie che impareremo ad usare saranno;

  • Spring Boot 2

  • Spring Cloud

  • Docker

  • Kubernetes

Il corso si compone di diverse sezioni didattiche, con numerose lezioni teoriche e pratiche che, nel loro insieme, possono essere distinte in:

PRIMA SEZIONE DIDATTICA - Architettura a micro servizi, pianificazione e sviluppo con Spring Boot 2

  • ci concentreremo sul capire che cosa sono i micro servizi, quali sono i loro vantaggi e le sfide che dovremo affrontare

  • pianificheremo gli elementi del nostro ecosistema di micro servizi, specificando il dominio a livello funzionale e di DBMS

  • svilupperemo i nostri micro servizi seguendo il procedimento denominato Test  Driven Development

  • creeremo gli elementi portanti del nostro servizio (strato di persistenza, servizio e controller) analizzando ed eseguendo gli unit test che sono stati creati in fase di progettazione

  • impareremo a gestire le eccezioni, a creare un sistema di validazione e internazionalizzazione dei messaggi di ritorno

  • documenteremo le API del nostro servizio con l'uso dello Swagger e delle relative notazioni

  • impareremo a creare una configurazione multi profilo e ad utilizzare i valori presenti nel file delle proprietà

  • impareremo a migliorare la velocità dei nostri servizi con l'uso e la configurazione della Cache

  • impareremo a proteggere i nostri servizi con la Basic Authentication impiegando lo Spring Security

  • creeremo e configureremo una immagine Docker del MongoDb

  • creeremo un servizio di gestione degli utenti impiegandolo come base di autenticazione di tutti i nostri servizi

  • impareremo come utilizzare l'OAuth2 per proteggere più efficacemente i nostri micro servizi

  • impareremo ad utilizzare alcuni elementi di configurazione avanzati (SSL, Log, Web Server)

  • impareremo a conoscere, configurare ad usare l'Actuator di Spring Boot 2


SECONDA SEZIONE DIDATTICA - Gestione dell'ecosistema di micro servizi con Spring Cloud

  • inizieremo con una introduzione alle Cloud Ready App e allo Spring Cloud

  • impareremo ad utilizzare lo Spring Cloud Config per avere un sistema centrale di gestione delle configurazioni

  • impareremo ad usare repository GIT locali e remote utilizzando il GITHUB

  • impareremo come gestire i diversi profili di configurazione

  • impareremo a proteggere lo Spring Cloud Config con Spring Security

  • creeremo e attiveremo un contenitore RabbitMQ in Docker

  • utilizzeremo lo Spring Cloud Bus e il RabbitMQ per aggiornare massivamente le diverse istanze operative dei servizi

  • capiremo quali tipi di interazione possono esistere fra i micro servizi (sincrone, asincrone)

  • impareremo ad utilizzare Open Feign e il Rest Template per far interagire due o più servizi in modalità sincrona

  • impareremo a bilanciare il carico di lavoro fra diverse istanze dei servizi con l'uso del Ribbon

  • impareremo a creare, configurare e attivare il Discovery Server Eureka

  • impareremo a proteggere l'Eureka con lo Spring Security

  • impareremo a creare complesse configurazioni a zone dell'Eureka

  • impareremo a creare, configurare l'API Gateway ZUUL

  • impareremo come trasformare lo ZUUL in un sistema centrale di autenticazione impiegando il Json Web Token (JWT)

  • modificheremo il sistema di autenticazione e autorizzazione dei nostri servizi

  • impareremo come garantire la resilienza del nostro ecosistema con l'uso dell'Histrix

  • impareremo monitorare i micro servizi con lo Spring Cloud Sleuth e Zipkin


TERZA SEZIONE DIDATTICA - Il Docker e le procedure di creazione e gestione delle immagini dei micro servizi

  • Impareremo a capire cosa è il Docker e come può aiutarci nella fase di deploy del nostro ecosistema

  • Capiremo quali sono gli elementi portanti del Docker (Immagini, strati, contenitori,  Docker Hub.)

  • Impareremo a  creare, gestire e configurare le immagini creando i contenitori

  • Impareremo come creare e configurare le interfacce di rete (network)

  • Impareremo come creare e configurare le porte

  • Impareremo come creare e configurare i volumi

  • Impareremo come analizzare e modificare i contenitori

  • Impareremo come creare i Docker file utilizzando il Visual Studio Code

  • Impareremo come creare l'immagine dei nostri progetti Spring Boot usando il Docker file

  • Impareremo come creare l'immagine dei nostri progetti Spring Boot usando il plug in del Maven

  • Eseguiremo il push delle nostri immagini nel Docker Hub

  • Impareremo ad installare e configurare il Docker in Windows

  • Impareremo ad utilizzare il Docker Compose per gestire la creazione e l'attivazione di un ecosistema di contenitori

  • Impareremo come attivare il nostro ecosistema in diversi OS e piattaforme


QUARTA SEZIONE DIDATTICA - Introduzione al Kubernetes e deploy sul Google Cloud Platform

  • Capiremo cosa è il Kubernetes e perché sia cosi utile per gestire il nostro ecosistema di contenitori Docker

  • Impareremo a installare e configurare i software di gestione del Kubernetes su piattaforma Google Cloud 

  • Impareremo a configurare e creare i POD

  • Impareremo a configurare e creare i ReplicationController

  • Impareremo a configurare e creare i ReplicaSet

  • Impareremo a configurare e creare i Services

  • Impareremo a configurare e creare gli Ingress

  • Impareremo a configurare e creare i Volumes

  • Impareremo a creare un POD con DBMS MySQL

  • Impareremo a creare i StorageClass

  • Impareremo ad utilizzare i ConfigMap








What You Will Learn!

  • Pianificazione e creazione di micro servizi con Spring Boot 2
  • Implementare la gestione delle eccezione, la validazione e l'internazionalizzazione del web api
  • Imparare il Test Driven Development (TDD) e creare app partendo degli unit test
  • La gestione della cache e la documentazione con Swagger nei progetti spring boot
  • Proteggere i servizi con Spring Security e/o Oauth2
  • Imparare ad usare l'Actuator di Spring Boot
  • Creare e configurare un Spring Cloud Config
  • Impiegare lo Spring Cloud Bus con Rabbit MQ
  • Gestire l'interazione fra servizi con Open Feign e Rest Template
  • Attivare e configurare il Load Balancer Ribbon
  • Attivare e configurare il Discovery Server Eureka
  • Attivare e configurare l'API Gateway Zuul
  • Implementare il sistema di sicurezza JWT con ZUUL
  • Garantire la resilienza con Histrix

Who Should Attend!

  • Analisti Sviluppatori di software
  • Studenti di Informatica
  • Chiunque voglia imparare a sviluppare micro servizi cloud ready