Sådan opretter du meget tilgængelige og skala Blackboard-tjenester

SLAGT DEN 24. september 2019

Hvad er Blackboard?

Blackboard er en uddannelsessektorapplikation udviklet af en virksomhed med samme navn, hvis mål er at tjene pædagogisk indhold redigeret af lærere og let tilgængeligt for studerende.

Denne applikation indeholder vigtige værktøjer til studerende som eksamensværktøjer, videokonferencer med lærere eller kursusundervisning. Da denne type applikationer forventer et forhøjet antal samtidige brugere, kan problemer på grund af overbelastning af applikationsserver hver dag møde.

For at afbøde det anbefales det stærkt at distribuere webapplikationen ved hjælp af en model med høj tilgængelighed for at garantere, at studerende kan få adgang til undervisningsressourcerne samtidigt uden problemer med forbindelse og altid betjene applikationen med den maksimale tilgængelighed.

Hårdt tilgængelige miljø på tavlen

Blackboard-miljø indeholder to slags servere:

Applikationsservere, der administrerer applikationslogik og brugerprofiler.
Samarbejdsservere, der bruges af nogle værktøjer som et mødested mellem brugere eller chatfunktioner. Faktisk er dette en applikationsserver med nogle specielle konfigurationer.

Det skalerbare og meget tilgængelige miljø for en Blackboard-implementering er vist i tegningen nedenfor.

For at opnå det anbefaler vi at opsætte en HTTP gård til applikationsservere i aktiv-aktiv tilstand, hvor en pool af servere tilføjes efter behov.

På den anden side anbefaler vi a L4xNAT farm til samarbejdsservere, der bruger alle porte og alle protokoller, da de kan bruge TCP- og UDP-trafik til de interaktive tjenester og samarbejdstjenester. Ifølge Blackboard kan disse tjenester kun opsættes i aktiv-passiv tilstand, så vi tager det i betragtning under konfigurationen af ​​den virtuelle tjeneste.

I vores eksempel offentliggøres Blackboard-applikationstjenesten på IP 10.0.1.2 som løser for domænet blackboard.domain.org i DNS og ved hjælp af TCP-porte 443 80 (omdirigerer til porten 443).

Samarbejdstjenesterne er tilgængelige via IP 10.0.1.3 som løses med domænet collab.blackboard.domain.org fra alle havne og protokoller.

Alle applikationer og samarbejdsservere er i det samme netværkssegment 10.0.7.0/24.

Blackboard-belastningsbalanceringskonfiguration

Krav

For det første skal du forberede applikationen til opsætning i høj tilgængelighed og nogle belastningsbalanceringsværktøjer.

Blackboard-konfiguration for høj tilgængelighed

Applikationen og samarbejdende Blackboard-serverkonfiguration for høj tilgængelighed forklares med detaljer i følgende artikel:

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

Følg venligst instruktionerne fra DNS og andre konfigurationer, der kræves for at sikre, at Blackboard-installationen er klar til HA.

Blackboard virtuel servicenetværkskonfiguration

De virtuelle tjenester offentliggøres i to forskellige virtuelle grænseflader under den samme fysiske NIC, disse grænseflader deles mellem Zevenet Load Balancer-klyngen. I tilfælde af høj gennemstrømning og for at reducere latenstid kunne de virtuelle tjenester bruge forskellige fysiske NIC'er.

De virtuelle grænseflader oprettes i en eksisterende fysisk netværksgrænseflade, så det er nødvendigt at have en NIC-, bonding- eller VLAN-grænseflade i det samme netværk end den virtuelle interface-IP-adresse. I dette tilfælde oprettes en NIC-grænseflade ved at klikke på venstre menu Netværk> NIC og redigering af et af NIC'erne på listen.

I dette eksempel offentliggøres tjenesterne i to grænseflader, den ene kaldes eth1: tavle ved hjælp af IP 10.0.1.2 og en anden ringede eth1: CoLLab og ved hjælp af IP 10.0.1.3.

For at oprette en virtuel grænseflade skal du klikke på menuen til venstre i menulinjen Netværk> Virtuelle grænseflader> Opret og udfyld formularen som den er vist nedenfor.

Opret på samme måde den virtuelle interface til den virtuelle samarbejdsservice.

Blackboard-sundhedscheckovervågning

Blackboard indeholder allerede en webside, der er dedikeret til at bede om applikationsserverens sundhedsstatus, så vi anbefaler at bruge den i de avancerede sundhedscheck, der er konfigureret i belastningsbalanceren. Følgende tilpassede FarmGuardian-check bruges til at kende Blackboard-applikationsstatus.

Klik på menuen til venstre i menulinjen Overvågning> Farmguardians, tryk Opret Farmguardian og vælg indstillingen Kopier fra “check_http”, som det er vist nedenfor.

De nye parametre for sundhedscheck for Blackboard-applikationsservere er:

Navn: check_blackboard
Interval: 61 seg
Kommando: check_http -Jeg er vært -p PORT -e 200 -t 20 -u "http://blackboard.domain.org/webapps/portal/healthCheck"

Denne Farmguardian-kontrol justeres for 4-backends eller mindre, hvis der er mere end 4-backends i applikationsserverens pool, indstil intervalparameteren i henhold til ligningen interval = * 20 + 1.

