MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Fünf Tipps für besseres MongoDB-Hosting auf Azure

Die Azure-Cloud-Computing-Plattform hat in den letzten Jahren eine schwindelerregende Reihe von Verbesserungen durchlaufen und ähnelt kaum der ursprünglichen Plattform, mit der Microsoft im Jahr 2010 begann. ScaleGrid war eine davon die frühesten MongoDB-Hosting-Plattformen zur Unterstützung von Azure, und wir haben unser Angebot im Zuge der Entwicklung von Azure weiterentwickelt.

Unabhängig davon, ob Sie Azure schon eine Weile verwenden oder gerade erst anfangen, Azure für MongoDB-Hosting zu verwenden, hier sind einige Architekturentwurfsmuster, die Sie berücksichtigen sollten, um sicherzustellen, dass Sie die Azure-Plattform für das beste MongoDB-Hosting-Erlebnis.

    1. Azure Resource Manager (ARM)-Plattform

      Nutzen Sie die Leistungsfähigkeit der neuen Azure Resource Manager (ARM)-Plattform. Wenn Sie sich noch auf der Azure Classic-Plattform befinden, ist es jetzt an der Zeit, umzuziehen! Die Umstellung auf die neue ARM-Plattform bietet mehrere Vorteile, darunter die Nutzung verwalteter Datenträger, virtueller Netzwerke und reservierter Instanzen. Alle Vorteile werden im Blogbeitrag Benefits of migrating IaaS to Azure Resource Manager ausführlich beschrieben.

    2. Virtuelle Azure-Netzwerke und Netzwerksicherheitsgruppen

      Datenbanken werden am besten in privaten Subnetzen bereitgestellt, die nicht dem Internet ausgesetzt sind. Mit Azure können Sie Ihr eigenes virtuelles Netzwerk (VNET) erstellen und Ihre Datenbankserver in bestimmten Subnetzen bereitstellen. Sie können die Zugriffskontrolle auch handhaben, indem Sie Regeln für Netzwerksicherheitsgruppen (NSG) erstellen und Ihrem Datenbankserver (nur) eine öffentliche IP zuweisen, wenn Sie ihn über das Internet zugänglich machen müssen. Als Teil unseres „Bring Your Own Cloud“-Modells ermöglichen wir unseren Kunden, ihre MongoDB-Cluster in ihrem eigenen VNET bereitzustellen, um die erweiterten VNET- und NSG-Sicherheitskontrollen zu nutzen.

    3. Azure-Verfügbarkeitssatz und -Verfügbarkeitszonen

      Availability Sets sind unerlässlich, um die Knoten Ihres Clusters auf verschiedene Hardware zu verteilen. Auf diese Weise wirkt sich ein einzelner Hardwarefehler nicht auf alle Ihre Knoten aus. Wir empfehlen, eine Verfügbarkeitsgruppe pro Replikat zu erstellen. Azure hat vor Kurzem auch Verfügbarkeitszonen eingeführt, um Sie vor Ausfällen auf Rechenzentrumsebene zu schützen. Sie können Ihre Replikate für eine Betriebszeit von 99,99 % auf Verfügbarkeitszonen verteilen.

      5 Tipps für besseres #MongoDB-Hosting auf AzureClick To Tweet

    4. Azure-Instanztypen

      Die Auswahl des richtigen Azure-Instanztyps für Ihre MongoDB-Last ist sehr wichtig – nicht alle Instanztypen eignen sich gut für MongoDB. Im Allgemeinen sollten Sie sich die Instanztypen „Speicheroptimiert“ oder „Speicheroptimiert“ ansehen.

      Die neueste Ev3-Serie von speicheroptimierten Instances ist in der Regel ein guter Ausgangspunkt für die meisten MongoDB-Workloads. Wenn Sie mehr CPU benötigen, als von E2 v3 bereitgestellt wird, können Sie die „Allzweck“-Dv3-Instance-Typen in Betracht ziehen.

      Die Instanzen im „Burst“-Modus – „B1S, B1MS, B2MS“ eignen sich normalerweise gut für kleine Workloads, Entwicklungs-/Testumgebungen usw. Wenn Ihre Daten größer werden, werden die „Storage-optimierte“ L4-Serien mit lokalen Azure-SSD-Datenträgern eignen sich hervorragend – weitere Details im Abschnitt „Azure-Datenträger“ weiter unten. Im Allgemeinen hängt der richtige Instanztyp von Ihrer Arbeitslast ab, daher ist es wichtig, die verschiedenen Instanztypen mit Ihrer Arbeitslast zu iterieren und Belastungstests durchzuführen.

    5. Azure-Datenträger

      Azure bietet eine Vielzahl von Datenträgertypen, um unterschiedliche Workloads zu bewältigen:

      • Legacy-Festplatten (Standard und Premium)

        Für die Zwecke dieser Diskussion werden wir die Legacy-Azure-Datenträger nicht berücksichtigen. Wenn Sie ältere Datenträger verwenden, sollten Sie einen Wechsel zu verwalteten Datenträgern in Betracht ziehen.

      • Verwaltete Datenträger (Standard und Premium)

        Azure Managed Disks vereinfachen die Verwaltung Ihrer Compute-Festplatten in Azure erheblich. Sie bieten mehrere Vorteile gegenüber Legacy-Festplatten:

        • Kein Grund zur Sorge um Speicherkonten.
        • Sie müssen sich keine Gedanken über die Größe des Speicherkontos und Leistungsbeschränkungen machen.
        • Einfache Snapshots und Erstellen neuer Laufwerke aus Snapshots.
        • Wechseln Sie ganz einfach von Standard zu Premium und umgekehrt.
        • Nutzen Sie erweiterte Verfügbarkeitssätze, um sie auf Ihre Laufwerke anzuwenden.

        Die vollständigen Details zu den Unterschieden zwischen verwalteten Datenträgern und Legacy-Datenträgern finden Sie in der Azure-Dokumentation.

        Premium Managed Disks bieten auch unterschiedliche IOPS-Garantien je nach Größe der Festplatte. Für Produktions-MongoDB-Cluster würden wir Premium Managed Disks dringend empfehlen, während für Entwicklungs-/Testumgebungen Standard Managed Disks gut geeignet sind.
      • Lokale SSD-Laufwerke

        Speicheroptimierte Azure-Instanztypen bieten große lokale SSD-Festplatten, die den besten Durchsatz in Azure bieten. Dies eignet sich hervorragend für große Cluster, die viele Festplatten-Ein-/Ausgaben (E/A) benötigen. Unsere Azure High Performance-Cluster für MongoDB verwenden die Instanzen der L-Serie. Lokale SSD-Festplatten sind jedoch „flüchtig“ – wenn Sie die Instanz stoppen, verschwinden die Daten. Daher ist es wichtig, bei der Verwendung lokaler Laufwerke sehr vorsichtig zu sein. Wir empfehlen, ein Replikat zu verwenden, das sich auf Managed Premium Disks befindet, um die Sicherheit der Daten zu gewährleisten.

Ich weiß, wir haben 5 Tipps versprochen, aber hier ist noch einer extra für unterwegs:

  1. Reservierte Azure-Instanzen nutzen

    Azure unterstützt jetzt Reserved Instances (RIs) auch bekannt als AWS. Sie können Azure Reserved Instances für ein Jahr oder drei Jahre im Voraus erwerben und Ihre MongoDB-Hosting-Kosten um bis zu 82 % reduzieren.