Kubernetes: Up and Running, 3a edizione
by Brendan Burns, Joe Beda, Kelsey Hightower, Lachlan Evenson
Capitolo 5. Baccelli
Questo lavoro è stato tradotto utilizzando l'AI. Siamo lieti di ricevere il tuo feedback e i tuoi commenti: translation-feedback@oreilly.com
Nei capitoli precedenti abbiamo discusso di come puoi procedere alla containerizzazione della tua applicazione, ma nelle implementazioni reali di applicazioni containerizzate, spesso vorrai colocare più applicazioni in un'unica unità atomica, programmata su un'unica macchina.
Un esempio canonico di questo tipo di distribuzione è illustrato nella Figura 5-1, che consiste in un contenitore che serve le richieste web e un contenitore che sincronizza il filesystem con un repository Git remoto.
Figura 5-1. Un esempio di Pod con due container e un filesystem condiviso
In un primo momento, potrebbe sembrare allettante avvolgere sia il server web che il sincronizzatore Git in un unico contenitore. Dopo un'attenta analisi, però, le ragioni della separazione diventano chiare. In primo luogo, i due contenitori hanno requisiti significativamente diversi in termini di utilizzo delle risorse. Prendiamo ad esempio la memoria: poiché il server web serve le richieste degli utenti, vogliamo assicurarci che sia sempre disponibile e reattivo. D'altra parte, il sincronizzatore di Git non è veramente rivolto all'utente e ha una qualità di servizio "best effort".
Supponiamo che il nostro sincronizzatore Git abbia una perdita di memoria. Dobbiamo ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access