Nu hvor vi konfigurerede den krævede opsætning, lad os gå til at konfigurere de virtuelle tjenester til alle nødvendige tjenester i Blackboard HA.

Blackboard Application Servers-virtuel servicekonfiguration

To forskellige HTTP-virtuelle tjenester konfigureres, en til sikker HTTPS og en anden med en omdirigering fra HTTP til HTTPS. Lad os se, hvordan man opnår det.

Application Server HTTPS virtual service

Opret en ny LSLB HTTP-profilgård ved at klikke på menuen til venstre i menulinjen LSLB> Gårde og derefter knappen Opret gård.

Følgende parametre ændres for at opnå den bedste ydelse:

Lytter:
HTTPS
Aktiverede certifikater. Her anbefales det at vælge et underskrevet certifikat, der tidligere er uploadet fra venstre menulinjefunktion LSLB> SSL-certifikater, klik på Upload certifikat .

Blackboard-applikationen har kun brug for en service i den virtuelle HTTPS-service. Opret det ved at klikke på Tjenester fanebladet og derefter den Ny Service knap. Parametrene, der skal konfigureres i tjenesterne, er:

HTTPS backends: aktiveret
Cookie indsæt: aktiveret
Cookie navn: ZENSESSIONID
Cookie TTL: 10860, (3h, 1min)
Cookie Sti: /
Farmguardian: check_blackboard (tidligere oprettet)

Når den er ændret, er det nødvendigt at trykke på Indsend .

Til sidst skal du tilføje applikationsserverne i sektionen backend ved at klikke på Tilføj backends. For hver backend er nødvendig for at konfigurere IP-adresse og port. Når alle backends er tilføjet, skal du trykke på gården Genstart .

Applikationsserver HTTP til HTTPS omdirigeringstjeneste

Målet med denne HTTP-farm er at omdirigere HTTP-anmodningerne til den HTTP-farm, der tidligere blev oprettet med navnet tavle-ansøgning for at tvinge alle klienter til at passere den krypterede service. I et eksempel kan du oprette en ny LSLB-gård kaldet tavle-redirect-ssl og indstil følgende parametre for denne gård:

Navn: tavle-redirect-ssl
Profil: HTTP
Virtual IP: 10.0.1.2 (det er det samme som tjenesten i porten 443)
Virtual Port: 80

Når gården er oprettet, skal du klikke på fanen Tjenester og knappen Ny Service. Vælg en service navn, omdirigere i dette eksempel og rediger det med følgende parametre:

Omdiriger: aktiveret
Omdirigeringswebadresse: https://blackboard.domain.org (dette er servicenavnservernavnet, der bruges i DNS)
Omdirigeringstype: Standard
Omdirigeringskode: 301

Til sidst skal du trykke på Indsend og genstart gården for at anvende ændringerne.

Blackboard Collaborative Servers-virtuel servicekonfiguration

Som forklaret i begyndelsen af ​​artiklen, kan samarbejdsservere ikke belastes afbalanceret i henhold til Blackboard, men de kan opsættes i høj tilgængelighed.

Det første trin er at indstille den virtuelle service ved at oprette en ny gård L4xNAT gennem sektionen LSLB> Gårde> Opret gård. Det anbefales at konfigurere denne virtuelle tjeneste med alle porte, indstillet af *og igennem ALLE protokoller som Blackboard anbefaler at aktivere TCP for tjenesterne og nogle UDP havne for at forbedre ydelsen for den interaktive trafik.

Ingen speciel algoritme eller vedholdenhed er påkrævet, da denne tjeneste konfigureres i aktiv-passiv tilstand, men vi tilføjer backenderne IP-adresser (uden port) med forskellige Prioritet for at generere den automatiske failover, når den aktive samarbejdsserver detekteres som nede. Mere end 2 backends kunne konfigureres uden problemer.

Endelig anbefales det at konfigurere en sundhedstjek for denne service. Da der ikke bruges nogen specifik port i den virtuelle tjeneste og backends, bruger vi en simpel check_ping for at vide, om samarbejdsserveren kan nås og reagerer korrekt på en ICMP-pakke.

Blackboard virtuelle servicesoversigt

Her har du en oversigt over den virtuelle tjeneste, vi har oprettet for at forbedre Blackboard-tilgængeligheden.

Blackboard Load Balancer Cluster

For at undgå et unikt enkelt mislykkelsespunkt kræves en belastningsbalancerklynge. Denne praksis gør det muligt at opsætte hele miljøet i forskellige datacentre eller fysiske noder.

For yderligere information om klyngen henvises til https://www.zevenet.com/knowledge-base/howtos/configure-zevenet-cluster/

Blackboard Virtual Services Forbedret sikkerhed

Zevenet Load Balancer inkluderer et system til forebyggelse af indtrængen og detektion, der inkluderer sortlister, DDoS-beskyttelse, DNS-realtime sorthullelister og webapplikations firewall. Vi anbefaler at drage fordel af disse sikkerhedssystemer til din Blackboard HA-implementering.

Del på:

Dokumentation i henhold til GNU Free Documentation License.

Var denne artikel til hjælp?

Relaterede artikler