Condividi tramite


Modello di scalabilità tra cloud (dati locali)

Informazioni su come creare un'app ibrida che si estende su Azure e sull'hub di Azure Stack. Questo modello illustra anche come usare una singola origine dati locale per la conformità.

Contesto e problema

Molte organizzazioni raccolgono e archiviano grandi quantità di dati sensibili dei clienti. Spesso non è possibile archiviare dati sensibili nel cloud pubblico a causa di normative aziendali o criteri governativi. Queste organizzazioni vogliono anche sfruttare la scalabilità del cloud pubblico. Il cloud pubblico può gestire picchi stagionali nel traffico, consentendo ai clienti di pagare esattamente l'hardware di cui hanno bisogno, quando ne hanno bisogno.

Soluzione

La soluzione sfrutta i vantaggi di conformità del cloud privato, combinandoli con la scalabilità del cloud pubblico. Il cloud ibrido dell'hub di Azure e Azure Stack offre un'esperienza coerente per gli sviluppatori. Questa coerenza consente loro di applicare le proprie competenze sia ai cloud pubblici che agli ambienti locali.

La guida alla distribuzione della soluzione consente di distribuire un'app Web identica in un cloud pubblico e privato. È anche possibile accedere a una rete instradabile non Internet ospitata nel cloud privato. Le app Web vengono monitorate per il caricamento. Dopo un aumento significativo del traffico, un programma modifica i record DNS per reindirizzare il traffico al cloud pubblico. Quando il traffico non è più significativo, i record DNS vengono aggiornati per indirizzare il traffico al cloud privato.

Scalabilità tra cloud con modello di dati locale

Componenti

Questa soluzione usa i componenti seguenti:

Strato Componente Descrizione
Azzurro Servizio app di Azure servizio app di Azure consente di compilare e ospitare app Web, app per le API RESTful e Funzioni di Azure. Tutto nel linguaggio di programmazione preferito, senza gestire l'infrastruttura.
Rete virtuale di Azure Azure Virtual Network (VNet) è il blocco costitutivo fondamentale per le reti private in Azure. La rete virtuale consente a più tipi di risorse di Azure, ad esempio macchine virtuali (VM), di comunicare in modo sicuro tra loro, Internet e reti locali. La soluzione illustra anche l'uso di componenti di rete aggiuntivi:
- subnetti dell'app e del gateway.
un gateway di rete locale in sede.
- Un gateway di rete virtuale, che funge da connessione gateway VPN da sito a sito.
: indirizzo IP pubblico.
: una connessione VPN da punto a sito.
- DNS di Azure per ospitare domini DNS e fornire la risoluzione dei nomi.
Gestione traffico di Azure Traffic Manager di Azure è un servizio di bilanciamento del carico del traffico basato su DNS. Consente di controllare la distribuzione del traffico utente per gli endpoint di servizio in data center diversi.
Azure Application Insights Application Insights è un servizio estendibile di Gestione delle prestazioni delle applicazioni per sviluppatori Web che creano e gestiscono app su più piattaforme.
Funzioni di Azure Funzioni di Azure consente di eseguire il codice in un ambiente serverless senza dover prima creare una macchina virtuale o pubblicare un'app Web.
Scalabilità automatica di Azure Autoscale è una funzionalità integrata di Servizi Cloud, Macchine Virtuali e App Web. La funzionalità consente alle app di ottenere prestazioni ottimali quando cambia la domanda. Le app si adattano ai picchi di traffico, notificando quando le metriche cambiano e ridimensionano in base alle esigenze.
Azure Stack Hub Calcolo IaaS L'hub di Azure Stack consente di usare lo stesso modello di app, il portale self-service e le API abilitate da Azure. IaaS dell'hub di Azure Stack consente un'ampia gamma di tecnologie open source per distribuzioni cloud ibride coerenti. L'esempio di soluzione usa una macchina virtuale Windows Server per SQL Server, ad esempio.
Servizio app di Azure Analogamente all'app Web di Azure, la soluzione usa servizio app di Azure nell'hub di Azure Stack per ospitare l'app Web.
Rete La rete virtuale dell'hub di Azure Stack funziona esattamente come la rete virtuale di Azure. Usa molti degli stessi componenti di rete, inclusi i nomi host personalizzati.
Servizi di Azure DevOps Registrarsi Configurare rapidamente l'integrazione continua per la compilazione, il test e la distribuzione. Per ulteriori informazioni, vedere Registrarsi, accedere ad Azure DevOps.
Azure Pipelines Usare Azure Pipelines per l'integrazione continua/consegna continua. Azure Pipelines consente di gestire gli agenti e le definizioni di compilazione e rilascio ospitati.
Repository di codice Sfruttare più repository di codice per semplificare la pipeline di sviluppo. Usare repository di codice esistenti in GitHub, Bitbucket, Dropbox, OneDrive e Azure Repos.

