So erstellen Sie hochverfügbare und skalierbare Blackboard-Services

GESCHRIEBEN VON Zevenet | 24. September 2019

Was ist Blackboard?

Blackboard ist eine von einem gleichnamigen Unternehmen entwickelte Anwendung für den Bildungssektor, deren Ziel es ist, von Lehrern bearbeitete und für Schüler leicht zugängliche Bildungsinhalte bereitzustellen.

Diese Anwendung enthält wichtige Tools für Schüler wie Prüfungswerkzeuge, Videokonferenzen mit Lehrern oder Kursstunden. Da für diese Art von Anwendungen eine erhöhte Anzahl gleichzeitiger Benutzer erwartet wird, können Probleme aufgrund der Überlastung des Anwendungsservers täglich auftreten.

Um dies zu vermeiden, wird dringend empfohlen, die Webanwendung mithilfe eines Hochverfügbarkeitsmodells bereitzustellen, um sicherzustellen, dass die Schüler gleichzeitig auf die Bildungsressourcen zugreifen können, ohne Verbindungsprobleme zu haben und die Anwendung immer mit maximaler Verfügbarkeit bereitzustellen.

Hochverfügbare Umgebung der Tafel

Die Blackboard-Umgebung enthält zwei Arten von Servern:

Anwendungsserver, die die Anwendungslogik und Benutzerprofile verwalten.
Gemeinsame Server, die von einigen Tools als Treffpunkt zwischen Benutzern oder Chatfunktionen verwendet werden. In der Tat ist dies ein Anwendungsserver mit einigen speziellen Konfigurationen.

Die skalierbare und hochverfügbare Zielumgebung einer Blackboard-Bereitstellung ist in der folgenden Zeichnung dargestellt.

Um dies zu erreichen, empfehlen wir, eine einzurichten HTTP Farm für Anwendungsserver im Aktiv / Aktiv-Modus, in der bei Bedarf ein Serverpool hinzugefügt wird.

Zum anderen empfehlen wir a L4xNAT Farm für kollaborative Server, die alle Ports und alle Protokolle verwenden, da sie TCP- und UDP-Verkehr für die interaktiven und kollaborativen Dienste verwenden können. Laut Blackboard können diese Dienste nur im Aktiv-Passiv-Modus eingerichtet werden, sodass wir dies bei der Konfiguration des virtuellen Dienstes berücksichtigen.

In unserem Beispiel wird der Blackboard-Anwendungsdienst auf der IP veröffentlicht 10.0.1.2 welches für die Domain aufgelöst wird blackboard.domain.org im DNS und über die TCP-Ports 443 und 80 (Weiterleitung zum Port 443).

Auf die kollaborativen Dienste kann über das IP zugegriffen werden 10.0.1.3 was sich mit der domain auflöst collab.blackboard.domain.org von allen Ports und Protokollen.

Alle Anwendungen und Server für die Zusammenarbeit befinden sich im selben Netzwerksegment 10.0.7.0 / 24.

Konfiguration für den Lastausgleich an der Tafel

Anforderungen:

Bereiten Sie zunächst die Anwendung für die Einrichtung mit hoher Verfügbarkeit und einigen Dienstprogrammen für den Lastenausgleich vor.

Blackboard-Konfiguration für hohe Verfügbarkeit

Die Konfiguration der Anwendung und der kollaborativen Blackboard-Server für hohe Verfügbarkeit wird im folgenden Artikel ausführlich erläutert:

https://help.blackboard.com/es-es/Learn/Administrator/Hosting/Performance_Optimization/Load_Balancing

Befolgen Sie die Anweisungen von DNS und anderen erforderlichen Konfigurationen, um sicherzustellen, dass die Blackboard-Bereitstellung für HA bereit ist.

Konfiguration des virtuellen Blackboard-Service-Netzwerks

Die virtuellen Dienste werden auf zwei verschiedenen virtuellen Schnittstellen unter derselben physischen Netzwerkkarte veröffentlicht. Diese Schnittstellen werden vom Zevenet Load Balancer-Cluster gemeinsam genutzt. Bei hohem Durchsatz und um die Latenz zu verringern, können die virtuellen Dienste unterschiedliche physische Netzwerkkarten verwenden.

