Wir verkaufen eine Weblösung, die mit einer dedizierten Azure-VM geliefert wird, die alles enthält, was zum Ausführen der Anwendung erforderlich ist:
- ASP.NET-Webanwendung
- Produktionsumfeld
- QA-Umgebung
- SQL-Server mit Daten für die PROD- und QA-Umgebung
Ein bestimmter Kunde hat jedoch die Benutzeranforderung, seine Anwendung in einer Hochverfügbarkeitskonfiguration auszuführen. Er möchte, dass beim Ausfall eines Servers der andere übernimmt und umgekehrt.
Ich bin völlig neu im Bereich Lastenausgleich/Hochverfügbarkeitskonfigurationen und weiß, dass Azure Lastenausgleich unterstützt, aber ich bin ratlos, wie ich das zum Laufen bringen könnte. Ist es genauso einfach, einfach zwei Server mit der oben beschriebenen Konfiguration zu erstellen und dann die Hochverfügbarkeitsfunktion einzurichten? Meine Sorge ist, wie ich die Website-Daten und die SQL Server-Daten zwischen den beiden Servern synchronisieren kann? Insbesondere die letzteren.
Oder wäre es einfacher, wenn ich den Azure SQL-Server anstelle eines lokalen SQL-Servers verwenden würde? Oder vielleicht zusätzliche Server anstelle von zwei einführen würde?
Antwort1
Zunächst wird empfohlen, Azure SQL zu verwenden. Das Einrichten eines SQL-Servers selbst ist nicht sicher und „Standard“. Azure SQL bietet Ihnen viele erweiterte Funktionen, darunter Hochverfügbarkeit und Notfallwiederherstellung. Verwenden Sie Azure SQL und konfigurieren Sie die Failover-Gruppe entsprechend denDokument. Jetzt ist die Hochverfügbarkeit Ihrer Datenschicht aktiviert.
Zweitens: Angenommen, Sie haben Ihre Datenbank zu Azure SQL migriert. Erstellen Sie eine neue VM im selben virtuellen Netzwerk wie Ihre aktuelle VM. Und führen Sie dieselbe Anwendung in der neuen VM aus. Erstellen Sie einen Lastenausgleich und fügen Sie diese beiden VMs dem Back-End-Pool hinzu. Jetzt ist Ihre Anwendungsschicht hochverfügbarkeitsfähig.
Antwort2
Sie können StarWind VSAN auf nur zwei virtuellen Maschinen konfigurieren und erhalten eine wirklich hochverfügbare Speicherlösung in der Cloud. Ich glaubedieses Handbuchsollte für Sie nützlich sein, probieren Sie es aus.
Antwort3
Sie können problemlos ein Hochverfügbarkeitsset mit denselben Servern erstellen und dieses Hochverfügbarkeitsset dann als Back-End-Pool in LB festlegen. Es wird empfohlen, die Azure SQL-Datenbank zu verwenden, da Azure über viele integrierte Plattformfunktionen verfügt, die hochverfügbare Anwendungen unterstützen. Es ist jedoch problemlos möglich, den lokalen SQL-Server auf derselben Azure-VM zu verwenden, und Sie erhalten eine schnelle Antwort, da Anwendung und Datenbank auf derselben Azure-VM gehostet werden.
Bei Azure SQL-Datenbanken werden Daten synchron innerhalb der Region repliziert. Um mit virtuellen Maschinen eine hohe Verfügbarkeit zu erreichen, müssen Sie außerdem Verfügbarkeitsgruppen verwenden, die eine ähnliche Funktion wie Fehler- und Upgradedomänen erfüllen.
Siehe hierzuDokument.