Che cos'è Apigee hybrid?

Immagine stilizzata del deployment

Apigee hybrid è una piattaforma per lo sviluppo e la gestione dei proxy API che utilizza un modello di deployment ibrido. Il modello ibrido include un piano di gestione ospitato da Apigee nel cloud e un piano di runtime che installerai e gestirli su una delle piattaforme Kubernetes supportate.

Gestire tutte le API da un'unica posizione

Apigee hybrid ti aiuta a gestire le API interne ed esterne con Google Cloud.

Grazie alla gestione unificata delle API, puoi fornire agli sviluppatori, ai partner e ai clienti un'esperienza coerente del programma relativo alle API.

Risolvi i problemi di sicurezza e conformità

Se le considerazioni sulla conformità e sulla sicurezza rendono il deployment on-premise un must le tue applicazioni, con un gateway ibrido di livello enterprise, puoi ospitare e gestire Piano di runtime ibrido Apigee on-premise.

Puoi gestire e controllare il runtime, sfruttando l'infrastruttura di conformità, governance e sicurezza esistente.

Supporta la tua strategia multi-cloud

La necessità di trovare un equilibrio tra costi e prestazioni può spingerti verso una strategia ibrida.

Sia che tu stia solo esplorando diversi cloud provider o che tu abbia già scelto un strategia ibrida, la tua piattaforma di gestione delle API dovrebbe darti la flessibilità di cui hai bisogno. Ospita e gestisci gateway ibridi di livello enterprise nel tuo data center, Google Cloud o entrambi.

 

Se vuoi scoprire di più sull'ibrido:

Continua a leggere

 

 

Se pronta per l'installazione ibrida:

Inizia da qui!

 

Programmi API in un mondo ibrido

Apigee Hybrid è costituito da un piano di gestione gestito da Google e da un piano di runtime che puoi installare su una piattaforma Kubernetes supportata. Entrambi i piani utilizzano Google Cloud Servizi della piattaforma, come mostrato nell'immagine seguente:

Un modello di
  vista della piattaforma ibrida, inclusi piano di gestione, piano di runtime e servizi Google Cloud

Come puoi vedere, l'ibrido è costituito dai seguenti componenti principali:

  • Piano di gestione Apigee-run: un insieme di servizi ospitati nel cloud e gestiti da Google. Questi servizi includono l'interfaccia utente, l'API di gestione e l'analisi.
  • Piano di runtime gestito dal cliente: un di servizi di runtime containerizzati che configuri e gestisci nel tuo ambiente Kubernetes in un cluster Kubernetes. Tutto il traffico API passa ed è elaborato all'interno del piano di runtime.

    Gestisci il runtime containerizzato sul tuo cluster Kubernetes per una maggiore agilità con implementazioni graduali, scalabilità automatica e altri vantaggi operativi dei container.

  • Google Cloud: una suite di servizi cloud ospitati da Google.

Un aspetto fondamentale da sapere sull'approccio ibrido è che tutto il traffico API viene elaborato all'interno dei confini della tua rete e sotto il tuo controllo, mentre i servizi di gestione come l'analisi API e dell'interfaccia utente vengono eseguiti nel cloud e sono gestiti da Google. Per ulteriori informazioni, vedi Dove vengono archiviati i tuoi dati?

Il seguente video fornisce un approfondimento sull'architettura ibrida:

Informazioni sul piano di runtime

Il piano di runtime è un insieme di servizi di runtime containerizzati che configuri e gestisci nel tuo cluster Kubernetes in esecuzione su una piattaforma Kubernetes supportata. Tutto il traffico dell'API passa attraverso e viene elaborato all'interno del runtime aereo. Il piano di runtime include i seguenti componenti principali:

Il piano di runtime viene eseguito in un cluster Kubernetes in esecuzione su piattaforma Kubernetes supportata da te gestita.

L'immagine seguente mostra i servizi principali in esecuzione sul piano di runtime:

Servizi principali che vengono eseguiti nel piano di runtime ibrido

Per informazioni generali sui componenti di runtime, consulta le sezioni seguenti. Inoltre, consulta la Panoramica della configurazione dei servizi di runtime.

Le sezioni seguenti descrivono in maggiore dettaglio ciascuno di questi servizi del piano di runtime principale.

processore di messaggi

