MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Cinque suggerimenti per un migliore hosting MongoDB in Azure

La piattaforma di cloud computing di Azure ha subito una serie vertiginosa di miglioramenti negli ultimi due anni, a malapena somigliante alla piattaforma originale con cui Microsoft ha iniziato nel 2010. ScaleGrid è stato uno dei le prime piattaforme di hosting MongoDB a supportare Azure e abbiamo continuato a far evolvere la nostra offerta con l'evoluzione di Azure.

Indipendentemente dal fatto che tu stia utilizzando Azure per un po' di tempo o che tu abbia appena iniziato a usare Azure per l'hosting MongoDB, ecco alcuni modelli di progettazione dell'architettura che dovresti considerare per assicurarti di sfruttare il Piattaforma Azure per la migliore esperienza di hosting MongoDB.

    1. Piattaforma Azure Resource Manager (ARM)

      Sfrutta la potenza della nuova piattaforma Azure Resource Manager (ARM). Se sei ancora sulla piattaforma Azure Classic, è il momento di trasferirti! Il passaggio alla nuova piattaforma ARM offre numerosi vantaggi, tra cui lo sfruttamento di dischi gestiti, reti virtuali e istanze riservate. Tutti i vantaggi sono descritti in dettaglio nel post del blog Vantaggi della migrazione da IaaS ad Azure Resource Manager.

    2. Reti virtuali di Azure e gruppi di sicurezza di rete

      I database sono meglio distribuiti in sottoreti private non esposte a Internet. Azure consente di creare la propria rete virtuale (VNET) e distribuire i server di database in subnet specifiche. Puoi anche gestire il controllo dell'accesso creando regole Network Security Group (NSG) e assegnando un IP pubblico al server del database (solo) se è necessario renderlo accessibile su Internet. Come parte del nostro modello Bring Your Own Cloud, consentiamo ai nostri clienti di distribuire i loro cluster MongoDB nella propria rete virtuale per sfruttare i controlli di sicurezza avanzati di VNET e NSG.

    3. Set di disponibilità e zone di disponibilità di Azure

      I set di disponibilità sono essenziali per distribuire i nodi del tuo cluster su hardware diverso. In questo modo, un singolo guasto hardware non ha alcun impatto su tutti i tuoi nodi. Il nostro consiglio è di creare un set di disponibilità per replica. Azure ha inoltre introdotto di recente le zone di disponibilità per proteggerti dalle interruzioni a livello di data center. Puoi distribuire le tue repliche tra le zone di disponibilità per un tempo di attività del 99,99%.

      5 consigli per un migliore hosting #MongoDB su AzureClick To Tweet

    4. Tipi di istanza di Azure

      La scelta del tipo di istanza di Azure corretto per il carico di MongoDB è molto importante:non tutti i tipi di istanza sono adatti per MongoDB. In generale, dovresti considerare i tipi di istanza "ottimizzati per la memoria" o i tipi di istanza "ottimizzati per lo storage".

      Le ultime serie Ev3 di istanze ottimizzate per la memoria sono in genere un ottimo punto di partenza per la maggior parte dei carichi di lavoro MongoDB. Se hai bisogno di più CPU di quella fornita da E2 v3, puoi prendere in considerazione i tipi di istanza Dv3 "general purpose".

      Le istanze della modalità 'Burst':'B1S, B1MS, B2MS' sono in genere adatte per piccoli carichi di lavoro, ambienti di sviluppo/test, ecc. Man mano che i dati diventano più grandi, il Le serie L4 "ottimizzate per l'archiviazione" con dischi SSD locali di Azure sono un'ottima soluzione:maggiori dettagli nella sezione Disco di Azure di seguito. In generale, il tipo di istanza corretto dipende dal tuo carico di lavoro, quindi è importante eseguire iterazioni e testare i vari tipi di istanza con il tuo carico di lavoro.

    5. Dischi di Azure

      Azure offre diversi tipi di dischi per gestire carichi di lavoro diversi:

      • Dischi legacy (Standard e Premium)

        Ai fini di questa discussione, non prenderemo in considerazione i dischi di Azure legacy. Se stai utilizzando dischi legacy, dovresti considerare di passare ai dischi gestiti.

      • Dischi gestiti (Standard e Premium)

        I dischi gestiti di Azure semplificano notevolmente la gestione dei dischi di calcolo in Azure. Offrono diversi vantaggi rispetto ai dischi legacy:

        • Non devi preoccuparti degli account di archiviazione.
        • Non devi preoccuparti delle dimensioni dell'account di archiviazione e dei limiti di prestazioni.
        • Stantanee semplici e creazione di nuovi dischi dalle istantanee.
        • Converti facilmente da standard a premium e viceversa.
        • Sfrutta i set di disponibilità avanzata da applicare ai tuoi dischi.

        Puoi trovare tutti i dettagli sulle differenze tra i dischi gestiti e i dischi legacy nella documentazione di Azure.

        I dischi gestiti Premium offrono anche diverse garanzie IOPS a seconda delle dimensioni del disco. Per i cluster MongoDB di produzione, consigliamo vivamente i dischi gestiti Premium, mentre per gli ambienti di sviluppo/test, i dischi gestiti standard sono una buona soluzione.
      • Dischi SSD locali

        I tipi di istanze "ottimizzate per l'archiviazione" di Azure forniscono dischi SSD locali di grandi dimensioni che offrono la migliore velocità effettiva in Azure. Si adatta perfettamente a cluster di grandi dimensioni che richiedono molto input/output (I/O) su disco. I nostri cluster Azure High Performance per MongoDB usano le istanze della serie L. Tuttavia, i dischi SSD locali sono "effimeri":quando interrompi l'istanza, i dati scompaiono. Pertanto, è importante prestare molta attenzione quando si utilizzano i dischi locali. Il nostro consiglio è di utilizzare una replica su Managed Premium Disks per garantire la sicurezza dei dati.

So che abbiamo promesso 5 consigli, ma eccone uno in più per la strada:

  1. Utilizza le istanze riservate di Azure

    Azure ora supporta le istanze riservate (RI) alias AWS. Puoi acquistare le istanze riservate di Azure per periodi di un anno o tre anni in anticipo e ridurre notevolmente i costi di hosting di MongoDB fino all'82%.