Die virtuellen Schnittstellen werden in einer vorhandenen physischen Netzwerkschnittstelle erstellt. Daher muss sich eine NIC-, Bonding- oder VLAN-Schnittstelle im selben Netzwerk befinden wie die IP-Adresse der virtuellen Schnittstelle. In diesem Fall wird eine NIC-Schnittstelle erstellt, indem Sie auf das linke Menü klicken Netzwerk> Netzwerkkarte und Bearbeiten einer der NICs der Liste.

In diesem Beispiel werden die Dienste auf zwei Schnittstellen veröffentlicht, von denen eine aufgerufen wird eth1: Tafel mit der IP 10.0.1.2 und ein anderer rief an eth1: Zusammenarbeit und mit der IP 10.0.1.3.

Um eine virtuelle Schnittstelle zu erstellen, klicken Sie auf die linke Menüleiste Netzwerk> Virtuelle Schnittstellen> Erstellen und füllen Sie das Formular wie unten gezeigt aus.

Erstellen Sie auf die gleiche Weise die virtuelle Schnittstelle für den kollaborativen virtuellen Service.

Überwachung des Blackboard Health Checks

Blackboard bietet bereits eine Webseite, auf der der Integritätsstatus des Anwendungsservers abgefragt werden kann. Wir empfehlen daher, diese Seite bei den im Load Balancer konfigurierten erweiterten Integritätsprüfungen zu verwenden. Der folgende angepasste FarmGuardian-Test wird verwendet, um den Blackboard-Anwendungsstatus zu ermitteln.

Klicken Sie auf die Option in der linken Menüleiste Überwachung> Farmguardiansdrücken Sie auf Farmguardian erstellen und wählen Sie die Option Kopie von "check_http", wie unten gezeigt.

Die neuen Integritätsprüfungsparameter für die Blackboard-Anwendungsserver sind:

Name: check_blackboard
Intervall: 61-Segment
Befehl: check_http -I HOST -p PORT -e 200 -t 20 -u „http://blackboard.domain.org/webapps/portal/healthCheck“

Diese Farmguardian-Prüfung wird für 4-Backends oder weniger angepasst. Wenn mehr als 4-Backends im Anwendungsserver-Pool vorhanden sind, stellen Sie den Intervall-Parameter gemäß der Gleichung ein Intervall = * 20 + 1.

Nachdem wir das erforderliche Setup konfiguriert haben, konfigurieren wir die virtuellen Dienste für jeden in Blackboard HA benötigten Dienst.

Konfiguration des virtuellen Dienstes von Blackboard Application Servers

Es werden zwei verschiedene virtuelle HTTP-Dienste konfiguriert, einer für sicheres HTTPS und einer für eine Umleitung von HTTP zu HTTPS. Mal sehen, wie das geht.

Virtueller Anwendungsserver-HTTPS-Dienst

Erstellen Sie eine neue LSLB-HTTP-Profilfarm, indem Sie auf die Option in der linken Menüleiste klicken LSLB> Bauernhöfe und dann den Knopf Farm erstellen.

Die folgenden Parameter werden geändert, um die beste Leistung zu erzielen:

Hörer:
HTTPS
Aktivierte Zertifikate. Hier wird empfohlen, ein signiertes Zertifikat auszuwählen, das zuvor über die Option in der linken Menüleiste hochgeladen wurde LSLB> SSL-Zertifikate, Klicken Sie auf Zertifikat hochladen .

Die Blackboard-Anwendung benötigt nur einen Dienst im virtuellen HTTPS-Dienst. Erstellen Sie es, indem Sie auf die Schaltfläche klicken Dienstleistungen Tab und dann die Neuer Service Taste. Die in den Diensten zu konfigurierenden Parameter sind:

HTTPS-Backends: freigegeben
Cookie einfügen: freigegeben
Cookie-Name: ZENSESSIONID
Cookie TTL: 10860, (3h, 1min)
Cookie-Pfad: /
Farmguardian: check_blackboard (zuvor erstellt)

Nach dem Ändern muss die Taste gedrückt werden Absenden .

Fügen Sie abschließend die Anwendungsserver im Backend-Bereich hinzu, indem Sie auf klicken Backends hinzufügen. Für jedes Backend wird zur Konfiguration das benötigt IP Address und der Hafen. Wenn alle Backends hinzugefügt wurden, drücke auf die Farm Wiederaufnahme .