Problemi e considerazioni

Quando si decide come implementare questa soluzione, tenere presente quanto segue:

Scalabilità

Azure e l'hub di Azure Stack sono particolarmente adatti per supportare le esigenze dell'azienda distribuita a livello globale di oggi.

Cloud ibrido senza problemi

Microsoft offre un'integrazione senza precedenti di asset locali con l'hub di Azure Stack e Azure in una soluzione unificata. Questa integrazione elimina il problema di gestire più soluzioni punto e una combinazione di provider di servizi cloud. Con la scalabilità tra cloud, la potenza di Azure è a pochi clic di distanza. È sufficiente connettere l'hub di Azure Stack ad Azure con bursting cloud e i dati e le app sono disponibili in Azure quando necessario.

  • Evitare la necessità di creare e gestire un sito DR secondario.
  • Risparmiare tempo e denaro eliminando il backup su nastro e ospitando fino a 99 anni di dati di backup in Azure.
  • Eseguire facilmente la migrazione di carichi di lavoro Hyper-V, Fisici (in anteprima) e VMware (in anteprima) in Azure per sfruttare l'economia e l'elasticità del cloud.
  • Eseguire report o analisi a elevato utilizzo di calcolo su una copia replicata dell'asset locale in Azure senza influire sui carichi di lavoro di produzione.
  • Sfruttare il cloud per ampliare rapidamente la capacità ed eseguire carichi di lavoro locali su Azure, con la possibilità di utilizzare modelli di calcolo più potenti quando necessario. La soluzione ibrida offre la potenza necessaria, quando necessario.
  • Creare ambienti di sviluppo multilivello in Azure con pochi clic, anche replicare i dati di produzione live nell'ambiente di sviluppo/test per mantenerli sincronizzati quasi in tempo reale.

Economia del ridimensionamento tra cloud con l'hub di Azure Stack

Il vantaggio principale per il cloud bursting è un risparmio economico. Si paga solo per le risorse aggiuntive quando è presente una richiesta di tali risorse. Non è più necessario spendere per capacità aggiuntiva non necessaria o tentare di stimare i picchi e le fluttuazioni della domanda.

Ridurre i carichi di domanda elevati nel cloud

La scalabilità tra cloud può essere usata per sostenere carichi di lavoro di elaborazione. Il carico viene distribuito spostando le app di base nel cloud pubblico, liberando risorse locali per le app critiche per le aziende. È possibile applicare un'app al cloud privato, quindi eseguire il burst nel cloud pubblico solo quando necessario per soddisfare le esigenze.

Disponibilità

La distribuzione globale presenta sfide specifiche, ad esempio la connettività variabile e le diverse normative governative in base all'area. Gli sviluppatori possono sviluppare una sola app e quindi distribuirla in diversi motivi con requisiti diversi. Distribuire l'app nel cloud pubblico di Azure, quindi distribuire istanze o componenti aggiuntivi in locale. È possibile gestire il traffico tra tutte le istanze usando Azure.

Gestibilità

Un unico approccio di sviluppo coerente

Azure e l'hub di Azure Stack consentono di usare un set coerente di strumenti di sviluppo nell'organizzazione. Questa coerenza semplifica l'implementazione di una pratica di integrazione continua e sviluppo continuo (CI/CD). Molte app e servizi distribuiti in Azure o nell'hub di Azure Stack sono intercambiabili e possono essere eseguiti in entrambe le posizioni senza problemi.