I processori di messaggi ibridi (MP) forniscono l'elaborazione delle richieste API e l'esecuzione dei criteri sul nel piano di runtime. Gli MP caricano tutti i proxy, le risorse, i server di destinazione, i certificati e i gmaestore di cui è stato eseguito il deployment dallo spazio di archiviazione locale. Configuri un controller Ingress Istio per esporre i file MP a che provengono dall'esterno del cluster.

Sincronizzatore

Il sincronizzatore recupera i dati di configurazione relativi a un ambiente API dal piano di gestione e lo propaga al piano di runtime. Questi dati scaricati sono chiamati anche contratto e archiviati nel file system locale.

Il sincronizzatore esegue periodicamente un polling del server di gestione per rilevare le modifiche e scarica una nuova configurazione ogni volta che vengono rilevate. I dati di configurazione vengono recuperati e archiviati localmente come file JSON nel file system locale, dove i Message Processor possono accedervi.

I dati di configurazione scaricati consentono al piano di runtime in modo indipendente dal piano di gestione. Con il contratto, i Message Processor nel piano di runtime utilizzano i dati memorizzati localmente come configurazione. Se la connessione tra il piano di gestione e il piano di runtime si interrompe, i servizi nel piano di runtime continuano a funzionare.

I dati di configurazione scaricati dal sincronizzatore includono:

Datastore Cassandra

Apache Cassandra è il data store di runtime che fornisce la persistenza dei dati per il piano di runtime.

Cassandra è un sistema di dati distribuito che garantisce la persistenza dei dati nel piano di runtime. Esegui il deployment del database Cassandra come pool di nodi StatefulSet sul tuo cluster Kubernetes. La collocazione di queste entità vicino ai servizi di elaborazione di runtime contribuisce a supportare i requisiti di sicurezza e alta scalabilità.

Il database Cassandra memorizza informazioni sulle seguenti entità:

  • Sistema di gestione delle chiavi (KMS)
  • Mappa valori chiave (KVM)
  • Cache delle risposte
  • OAuth
  • Quote

API di gestione per i dati di runtime (MART)

I dati che appartengono all'organizzazione a cui si accede durante le chiamate API di runtime e archiviato da Cassandra nel piano di runtime.

Questi dati includono:

  • Configurazioni delle applicazioni
  • Dati del sistema di gestione delle chiavi (KMS)
  • Cache
  • Mappe chiave-valore (KVM)
  • Prodotti basati su API
  • App per sviluppatori

Per accedere e aggiornare questi dati, ad esempio per aggiungere un nuovo KVM o rimuovere un ambiente, puoi utilizzare l'interfaccia utente ibrida di Apigee o le API Apigee. Il server MART (API di gestione per i dati di runtime) elabora le chiamate API al datastore di runtime.

Questa sezione descrive il ruolo che MART svolge quando chiami le API Apigee per accedere datastore del runtime.

 
Che cos'è MART

Per chiamare un'API Apigee, invii una richiesta autenticata al server di gestione (MS) nel piano di gestione. Il server Microsoft autentica e autorizza la richiesta e poi inoltra la richiesta a MART sul piano di runtime. Alla richiesta è associato un token generato da MS utilizzando un account di servizio preconfigurato.

MART riceve la richiesta, la autentica e la autorizza, quindi esegue l'attività una convalida. Ad esempio, se l'app fa parte di un prodotto API, MART garantisce che si tratti di un una richiesta valida). Dopo aver stabilito che una richiesta è valida, MART la elabora.

Cassandra archivia i dati di runtime elaborati da MART (dopo tutto, datastore di runtime). MART potrebbe leggere i dati di Cassandra o aggiornarsi dei dati, a seconda del tipo di richiesta.

Come la maggior parte dei servizi ibridi, MART è stateless: non mantiene il proprio stato runtime.

Cosa non è MART

Il piano di gestione comunica con MART tramite l'agente Apigee Connect, che utilizza un account di servizio con il ruolo Agente Apigee Connect (l'account di servizio MART nella maggior parte delle installazioni). Non chiamare direttamente MART.

Inoltre, MART non riceve richieste di proxy API; queste chiamate vengono gestite dal Controller di ingresso di runtime e instradate ai processori di messaggi del cluster.

 

