Istio

Una piattaforma aperta per connettere, monitorare e proteggere i microservizi.

Panoramica

Istio è una rete mesh di servizi indipendenti open source che fornisce gli strumenti fondamentali per eseguire correttamente un'architettura di microservizi distribuita. Le organizzazioni stanno adottando sempre di più le piattaforme cloud, perciò gli sviluppatori devono utilizzare microservizi per garantire la portabilità, mentre gli operatori devono gestire deployment distribuiti di grandi dimensioni, che spesso includono deployment ibridi e multi-cloud. Istio riduce la complessità di gestione dei deployment di microservizi mettendo a disposizione un modo uniforme per garantirne la sicurezza, la connettività e il monitoraggio.

Istio Security

Consenti agli sviluppatori di concentrarsi sulle attività fondamentali, senza preoccupazioni relative alla sicurezza.

Istio Monitoring

Rileva e correggi i problemi in modo rapido ed efficace con un monitoraggio solido e facile da usare.

Istio Connect

Istio semplifica la gestione del traffico man mano che la scalabilità del deployment aumenta.

Comunicazioni di servizio sicure

Protezione delle comunicazioni di servizio

Istio gestisce in modo scalabile l'autenticazione, l'autorizzazione e la crittografia delle comunicazioni tra i microservizi. Istio fornisce un canale di comunicazione sicuro sottostante per consentire agli sviluppatori di concentrarsi sulla sicurezza a livello di applicazione.

Comunicazioni di servizio

Comunicazioni sicure

Istio migliora la protezione dei microservizi e delle relative comunicazioni, sia service-to-service sia end-user-to-service, senza bisogno di modifiche al codice del servizio. Assegna a ciascun servizio un'identità definita basata sul ruolo per consentire l'interoperabilità tra cluster e cloud.

Difesa in profondità

Difesa in profondità

