Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Le migliori pratiche per l'ottimizzazione dei costi
L'ottimizzazione dei costi significa raggiungere i risultati aziendali al prezzo più basso. Seguendo la documentazione contenuta in questa guida, ottimizzerai i tuoi carichi di lavoro Amazon EKS.
Linee guida generali
Nel cloud, ci sono una serie di linee guida generali che possono aiutarti a ottenere l'ottimizzazione dei costi dei tuoi microservizi:
-
Assicurati che i carichi di lavoro in esecuzione su Amazon EKS siano indipendenti da tipi di infrastruttura specifici per l'esecuzione dei tuoi contenitori, in questo modo avrai una maggiore flessibilità per quanto riguarda l'esecuzione sui tipi di infrastruttura meno costosi. Quando si utilizza Amazon EKS con EC2, possono esserci delle eccezioni quando abbiamo carichi di lavoro che richiedono tipi specifici di istanze EC2, ad esempio una GPU o altri tipi di istanze, a causa della natura del carico di lavoro.
-
Seleziona istanze container profilate in modo ottimale: profila i tuoi ambienti di produzione o pre-produzione e monitora metriche critiche come CPU e memoria, utilizzando servizi come Amazon CloudWatch Container Insights for Amazon EKS o strumenti di terze parti disponibili nell'ecosistema Kubernetes. Questo ci assicurerà di poter allocare la giusta quantità di risorse ed evitare sprechi di risorse.
-
Sfrutta le diverse opzioni di acquisto disponibili in AWS per eseguire EKS con EC2 On-Demand, ad esempio Spot e Savings Plan.
Best practice per l'ottimizzazione dei costi di EKS
Esistono tre aree generali di best practice per l'ottimizzazione dei costi nel cloud:
-
Cost-effective risorse (Auto Scaling, Down Scaling, Policy e opzioni di acquisto)
-
Consapevolezza delle spese (utilizzando AWS e strumenti di terze parti)
-
Ottimizzazione nel tempo (Right Sizing)
Come per ogni guida, ci sono dei compromessi. Assicuratevi di collaborare con la vostra organizzazione per comprendere le priorità di questo carico di lavoro e quali sono le best practice più importanti.
Come utilizzare questa guida
Questa guida è destinata ai team devops responsabili dell'implementazione e della gestione dei cluster EKS e dei carichi di lavoro che supportano. La guida è organizzata in diverse aree di best practice per un utilizzo più semplice. Ogni argomento contiene un elenco di raccomandazioni, strumenti da utilizzare e best practice per l'ottimizzazione dei costi dei cluster EKS. Non è necessario leggere gli argomenti in un ordine particolare.
Principali funzionalità dei servizi AWS e di Kubernetes
L'ottimizzazione dei costi è supportata dai seguenti servizi e funzionalità AWS:
-
Tipi di istanze EC2, Savings Plan (e istanze riservate) e istanze Spot, a prezzi diversi.
-
Auto Scaling insieme alle policy Auto Scaling native di Kubernetes. Prendi in considerazione il piano di risparmio (istanze precedentemente riservate) per carichi di lavoro prevedibili. Utilizza archivi di dati gestiti come EBS ed EFS, per l'elasticità e la durata dei dati delle applicazioni.
-
La dashboard della console di fatturazione e gestione dei costi insieme ad AWS Cost Explorer fornisce una panoramica dell'utilizzo di AWS. Usa AWS Organizations per dettagli di fatturazione granulari. Sono stati inoltre condivisi i dettagli di diversi strumenti di terze parti.
-
Amazon CloudWatch Container Metrics fornisce metriche sull'utilizzo delle risorse da parte del cluster EKS. Nell'ecosistema Kubernetes sono disponibili diversi strumenti che possono essere utilizzati per ridurre gli sprechi.
Questa guida include una serie di consigli che puoi utilizzare per migliorare l'ottimizzazione dei costi del tuo cluster Amazon EKS.
Feedback
Questa guida è stata rilasciata GitHub per raccogliere feedback e suggerimenti diretti dalla EKS/Kubernetes comunità più ampia. Se hai delle best practice che ritieni dovremmo includere nella guida, segnala un problema o invia un PR nell' GitHub archivio. La nostra intenzione è di aggiornare periodicamente la guida man mano che vengono aggiunte nuove funzionalità al servizio o quando si evolve una nuova best practice.