Una pipeline CI/CD ibrida può aiutarti a:

  • Avvia una nuova compilazione in base ai commit del codice nel repository.
  • Distribuire automaticamente il codice appena compilato in Azure per i test di accettazione utente.
  • Dopo che il codice ha superato il test, eseguire automaticamente la distribuzione nell'hub di Azure Stack.

Una singola soluzione di gestione delle identità coerente

L'hub di Azure Stack funziona sia con Azure Active Directory (Azure AD) che con Active Directory Federation Services (ADFS). L'hub di Azure Stack funziona con Azure AD in scenari connessi. Per gli ambienti che non dispongono di connettività, è possibile usare ADFS come soluzione disconnessa. I principali di servizio vengono usati per concedere l'accesso alle app, consentendo loro di distribuire o configurare risorse tramite Azure Resource Manager.

Sicurezza

Garantire la conformità e la sovranità dei dati

L'hub di Azure Stack consente di eseguire lo stesso servizio in più paesi/aree geografiche come se si usasse un cloud pubblico. La distribuzione della stessa app nei data center in ogni paese/area geografica consente di soddisfare i requisiti di sovranità dei dati. Questa funzionalità garantisce che i dati personali vengano conservati entro i confini di ogni paese/area geografica.

Hub di Azure Stack - Comportamento di sicurezza

Non esiste un comportamento di sicurezza senza un processo di manutenzione continuo e solido. Per questo motivo, Microsoft ha investito in un motore di orchestrazione che applica patch e aggiornamenti senza problemi nell'intera infrastruttura.

Grazie alle partnership con i partner OEM dell'hub di Azure Stack, Microsoft estende la stessa postura di sicurezza ai componenti specifici dell'OEM, ad esempio l'host del ciclo di vita hardware e il software in esecuzione. Questa partnership garantisce che l'hub di Azure Stack abbia un comportamento di sicurezza uniforme e solido nell'intera infrastruttura. A sua volta, i clienti possono creare e proteggere i carichi di lavoro delle app.

Uso dei principali del servizio tramite PowerShell, CLI e portale di Azure

Per concedere alle risorse l'accesso a uno script o a un'app, configurare un'identità per l'app e autenticare l'app con le proprie credenziali. Questa identità è nota come entità del servizio e consente di:

  • Assegna permessi all'identità dell'app che sono diversi dai tuoi e che sono limitati esattamente alle esigenze dell'app.
  • Usare un certificato per l'autenticazione durante l'esecuzione di uno script non sorvegliato.

Per ulteriori informazioni sulla creazione dell'entità servizio e sull'utilizzo di un certificato per le credenziali, vedere Utilizzare l'identità di un'app per l'accesso alle risorse.

Quando usare questo modello

  • L'organizzazione usa un approccio DevOps o ne prevede uno per il prossimo futuro.
  • Si vogliono implementare procedure CI/CD nell'implementazione dell'hub di Azure Stack e nel cloud pubblico.
  • Voglio consolidare la pipeline CI/CD tra ambienti cloud e on-premises.
  • Voglio la possibilità di sviluppare app senza problemi usando servizi cloud o locali.
  • Voglio sfruttare competenze coerenti di sviluppo tra applicazioni cloud e locali.
  • Si usa Azure ma si hanno sviluppatori che lavorano in un cloud dell'hub di Azure Stack locale.
  • Le app locali riscontrano picchi di domanda durante fluttuazioni stagionali, cicliche o imprevedibili.
  • Ho componenti locali e voglio usare il cloud per ridimensionarli senza problemi.
  • Si vuole una scalabilità cloud, ma si vuole che l'app sia eseguita in locale il più possibile.

Passaggi successivi

Per altre informazioni sugli argomenti introdotti in questo articolo:

Quando sei pronto per testare l'esempio di soluzione, continua con la guida alla distribuzione della soluzione di scalabilità cross-cloud (dati on-premises) . La guida alla distribuzione fornisce istruzioni dettagliate per la distribuzione e il test dei relativi componenti.