Taakverdelingsservices gebruiken in Azure

Inleiding

Microsoft Azure biedt meerdere services voor het beheren van de verdeling van netwerkverkeer en taakverdeling. U kunt deze services afzonderlijk gebruiken of hun methoden combineren, afhankelijk van uw behoeften, om de optimale oplossing te bouwen.

In deze zelfstudie definiëren we eerst een use-case van klanten en zien we hoe deze robuuster en performanter kunnen worden gemaakt met behulp van de volgende Azure-taakverdelingsportfolio: Traffic Manager, Application Gateway en Load Balancer. Vervolgens bieden we stapsgewijze instructies voor het maken van een implementatie die geografisch redundant is, verkeer naar VM's distribueert en u helpt bij het beheren van verschillende soorten aanvragen.

Op conceptueel niveau speelt elk van deze services een afzonderlijke rol in de taakverdelingshiërarchie.

  • Traffic Manager biedt globale DNS-taakverdeling. Er wordt gekeken naar binnenkomende DNS-aanvragen en reageert met een goed eindpunt, in overeenstemming met het routeringsbeleid dat de klant heeft geselecteerd. Opties voor routeringsmethoden zijn:

    • Prestatieroutering om de aanvrager naar het dichtstbijzijnde eindpunt te verzenden in termen van latentie.
    • Prioriteitsroutering om al het verkeer naar een eindpunt te leiden, met andere eindpunten als back-up.
    • Gewogen round robin-routering, die verkeer distribueert op basis van de weging die aan elk eindpunt is toegewezen.
    • Routering op basis van geografie om het verkeer naar uw toepassingseindpunten te distribueren op basis van de geografische locatie van de gebruiker.
    • Routering op basis van subnetten om het verkeer naar uw toepassingseindpunten te distribueren op basis van het subnet (IP-adresbereik) van de gebruiker.
    • Routering met meerdere waarden waarmee u IP-adressen van meer dan één toepassingseindpunt in één DNS-antwoord kunt verzenden.

    De client maakt rechtstreeks verbinding met het eindpunt dat wordt geretourneerd door Traffic Manager. Azure Traffic Manager detecteert wanneer een eindpunt niet in orde is en stuurt de clients vervolgens door naar een ander goed exemplaar. Raadpleeg de documentatie van Azure Traffic Manager voor meer informatie over de service.

  • Application Gateway biedt ADC (Application Delivery Controller) als een service, die verschillende load balancing-mogelijkheden voor laag 7 biedt voor uw toepassing. Hiermee kunnen klanten de productiviteit van webfarms optimaliseren door CPU-intensieve TLS-beëindiging naar de toepassingsgateway te offloaden. Andere routeringsmogelijkheden van Laag 7 zijn round robin-distributie van binnenkomend verkeer, sessieaffiniteit op basis van cookies, routering op basis van URL-pad en de mogelijkheid om meerdere websites achter één toepassingsgateway te hosten. Application Gateway kan worden geconfigureerd als een internetgerichte gateway, een interne gateway of een combinatie van beide. Application Gateway is volledig beheerd, schaalbaar en maximaal beschikbaar in Azure. Het biedt een uitgebreide verzameling diagnostische gegevens en functies voor logboekregistratie voor betere beheersbaarheid.

  • Load Balancer is een integraal onderdeel van de Azure SDN-stack en biedt hoogwaardige laag 4-taakverdelingsservices voor alle UDP- en TCP-protocollen. Hiermee worden binnenkomende en uitgaande verbindingen beheerd. U kunt openbare en interne load-balancedeindpunten configureren en regels definiëren om binnenkomende verbindingen toe te wijzen aan back-end-poolbestemmingen met behulp van TCP- en HTTP-opties voor statustesten om de beschikbaarheid van de service te beheren.

Scenario

