Introduzione

Completato

Per semplificare questo processo, viene in genere usata una piattaforma di gestione dei contenitori, ad esempio Kubernetes. Si supponga di lavorare per una società di gestione dei droni. La società offre una soluzione di tracciamento droni ai clienti in tutto il mondo.

Diagram of the high-level architecture that describes the drone-tracking solution.

La soluzione viene compilata e distribuita sotto forma di microservizi e include diverse applicazioni principali:

  • Front-end Web: mostra mappe e informazioni sui droni tracciati.
  • Servizio Cache: archivia le informazioni richieste di frequente visualizzate nel sito Web.
  • API RESTful: usata dai droni tracciati per inviare dati sullo stato, ad esempio la posizione GPS e i livelli di carica della batteria.
  • Coda: include i dati non elaborati raccolti dall'API RESTful.
  • Servizio di elaborazione dati: recupera ed elabora i dati della coda.
  • Database NoSQL: archivia i dati di tracciamento elaborati e le informazioni utente acquisite dal sito Web e dal servizio di elaborazione dati.

I contenitori sono la scelta ideale per lo sviluppo di software basato su architetture di microservizi. Usano l'hardware in modo efficiente, forniscono funzionalità di sicurezza per l'esecuzione simultanea di più istanze nello stesso host senza che queste influiscano l'una sull'altra e consentono di potenziare un servizio distribuendo più istanze.

Diagram that shows three benefits of containerization; efficiency, isolation, and scalability.

Il runtime di gestione dei contenitori standard è incentrato sulla gestione dei singoli contenitori. Se si vuole dimensionare un sistema complesso con più contenitori che interagiscono tra loro, lo scenario diventa più impegnativo. Considerare gli aspetti seguenti:

  • Configurazione e gestione del bilanciamento del carico
  • Connettività di rete
  • Orchestrazione del processo di distribuzione

Vengono usate istanze in contenitori per distribuire rapidamente in nuove aree clienti e dimensionare le risorse in base alle esigenze dei clienti. Per semplificare lo sviluppo, la distribuzione e la gestione di queste applicazioni complesse in contenitori, si usa una piattaforma di orchestrazione dei contenitori., ad esempio Kubernetes.

Obiettivi di apprendimento

Contenuto del modulo:

  • In che modo Kubernetes supporta l'orchestrazione dei contenitori.
  • Differenze tra i piani di controllo e i nodi.
  • Valutare se Kubernetes è una piattaforma di orchestrazione adatta per un determinato carico di lavoro.

Prerequisiti

  • Concetti di base delle architetture di microservizi
  • Nozioni di base sul funzionamento dei contenitori Docker
  • Nozioni di base su come installare il software usando un'interfaccia della riga di comando (CLI)