Vale la pena notare che sia i processori MART che i processori di messaggi hanno accesso lo stesso datastore di runtime (Cassandra), che è il modo in cui vengono condiviso.

L'immagine seguente mostra il flusso di una chiamata API Apigee:

Flusso di chiamate API in
  ibrida

UDCA

L'agente di raccolta dati universale (UDCA) è un servizio eseguito all'interno del pod di raccolta dati nel piano di runtime che estrae i dati di analisi, debug e stato del deployment e li invia al UAP.

Per ulteriori informazioni, consulta Stato di debug, analisi e deployment raccolta dei dati.

Informazioni sul piano di gestione

Il piano di gestione viene eseguito su Google Cloud. Sono inclusi servizi amministrativi come:

  • UI ibrida Apigee: fornisce una UI per gli sviluppatori per creare e distribuire l'API proxy, configurare criteri, creare prodotti API e creare app per sviluppatori. Amministratori puoi usare la UI ibrida di Apigee per monitorare lo stato del deployment.
  • API Apigee:forniscono un'interfaccia programmatica per la gestione del dell'organizzazione e degli ambienti di lavoro.
  • Unified Analytics Platform (UAP): riceve ed elabora analisi e i dati sullo stato del deployment dal piano di runtime.

L'immagine seguente mostra i servizi principali che vengono eseguiti nel piano di gestione:

Servizi che vengono eseguiti nel piano di gestione di Apigee hybrid

Informazioni sui servizi Google Cloud

La tabella seguente descrive i servizi principali di Google Cloud sfruttati da ibrido:

Servizio Google Cloud Descrizione
Identità L'autenticazione dell'account utente utilizza account Google Cloud. Usi dell'autorizzazione Google Cloud.
Ruoli La gestione degli accessi per ambienti ibridi utilizza il motore dei ruoli di Google, IAM e supporta la piattaforma Apigee predefinita ruoli.
Gerarchia delle risorse Le risorse sono organizzate in progetti Google Cloud (collegati alle organizzazioni Apigee).
Suite operativa di Google Cloud Fornisce analisi dei dati di log e metriche.
 

Tipi di utenti

Apigee ha identificato i seguenti tipi principali di utenti ibride:

Ruolo Responsabilità/attività tipiche Aree di interesse
Amministratori di sistema/operatori
  • Installa e configura servizi sul piano di runtime di un modello ibrido
  • Configurare Google Cloud, Apigee e gli account di servizio
  • Creare servizi e progetti Google Cloud
  • Gestisci il cluster Kubernetes
  • Mantieni tutto quanto sopra
  • Risolvere i problemi relativi ai proxy API
Sviluppatori
  • Crea proxy API utilizzando l'interfaccia utente di Apigee Hybrid o le API Apigee
  • Esegui il deployment dei proxy API nel piano di runtime
  • Risolvere i problemi relativi ai proxy API
  • Testa i proxy API
 

Vantaggi

Apigee hybrid offre i seguenti vantaggi:

Maggiore agilità
Poiché il modello ibrido viene distribuito ed eseguito in container, puoi realizzare implementazioni graduali, scalabilità automatica e altri vantaggi operativi di un sistema containerizzato.
Latenza ridotta
Tutte le comunicazioni con il piano di gestione ibrida sono asincrone e non avvengono nell'ambito dell'elaborazione delle richieste dell'API client.
Maggiore adozione delle API
Sebbene sia possibile elaborare le API interne utilizzando Apigee, la latenza e l'efficienza ridotte che puoi ottenere con la versione ibrida rendono l'elaborazione delle API interne con la versione ibrida un'opzione interessante. Parte di questa efficienza è ottenuta perché il gateway API viene eseguito on-premise, vicino ai tuoi servizi di backend. Inoltre, se utilizzi Apigee, puoi aumentare l'adozione di Apigee elaborando le API interne tramite la versione ibrida.
Maggiore controllo
Molte aziende stanno adottando una strategia ibrida. La possibilità di gestisci i runtime API di cui è stato eseguito il deployment in privato data center è un requisito chiave per le grandi imprese. Attualmente è possibile eseguire il deployment del piano di runtime ibrido in Google Cloud o nel tuo data center.

Passaggio successivo

Guarda il quadro generale: una panoramica dell'installazione ibrida. e il processo di sviluppo.