In dit voorbeeldscenario gebruiken we een eenvoudige website die twee soorten inhoud bedient: afbeeldingen en dynamisch weergegeven webpagina's. De website moet geografisch redundant zijn en moet de gebruikers van de dichtstbijzijnde (laagste latentie) locatie naar hen dienen. De ontwikkelaar van de toepassing heeft besloten dat alle URL's die overeenkomen met het patroon /images/* worden geleverd vanuit een toegewezen groep virtuele machines die afwijken van de rest van de webfarm.

Daarnaast moet de standaard-VM-pool voor de dynamische inhoud communiceren met een back-enddatabase die wordt gehost op een cluster met hoge beschikbaarheid. De volledige implementatie wordt ingesteld via Azure Resource Manager.

Met Traffic Manager, Application Gateway en Load Balancer kunt u deze website inschakelen om de volgende ontwerpdoelen te bereiken:

  • Redundantie met meerdere geografische gebieden: Als één regio uitvalt, routeert Traffic Manager verkeer naadloos naar de dichtstbijzijnde regio zonder tussenkomst van de eigenaar van de toepassing.
  • Verminderde latentie: Omdat Traffic Manager de klant automatisch omleidt naar de dichtstbijzijnde regio, ervaart de klant een lagere latentie bij het aanvragen van de inhoud van de webpagina.
  • Onafhankelijke schaalbaarheid: omdat de workload van de webtoepassing wordt gescheiden door het type inhoud, kan de eigenaar van de toepassing de aanvraagworkloads onafhankelijk van elkaar schalen. Application Gateway zorgt ervoor dat het verkeer wordt doorgestuurd naar de juiste pools op basis van de opgegeven regels en de status van de toepassing.
  • Interne taakverdeling: Omdat Load Balancer zich vóór het cluster met hoge beschikbaarheid bevindt, wordt alleen het actieve en gezonde eindpunt voor een database blootgesteld aan de toepassing. Daarnaast kan een databasebeheerder de workload optimaliseren door actieve en passieve replica's over het cluster te distribueren, onafhankelijk van de front-endtoepassing. Load Balancer levert verbindingen met het cluster met hoge beschikbaarheid en zorgt ervoor dat alleen gezonde databases verbindingsaanvragen ontvangen.

In het volgende diagram ziet u de architectuur van dit scenario:

Diagram van taakverdelingsarchitectuur

Notitie

Dit voorbeeld is slechts een van de vele mogelijke configuraties van de taakverdelingsservices die Azure biedt. Traffic Manager, Application Gateway en Load Balancer kunnen worden gemengd en afgestemd op uw behoeften voor taakverdeling. Als tls-offload of laag 7-verwerking bijvoorbeeld niet nodig is, kan Load Balancer worden gebruikt in plaats van Application Gateway.

De taakverdelingsstack instellen

Stap 1: Een Traffic Manager-profiel maken

  1. Klik in De Azure-portal op Een resourcenetwerknetwerkprofiel>>maken in Traffic Manager.>

  2. Voer de volgende basisinformatie in:

    • Naam: Geef uw Traffic Manager-profiel een DNS-voorvoegselnaam.
    • Routeringsmethode: selecteer het beleid voor verkeersrouteringsmethode. Zie Traffic Manager-verkeersrouteringsmethoden voor meer informatie over de methoden.
    • Abonnement: Selecteer het abonnement dat het profiel bevat.
    • Resourcegroep: Selecteer de resourcegroep die het profiel bevat. Dit kan een nieuwe of bestaande resourcegroep zijn.
    • Locatie van resourcegroep: De Traffic Manager-service is globaal en is niet gebonden aan een locatie. U moet echter een regio opgeven voor de groep waarin de metagegevens die zijn gekoppeld aan het Traffic Manager-profiel zich bevinden. Deze locatie heeft geen invloed op de runtime-beschikbaarheid van het profiel.
  3. Klik op Maken om het Traffic Manager-profiel te genereren.

    Blade Traffic Manager maken

Stap 2: De toepassingsgateways maken

  1. Klik in Azure Portal in het linkerdeelvenster op Een resourcenetwerktoepassingsgateway>> maken.

  2. Voer de volgende basisinformatie over de toepassingsgateway in:

    • Naam: De naam van de toepassingsgateway.
    • SKU-grootte: de grootte van de toepassingsgateway, beschikbaar als Klein, Gemiddeld of Groot.
    • Aantal exemplaren: het aantal exemplaren, een waarde van 2 tot en met 10.
    • Resourcegroep: de resourcegroep die de toepassingsgateway bevat. Dit kan een bestaande resourcegroep of een nieuwe zijn.
    • Locatie: de regio voor de toepassingsgateway, die dezelfde locatie is als de resourcegroep. De locatie is belangrijk, omdat het virtuele netwerk en het openbare IP-adres zich op dezelfde locatie als de gateway moeten bevinden.
  3. Klik op OK.

  4. Definieer de configuraties van het virtuele netwerk, subnet, front-end-IP en listener voor de toepassingsgateway. In dit scenario is het front-end-IP-adres openbaar, waardoor het later kan worden toegevoegd als eindpunt aan het Traffic Manager-profiel.

Notitie

Als u HTTPS gebruikt, selecteert u HTTPS naast Protocol op het tabblad Listener. De standaardoptie is HTTP. U moet ook een SSL-certificaat maken en toewijzen. Zie de zelfstudie voor Application Gateway voor SSL voor meer informatie.

URL-routering configureren voor toepassingsgateways

Wanneer u een back-endpool kiest, gebruikt een toepassingsgateway die is geconfigureerd met een regel op basis van een pad een padpatroon van de aanvraag-URL naast round robin-distributie. In dit scenario voegen we een padgebaseerde regel toe om een URL met '/images/*' door te sturen naar de servergroep van de installatiekopieën. Zie Een padgebaseerde regel voor een toepassingsgateway maken voor een toepassingsgateway voor meer informatie over het configureren van routering op basis van EEN URL-pad.

Diagram van application Gateway-weblaag

  1. Ga vanuit uw resourcegroep naar het exemplaar van de toepassingsgateway die u in de vorige sectie hebt gemaakt.

  2. Selecteer onder Instellingen back-endpools en selecteer Vervolgens Toevoegen om de VM's toe te voegen die u wilt koppelen aan de back-endpools in de weblaag.

  3. Voer de naam in van de back-endpool en alle IP-adressen van de computers die zich in de groep bevinden. In dit scenario verbinden we twee back-endserverpools van virtuele machines.

    Application Gateway 'Back-endpool toevoegen'

  4. Selecteer onder Instellingen van de toepassingsgateway regels en klik vervolgens op de knop Pad om een regel toe te voegen.

    Knop Pad gebaseerd op toepassingsgatewayregels

  5. Configureer de regel door de volgende informatie op te geven.

    Basisinstellingen:

    • Naam: De beschrijvende naam van de regel die toegankelijk is in de portal.
    • Listener: De listener die wordt gebruikt voor de regel.
    • Standaardback-endpool: de back-endpool die moet worden gebruikt met de standaardregel.
    • Standaard-HTTP-instellingen: de HTTP-instellingen die moeten worden gebruikt met de standaardregel.

    Op pad gebaseerde regels:

    • Naam: De beschrijvende naam van de padgebaseerde regel.
    • Paden: de padregel die wordt gebruikt voor het doorsturen van verkeer.
    • Back-endpool: de back-endpool die moet worden gebruikt met deze regel.
    • HTTP-instelling: de HTTP-instellingen die met deze regel moeten worden gebruikt.

    Belangrijk

    Paden: Geldige paden moeten beginnen met '/'. Het jokerteken '*' is alleen aan het einde toegestaan. Geldige voorbeelden zijn /xyz, /xyz*of /xyz/*.

    Blade 'Regel op basis van pad toevoegen' van Application Gateway

Stap 3: Toepassingsgateways toevoegen aan de Traffic Manager-eindpunten

In dit scenario is Traffic Manager verbonden met toepassingsgateways (zoals geconfigureerd in de voorgaande stappen) die zich in verschillende regio's bevinden. Nu de toepassingsgateways zijn geconfigureerd, is de volgende stap het verbinden met uw Traffic Manager-profiel.

  1. Open uw Traffic Manager-profiel. Hiervoor zoekt u in uw resourcegroep of zoekt u naar de naam van het Traffic Manager-profiel van alle resources.

  2. Selecteer eindpunten in het linkerdeelvenster en klik vervolgens op Toevoegen om een eindpunt toe te voegen.

    Knop Toevoegen voor Traffic Manager-eindpunten

  3. Maak een eindpunt door de volgende gegevens in te voeren:

    • Type: Selecteer het type eindpunt dat u wilt verdelen. Selecteer in dit scenario het Azure-eindpunt omdat we het verbinden met de exemplaren van de toepassingsgateway die eerder zijn geconfigureerd.
    • Naam: Voer de naam van het eindpunt in.
    • Doelresourcetype: selecteer openbaar IP-adres en selecteer vervolgens onder Doelresource het openbare IP-adres van de toepassingsgateway die eerder is geconfigureerd.

    Traffic Manager 'Eindpunt toevoegen'

  4. Nu kunt u uw installatie testen door deze te openen met de DNS van uw Traffic Manager-profiel (in dit voorbeeld: TrafficManagerScenario.trafficmanager.net). U kunt aanvragen opnieuw verzenden, VM's ophalen of VM's en webservers die in verschillende regio's zijn gemaakt, omlaag brengen. U kunt ook verschillende Traffic Manager-profielinstellingen wijzigen en testen.

Stap 4: Een load balancer maken

In dit scenario distribueert Load Balancer verbindingen van de weblaag naar de databases binnen een cluster met hoge beschikbaarheid.

Als uw databasecluster met hoge beschikbaarheid SQL Server AlwaysOn gebruikt, raadpleegt u Een of meer AlwaysOn-listeners voor beschikbaarheidsgroepen configureren voor stapsgewijze instructies.

Zie Een interne load balancer maken in Azure Portal voor meer informatie over het configureren van een interne load balancer.

  1. Klik in Azure Portal in het linkerdeelvenster op Een load balancer voor resources>maken.>
  2. Kies een naam voor uw load balancer.
  3. Stel het type in op Intern en kies het juiste virtuele netwerk en subnet waarin de load balancer zich bevindt.
  4. Selecteer onder IP-adrestoewijzing de optie Dynamisch of Statisch.
  5. Kies onder Resourcegroep de resourcegroep voor de load balancer.
  6. Kies onder Locatie de juiste regio voor de load balancer.
  7. Klik op Maken om de load balancer te genereren.

Verbinding maken een back-enddatabaselaag naar de load balancer

  1. Zoek in uw resourcegroep de load balancer die in de vorige stappen is gemaakt.

  2. Klik onder Instellingen op Back-endpools en klik vervolgens op Toevoegen om een back-endpool toe te voegen.

    Load Balancer 'Back-endpool toevoegen'

  3. Voer de naam in van de back-endpool.

  4. Voeg afzonderlijke machines of een beschikbaarheidsset toe aan de back-endpool.

Een test configureren

  1. Selecteer tests in de load balancer onder Instellingen en klik vervolgens op Toevoegen om een test toe te voegen.

    Load Balancer 'Test toevoegen'

  2. Voer de naam voor de test in.

  3. Selecteer het protocol voor de test. Voor een database wilt u mogelijk een TCP-test in plaats van een HTTP-test. Zie Load Balancer-tests begrijpen voor meer informatie over load balancer-tests.

  4. Voer de poort van uw database in die moet worden gebruikt voor toegang tot de test.

  5. Geef onder Interval op hoe vaak de toepassing moet worden onderzocht.

  6. Geef onder Drempelwaarde voor beschadigde status het aantal doorlopende testfouten op dat moet optreden voordat de back-end-VM als beschadigd wordt beschouwd.

  7. Klik op OK om de test te maken.

De taakverdelingsregels configureren

  1. Selecteer onder Instellingen van de load balancer taakverdelingsregels en klik vervolgens op Toevoegen om een regel te maken.
  2. Voer de naam in voor de taakverdelingsregel.
  3. Kies het front-end-IP-adres van de load balancer, het protocol en de poort.
  4. Geef onder Back-endpoort de poort op die moet worden gebruikt in de back-endpool.
  5. Selecteer de back-endpool en de test die in de vorige stappen zijn gemaakt om de regel toe te passen.
  6. Kies onder Sessiepersistentie hoe u de sessies wilt behouden.
  7. Geef onder Time-outs voor inactiviteit het aantal minuten voor een time-out voor inactiviteit op.
  8. Selecteer onder Zwevend IP-adres de optie Uitgeschakeld of Ingeschakeld.
  9. Klik op OK om de regel te maken.

Stap 5: vm's in de weblaag Verbinding maken naar de load balancer

Nu configureren we het IP-adres en de front-endpoort van de load balancer in de toepassingen die worden uitgevoerd op uw weblaag-VM's voor databaseverbindingen. Deze configuratie is specifiek voor de toepassingen die op deze VM's worden uitgevoerd. Raadpleeg de toepassingsdocumentatie om het doel-IP-adres en de poort te configureren. Als u het IP-adres van de front-end wilt vinden, gaat u in Azure Portal naar de front-end-IP-adresgroep in de load balancer-instellingen.

Navigatiedeelvenster Front-end-IP-adresgroep van Load Balancer

Volgende stappen