Quando utilizzi Istio con i criteri di rete di Kubernetes (o dell'infrastruttura), le comunicazioni pod-to-pod o service-to-service vengono protette sia a livello di applicazione sia a livello di rete. Istio si basa sulla strategia di difesa in profondità di Google per proteggere le comunicazioni dei microservizi. Quando utilizzi Istio su Google Cloud, l'infrastruttura di Google consente di eseguire il deployment dell'applicazione in totale sicurezza.

La sicurezza prima di tutto

La sicurezza prima di tutto

Istio garantisce che le comunicazioni di servizio siano protette per impostazione predefinita, con modifiche minime o senza nessuna alcuna modifica all'applicazione. Assicura inoltre che sia possibile applicare questi criteri in modo coerente su protocolli e runtime diversi.

Log

Registrazione, monitoraggio e mantenimento dei servizi operativi

Istio offre informazioni dettagliate sul deployment dei servizi in esecuzione sulla rete mesh raccogliendo dati di tracciamento, monitoraggio e registrazione. Tieni sotto controllo le prestazioni dei servizi, in che modo tali prestazioni influiscono su altri processi e rileva e classifica i problemi in modo rapido ed efficace.

Ampia visibilità

Ampia visibilità

Le dashboard personalizzate di Istio forniscono un'ampia panoramica sul comportamento di tutti i servizi, in modo da poter individuare velocemente i problemi e classificarli in modo efficace.

Comprensione dei servizi

Comprensione delle prestazioni dei servizi

Le funzionalità di monitoraggio di Istio consentono di comprendere l'impatto upstream e downstream delle prestazioni di un servizio e di impostare, monitorare e applicare in modo più efficace gli SLO relativi ai servizi.

Metriche

Le metriche di cui hai bisogno, proprio quando ti servono

Ricevi metriche e tracce da tutte le applicazioni in esecuzione, in modo che gli sviluppatori non debbano intervenire manualmente sulle applicazioni.

Gestione del traffico

Gestione del traffico e controllo dei criteri

La gestione del traffico di Istio consente di controllare il flusso di traffico e le chiamate API tra servizi e fornisce una migliore visibilità sul traffico per contribuire a individuare le criticità prima che causino problemi. In questo modo le chiamate sono più affidabili e la rete più solida, anche in condizioni avverse.

Configurazione semplice delle regole

Configurazione semplice delle regole

Istio consente di configurare le proprietà a livello del servizio, come gli interruttori di circuito automatici, i timeout e i nuovi tentativi, e di impostare le attività di deployment continuo comuni, come le implementazioni canary, i test A/B e le implementazioni graduali con suddivisioni del traffico in base alla percentuale.

Indirizzamento dei contenuti

Indirizza i contenuti dove vuoi

Specifica le regole per indirizzare il traffico verso determinate versioni del servizio, indipendentemente dal numero di istanze che supportano tali versioni. Ad esempio, puoi specificare che il 5% di tutto il traffico venga indirizzato a una versione canary particolare o a una versione specifica in base al contenuto della richiesta.

Recupero in seguito agli errori

Ripristino in seguito agli errori immediatamente disponibile

Istio offre funzionalità tra cui il ripristino in seguito agli errori, inclusi i timeout, immediatamente disponibile, i tentativi ripetuti con budget di timeout e jitter variabile, le connessioni e le richieste simultanee ai limiti dei servizi upstream, i controlli di integrità periodici attivi su ciascun membro del pool di bilanciamento del carico e controlli di integrità passivi come interruttori di circuito granulari.

Funzionalità di sicurezza di Istio

Autenticazione del servizio avanzata

Istio Auth garantisce che i servizi che includono dati sensibili siano accessibili solo da client con autenticazioni e autorizzazioni avanzate.

Criteri di autenticazione

I criteri di configurazione di Istio impostano l'autenticazione alla piattaforma sul lato server, ma non applicano i criteri sul lato client, consentendoti di specificare i requisiti di autenticazione per i servizi.

Controllo degli accessi basato sui ruoli (RBAC)

Istio RBAC fornisce il controllo degli accessi a livello di spazio dei nomi, di servizio e di metodo per i servizi in esecuzione nella rete mesh Istio. Include una semantica basata sui ruoli di facile utilizzo, autorizzazioni service-to-service e end-user-to-service e offre flessibilità con il supporto delle proprietà personalizzate in ruoli e associazioni di ruoli.

Autenticazione TLS reciproca

Istio migliora la protezione dei microservizi e delle relative comunicazioni, sia service-to-service sia end-user-to-service, senza bisogno di modifiche al codice del servizio. Assegna a ciascun servizio un'identità definita basata sul ruolo per consentire l'interoperabilità tra cluster e cloud.

Gestione delle chiavi

Il sistema di gestione delle chiavi di Istio automatizza la generazione, la distribuzione, la rotazione e la revoca delle chiavi e dei certificati.

Funzionalità di monitoraggio di Istio

Astrazione del backend

Mixer, il componente di Istio per i controlli dei criteri e la raccolta della telemetria, isola il resto dei componenti di Istio dai dettagli di implementazione dei singoli backend dell'infrastruttura.

Intermediazione

Mixer offre un controllo dettagliato su tutte le interazioni tra la rete mesh e i backend dell'infrastruttura.

Bassa latenza

A differenza dei proxy sidecar accanto a ciascuna istanza di servizio nella rete mesh che non devono utilizzare troppa memoria, Mixer è indipendente, quindi può utilizzare cache e buffer di output considerevolmente maggiori e agire come cache di secondo livello altamente scalata e disponibile per i sidecar.

Alta affidabilità

Mixer è progettato per offrire un'elevata disponibilità per ciascuna istanza Mixer. Le cache e i buffer locali riducono la latenza e aiutano inoltre a mascherare gli errori di backend dell'infrastruttura rimanendo operativi anche quando un backend non risponde.

Funzionalità di connessione di Istio

Disaccoppia la gestione del traffico e il ridimensionamento dell'infrastruttura

Il disaccoppiamento della gestione del traffico e del ridimensionamento dell'infrastruttura offre funzionalità al di fuori del codice dell'applicazione, come il routing delle richieste dinamiche per i test A/B, le implementazioni graduali e le versioni canary. Permette inoltre di gestire il ripristino in seguito agli errori utilizzando i timeout, i tentativi ripetuti, gli interruttori di circuito e le fault injection per testare la compatibilità dei criteri di ripristino in seguito agli errori tra i servizi.

Fault injection

Se configurati in modo errato, i criteri di recupero in seguito agli errori possono portare a un'indisponibilità continua dei servizi critici di un'applicazione, quindi i test di ripristino in seguito agli errori end-to-end sono fondamentali. Istio abilita le fault injection specifiche del protocollo nella rete, invece di terminare i pod, ritardare o corrompere i pacchetti a livello di TCP.

Bilanciamento del carico

Istio attualmente consente tre delle modalità di bilanciamento del carico supportate da Envoy: "Round Robin" (ciascun host upstream in stato integro viene selezionato in base all'ordine Round Robin), "Random" (il bilanciamento del carico casuale seleziona un host in stato integro casuale) e "Weighted Least Request".

Documentazione

Istio con Compute Engine

Integra le VM di Compute Engine sulla rete mesh Istio distribuita su Kubernetes Engine.

Repository di Istio

Aiuta a migliorare Istio contribuendo al codebase del software open source.

Risorse

Esplora i tutorial, le guide di avvio rapido e le recensioni.

Scarica la release di Istio più recente

Guide di avvio rapido di Istio per Kubernetes, Eureka, Nomad e Consul

Scopri come configurare Istio per i servizi Google Cloud Endpoint

Distribuisci un'app di esempio per ulteriori informazioni sulla rete mesh di servizi Istio

Non perderti le funzionalità di Istio più recenti

Informazioni dettagliate sulle opzioni per la riga di comando e la configurazione

Integrazioni

Enterprise Support per Istio

Google Cloud offre Enterprise Support per Istio per deployment nella cloud non GCP e on-premise. I livelli di assistenza sono variabili, per offrirti la possibilità di scegliere. Le offerte di assistenza includono immagini certificate da Google per testare le configurazioni di Kubernetes, l'installazione di VM, la manutenzione e molto altro. Sono disponibili anche opzioni di servizi professionali forniti dagli esperti di Google Cloud.

Gestione delle API Apigee per Istio

Quando i microservizi devono comunicare con partner e clienti esterni oppure con altri gruppi all'interno dell'organizzazione, diventano delle API. Google Cloud mette a disposizione la gestione delle API Apigee per Istio per offrire l'integrazione nativa della gestione delle API con i microservizi. Con Apigee, le organizzazioni possono gestire e monitorare in modo sicuro le API nella cloud o on-premise.