HTTP-zu-HTTPS-Umleitungsdienst des Anwendungsservers

Ziel dieser HTTP-Farm ist es, die HTTP-Anforderungen an die zuvor mit dem Namen erstellte HTTP-Farm umzuleiten Tafel-Anwendung um alle Clients zu zwingen, den verschlüsselten Dienst zu durchlaufen. Erstellen Sie in unserem Beispiel eine neue LSLB-Farm mit dem Namen blackboard-redirect-ssl und legen Sie die folgenden Parameter für diese Farm fest:

Name: blackboard-redirect-ssl
Profil: HTTP
Virtuelle IP: 10.0.1.2 (es ist das gleiche wie der Dienst im Port 443)
Virtueller Port: 80

Sobald die Farm erstellt wurde, klicken Sie auf die Registerkarte Dienstleistungen und die Taste Neuer Service. Wählen Sie einen Dienst aus Name, umleiten in diesem Beispiel und bearbeiten Sie es mit den folgenden Parametern:

Umleiten: aktiviert
URL umleiten: https://blackboard.domain.org (Dies ist der Name des Service-Nameservers, der im DNS verwendet wird.)
Umleitungstyp: Default
Code umleiten: 301

Zum Schluss drücken Sie auf Absenden und starten Sie die Farm neu, um die Änderungen zu übernehmen.

Konfiguration des virtuellen Dienstes von Blackboard Collaborative Servers

Wie am Anfang des Artikels erläutert, können Server für die Zusammenarbeit laut Blackboard nicht über einen Lastenausgleich verfügen, sie können jedoch mit hoher Verfügbarkeit eingerichtet werden.

Im ersten Schritt legen Sie den virtuellen Dienst fest, indem Sie in diesem Abschnitt eine neue Farm L4xNAT erstellen LSLB> Farmen> Farm erstellen. Es wird empfohlen, diesen virtuellen Dienst mit allen von eingestellten Ports zu konfigurieren *, Und durch Alle Protokolle, deren Aktivierung Blackboard empfiehlt TCP für die Dienste und einige UDP Ports, um die Leistung des interaktiven Verkehrs zu verbessern.

Es ist kein spezieller Algorithmus oder keine spezielle Persistenz erforderlich, da dieser Dienst im Aktiv-Passiv-Modus konfiguriert wird. Wir werden jedoch die Backends hinzufügen IP-Adressen (ohne Hafen) mit unterschiedlichen Priorisierter um das automatische Failover zu generieren, wenn der aktive Collaboration-Server als inaktiv erkannt wird. Mehr als 2-Backends konnten problemlos konfiguriert werden.

Schließlich wird empfohlen, eine Integritätsprüfung für diesen Dienst zu konfigurieren. Da im virtuellen Dienst und in den Backends kein bestimmter Port verwendet wird, verwenden wir einen einfachen check_ping um festzustellen, ob der Collaboration-Server erreichbar ist und korrekt auf ein ICMP-Paket reagiert.

Zusammenfassung der virtuellen Blackboard-Dienste

Hier finden Sie eine Zusammenfassung des virtuellen Dienstes, den wir erstellt haben, um die Verfügbarkeit von Blackboards zu verbessern.

Blackboard Load Balancer-Cluster

Um einen eindeutigen Single Point of Failure zu vermeiden, ist ein Load-Balancer-Cluster erforderlich. Diese Vorgehensweise ermöglicht es, die gesamte Umgebung in verschiedenen Rechenzentren oder physischen Knoten einzurichten.

Weitere Informationen zum Cluster finden Sie unter https://www.zevenet.com/knowledge-base/howtos/configure-zevenet-cluster/

Blackboard Virtual Services - Erweiterte Sicherheit

Zevenet Load Balancer enthält ein Intrusion Prevention and Detection-System, das Blacklists, DDoS-Schutz, DNS-Echtzeit-Blackhole-Listen und eine Webanwendungs-Firewall enthält. Wir empfehlen, diese Sicherheitssysteme für Ihre Blackboard HA-Implementierung zu nutzen.

Teilen:

Dokumentation unter den Bedingungen der GNU Free Documentation License.

War dieser Artikel hilfreich?

Verwandte Artikel