Bewerken

Share via


Hybride beschikbaarheid en prestatiebewaking

Azure Event Hubs
Azure Log Analytics
Azure Monitor
Azure Storage
Azure Virtual Machines

Deze referentiearchitectuur laat zien hoe u Azure Monitor gebruikt om de prestaties en beschikbaarheid van besturingssysteemworkloads (OS) te bewaken die worden uitgevoerd op virtuele machines (VM's). De VM's kunnen zich in Microsoft Azure, in on-premises omgevingen of in niet-Azure-clouds bevinden.

Architectuur

Diagram met bewakings- en beschikbaarheidsfuncties van Azure Monitor voor besturingssysteemworkloads in Azure, in on-premises omgevingen en met cloudproviders van derden. Gegevens worden verzonden naar een Log Analytics-werkruimte. De gegevens worden gebruikt door Application Insights-, analyse-, visualisatie-, waarschuwingen- en automatische schaalaanpassingsservices als onderdeel van Azure Monitor

Een Visio-bestand van deze architectuur downloaden.

Workflow

  • On-premises hoofdkantoor - VM 1. Dit onderdeel is een webtoepassing met internettoegang en een openbare webpagina, en zowel Log Analytics- als Dependency-agents geïnstalleerd. Raadpleeg het overzicht en overzicht van Azure Monitor-agents, Afhankelijkheidsagent voor informatie over agents.
  • On-premises hoofdkantoor - VM 2. Deze bedrijfslogicaomgeving heeft geen internettoegang. Er zijn echter Log Analytics- en Dependency-agents geïnstalleerd.
  • On-premises hoofdkantoor - VM 3. Dit onderdeel is een gegevensarchief zonder internettoegang, maar waarbij Log Analytics- en Dependency-agents zijn geïnstalleerd.
  • On-premises hoofdkantoor - Log Analytics-gateway. De Log Analytics-gateway verzamelt logboek- en metrische gegevens van de drie on-premises VM's en levert deze in de Log Analytics-werkruimte via TCP (Transmission Control Protocol) op poort 443.
  • On-premises hoofdkantoor - Firewall. Verkeer naar en van de on-premises omgeving wordt gerouteerd via de firewall.
  • Gateway. De gateway biedt connectiviteit met het filiaal.
  • On-premises filiaal - VM 4. Dit onderdeel is de bedrijfstoepassing die wordt uitgevoerd zonder internettoegang, maar waarbij Log Analytics- en Dependency-agents zijn geïnstalleerd. De Log Analytics-agent die op de VIRTUELE machine is geïnstalleerd, is geconfigureerd om gegevens rechtstreeks over te dragen naar de Log Analytics-werkruimte zonder dat hiervoor een Log Analytics-gateway nodig is.
  • On-premises filiaal - Gateway. Deze gateway verbindt het filiaal met het on-premises hoofdkantoor via een Virtual Private Network (VPN).
  • Externe cloudprovider - VM 5. Dit onderdeel is een webtoepassing met internettoegang, een openbare webpagina en zowel Log Analytics- als afhankelijkheidsagents geïnstalleerd.
  • Externe cloudprovider - VM 6. Dit onderdeel is een gegevensarchiefomgeving zonder internettoegang, maar waarbij zowel Log Analytics- als Dependency-agents zijn geïnstalleerd. Er is geen directe connectiviteit van de externe cloudprovideromgevingen naar de on-premises omgevingen.
  • Azure - VMSS. Dit is een schaalset die wordt gemaakt met behulp van virtuele-machineschaalsets van Azure. Er wordt een bedrijfstoepassing uitgevoerd waarop de log analytics- en diagnostische agents zijn geïnstalleerd.
  • Azure - Toepassingsserver. Deze server heeft één VIRTUELE machine waarop een bedrijfstoepassing wordt uitgevoerd, waarbij Log Analytics en diagnostische agents zijn geïnstalleerd.
  • Metrische gegevens van Azure Monitor. Gegevens die worden verzameld door metrische gegevens van Azure Monitor, worden opgeslagen in een tijdreeksdatabase die is geoptimaliseerd voor het analyseren van tijdstempelgegevens. Er worden ook metrische gegevens opgeslagen die worden verzonden vanaf on-premises VM's en Azure-VM's.
  • Azure Monitor - Log Analytics-werkruimte. In deze werkruimte worden logboeken opgeslagen die worden verzonden vanaf on-premises VM's, Azure-VM's en VM's op cloudproviders van derden. De werkruimte is een Azure-resource waarin gegevens worden samengevoegd en fungeert als een administratieve grens voor toegang tot deze gegevens. Andere Azure Monitor-services maken vervolgens verbinding met de Log Analytics-werkruimte en gebruiken de gegevens voor verschillende doeleinden. Zie De implementatie van uw Azure Monitor-logboeken ontwerpen voor meer informatie.
  • Azure Monitor - Insights - Application Insights. Application Insights biedt analyses van toepassingen en inzichten in hun gebruik. In deze voorbeeldarchitectuur controleert een pingtest voor beschikbaarheid de beschikbaarheid van de on-premises webtoepassing. Waarschuwingsregels zijn ingeschakeld om een melding te geven van een mislukte test. Zie Wat is Application Insights? en Bewaak de beschikbaarheid van een website voor meer informatie.
  • Azure Monitor - Inzichten - Azure Monitor voor VM's. Azure Monitor voor VM's bewaakt de prestaties en status van uw virtuele machines en virtuele-machineschaalsets. De bewaking omvat de actieve processen en afhankelijkheden van andere resources. In dit scenario biedt Azure Monitor voor VM's inzicht in uw virtuele machines. Zie Wat is Azure Monitor voor VM's? voor meer informatie.
  • Azure Monitor - Analyse. Logboek- en metrische gegevens van de VM's worden opgevraagd in metrische gegevens van Azure Monitor en de Log Analytics-werkruimte met behulp van de Kusto-querytaal (KQL). De resultaten bieden inzicht in de infrastructuur, topologie en resources. Zie Kusto: Overzicht en Voorbeelden van Azure Monitor-logboekquery's voor meer informatie.
  • Azure Monitor - Visualisaties. Azure Monitor maakt gebruik van visualisatiehulpprogramma's om toepassings- en infrastructuuronderdelen en communicatie tussen services in Azure Monitor te controleren. Visualisatiehulpprogramma's omvatten Toepassingsoverzicht in Azure-toepassing Insight, de kaartfunctie van Azure Monitor voor VM's, Azure Monitor-werkmappen en verschillende dashboardweergaven die beschikbaar zijn in Azure Monitor. Zie De kaartfunctie van Azure Monitor voor VM's gebruiken voor meer informatie over toepassingsonderdelen, dashboards van Log Analytics-gegevens en Azure Monitor-werkmappen maken en delen.
  • Azure Monitor - Integraties. Azure Monitor kan worden geïntegreerd met een scala aan hulpprogramma's en extensies van derden. Deze hulpprogramma's en extensies verbeteren en bouwen voort op bestaande Azure Monitor-functionaliteit, zoals analyse en visualisaties.
  • Azure Monitor - Acties - Waarschuwingen. Variaties in metrische gegevens en logboekgegevens kunnen duiden op het optreden van gebeurtenissen. Regels definiëren de gegevensvariaties die waarschuwingen activeren, meldingen verstrekken en herstelreacties initiëren. Wanneer in deze architectuur een waarschuwing wordt geactiveerd, worden de on-premises VM's en Azure-VM's automatisch door automatiseringsrunbooks hersteld. Webhookacties, Service Management-integratie en andere actietypen zijn ook beschikbaar. Zie Waarschuwingen voor metrische gegevens maken, weergeven en beheren met behulp van Azure Monitor en Logboekwaarschuwingen maken, weergeven en beheren met Behulp van Azure Monitor voor meer informatie.
  • Azure Monitor - Acties - Automatisch schalen. Met automatische schaalaanpassing worden VM-exemplaren toegevoegd of verwijderd volgens deman, waardoor de prestaties worden gehandhaafd en de kosteneffectiviteit wordt verhoogd. In deze architectuur heeft automatische schaalaanpassing voorwaarden gedefinieerd rond de gemiddelde CPU-belasting (in percentage). Wanneer aan voorwaarden wordt voldaan, wordt de schaalset aangepast aan de automatische schaalaanpassing van Azure Monitor op basis van de vraag. Zie Overzicht van automatische schaalaanpassing in Microsoft Azure voor meer informatie.

Onderdelen

De architectuur bestaat uit de volgende onderdelen:

Aanbevelingen

De volgende aanbevolen procedures zijn aanbevelingen die van toepassing zijn op de meeste scenario's. Volg deze procedures, tenzij u een specifieke vereiste hebt die deze overschrijft.

Log Analytics-werkruimte

Houd rekening met de volgende aanbevelingen bij het ontwerpen van de Log Analytics-werkruimte:

  • Plaats de werkruimte en resources in dezelfde Azure-regio als latentie een belangrijke factor is.
  • Begin met één Log Analytics-werkruimte en verhoog het aantal werkruimten naarmate de vereisten veranderen.
  • Als u geografisch verspreide teams en resources hebt, hebt u mogelijk één werkruimte per regio nodig.
  • Uw werkruimte hoeft zich niet in hetzelfde abonnement te bevinden als de resources die u uitvoert.

Waarschuwingen

Voor eenvoudigere scenario's kunt u metrische gegevens gebruiken om waarschuwingen te markeren in plaats van logboeken. Metrische gegevens:

  • Geef een telling of numerieke waarde op voor gebeurtenissen zoals CPU-gebruik, beschikbaar geheugen of logische schijfruimte.
  • Lage latentie hebben.
  • Bied meer granulariteit, bijvoorbeeld intervallen per seconde of per minuut.
  • Informeer u snel over een probleem.

Als u aangepaste prestatie-indicatoren of bedrijfsspecifieke metrische gegevens wilt verzamelen om meer inzicht te krijgen, gebruikt u aangepaste metrische gegevens. Zie Aangepaste metrische gegevens in Azure Monitor (preview) voor meer informatie.

Waarschuwingen voor metrische gegevens zijn niet het antwoord in alle situaties. Mogelijk wilt u nog steeds waarschuwingen op basis van logboeken gebruiken wanneer u meer aanpassingen of krachtigere correlaties nodig hebt.

Analyse en diagnose

Bekijk de volgende aanbevelingen voor analyse en diagnostische gegevens:

  • Gebruik logboeken voor een diepere analyse. Logboeken kunnen:

    • Uitgebreide details over gebeurtenissen opgeven (vergeleken met metrische gegevens).
    • Gebeurt af en toe.
    • Vereenvoudig diepere diagnostische gegevens na een eerste metrische vlag.
  • Pas logboekgegevensverzameling (vergelijkbaar met metrische gegevens) aan met behulp van de HTTP Data Collector-API om logboekgegevens naar een Log Analytics-werkruimte te verzenden. Zie Logboekgegevens verzenden naar Azure Monitor met de HTTP Data Collector-API (openbare preview) voor meer informatie.

  • Analyseer uw toepassingen proactief met de functie voor slimme detectie van Application Insight. Slimme detectie past de machine learning-mogelijkheden van Azure en statistische analyse toe om problemen zoals prestatie- of foutafwijkingen, geheugenlekken of algemene toepassingsdegradatie te detecteren. Zie Slimme detectie in Application Insights voor meer informatie.

  • Azure Monitor voor VM's gebruiken : toewijzen om verbindingen tussen servers, processen, latentie van binnenkomende en uitgaande verbindingen en poorten in elke tcp-verbonden architectuur te controleren. Er is geen andere configuratie vereist dan het installeren van een agent. Met Azure Monitor voor VM's - Toewijzing kunt u communiceren met uw servers als onderling verbonden systemen.

Log Analytics-query's

Voer een query uit op de gegevens in een Log Analytics-werkruimte met behulp van KQL om te zoeken naar termen, specifieke gebeurtenissen of statussen om trends te identificeren en patronen te analyseren. Gebruik queryverkenner om te bladeren en vooraf geschreven query's te selecteren, deze te wijzigen of uw eigen query's te maken. U kunt query's uitvoeren, opslaan, delen en exporteren vanuit een werkruimte en uw favoriete query's vastmaken aan een dashboard voor hergebruik.

Agentinstallatie

Installeer agents automatisch en op schaal, in plaats van afzonderlijk, met behulp van automatiseringsopties zoals Azure Policy, Azure PowerShell, Resource Manager-sjablonen of DSC (Desired State Configuration). Zie Azure Monitor voor VM's inschakelen met behulp van Azure Policy, Azure Monitor inschakelen voor VM's met behulp van Azure PowerShell en Azure Monitor voor VM's inschakelen voor een hybride virtuele machine - Desired State Configuration.

Dashboard

Voor kritieke toepassingen maakt u een Azure Dashboard-weergave . Deel uw dashboard of maak uw dashboard in realtime beschikbaar op een gedeeld scherm voor personen die kritieke toepassingsgegevens nodig hebben.

Overwegingen

Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die kunnen worden gebruikt om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie.

Betrouwbaarheid

Betrouwbaarheid zorgt ervoor dat uw toepassing kan voldoen aan de toezeggingen die u aan uw klanten hebt gedaan. Zie Overzicht van de betrouwbaarheidspijler voor meer informatie.

De volgende overwegingen helpen bij het garanderen van beschikbaarheid in uw omgeving.

  • Beschikbaarheidstests. De URL-pingtest die in deze architectuur wordt gebruikt, is de eenvoudigste test voor buitenbeschikbaarheid. Er zijn echter andere opties beschikbaar, zoals:
    • Webtest met meerdere stappen. Hiermee worden opnamen van gesequentieerde webaanvragen afgespeeld om complexe scenario's te testen. Webtests met meerdere stappen worden gemaakt in Microsoft Visual Studio Enterprise en vervolgens geüpload naar de portal voor uitvoering.
    • Aangepaste beschikbaarheidstests bijhouden. Gebruik de TrackAvailability() methode om testresultaten naar Application Insights te verzenden.
  • Waarschuwingen. Wanneer u een beschikbaarheidstest maakt in Application Insights, worden meldingen voor gebeurteniswaarschuwingen standaard ingeschakeld. U kunt de waarschuwingsregels bewerken door het meldingstype en de details van Azure Monitor-waarschuwingen> op te geven.

Beveiliging

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie Overzicht van de beveiligingspijler voor meer informatie.

De volgende items zijn overwegingen voor het veiliger maken van uw omgeving.

  • Log Analytics-werkruimte. Toegangsmodi worden gedefinieerd als een van de volgende contexten:
    • Werkruimtecontext. Alle logboeken waarvoor de werkruimte toegangsmachtigingen heeft, kunnen worden opgevraagd. Dit is een verticale toegangsmethode. Een beveiligingsteam heeft bijvoorbeeld toegang nodig tot alle resourcegegevens van boven naar beneden.
    • Resourcecontext. Alleen logboeken voor specifieke resources kunnen worden opgevraagd. Een toepassingsteam kan bijvoorbeeld toegang krijgen tot logboeken voor de specifieke resource waaraan ze werken.
  • Beveilig gegevens die onderweg zijn naar Log Analytics. Gegevens die onderweg zijn, worden beveiligd met behulp van minimaal TLS (Transport Layer Security) 1.2. U hoeft deze functie niet expliciet in te schakelen. Zie Log Analytics-gegevensbeveiliging voor meer informatie.
  • Data-at-rest beveiligen in Log Analytics. Data-at-rest in Log Analytics wordt standaard beveiligd met behulp van 256-bits AES-versleuteling (Advanced Encryption Standard).
  • Slimme detectie. Gebruik Slimme detectie in Application Insights om de telemetrie te analyseren die door uw toepassing wordt gegenereerd en om beveiligingsproblemen te detecteren. Zie Het detectiepakket voor toepassingsbeveiliging (preview) voor meer informatie.
  • Integreer Azure Monitor met SIEM-hulpprogramma's (Security Information and Event Management). Routeer uw bewakingsgegevens naar een Event Hub met Azure Monitor om externe SIEM- en bewakingshulpprogramma's te integreren. Zie Bewakingsgegevens van Azure streamen naar een Event Hub of externe partner voor meer informatie.

Kostenoptimalisatie

Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.

De volgende items zijn overwegingen voor het beheren en beheren van kosten in uw omgeving.

  • Azure Monitor. Azure Monitor-kosten zijn gebaseerd op verbruik, vaak aangeduid als betalen per gebruik.
  • Log Analytics. U betaalt voor gegevensopname en gegevensretentie. U kunt het aantal virtuele machines schatten en voorspellen, en de hoeveelheid gegevens (in gigabytes) die u van elke VIRTUELE machine verwacht te verzamelen. Een typische Azure-VM verbruikt elke maand tussen 1 gigabyte (GB) en 3 GB aan gegevens. Als u het gegevensgebruik evalueert met Azure Monitor-logboeken, gebruikt u de gegevensstatistieken uit uw eigen omgeving en krijgt u korting op capaciteitsreserveringen.
  • Application Insights. Dit onderdeel wordt gefactureerd op basis van het volume telemetriegegevens dat uw toepassing verzendt en het aantal webtests dat u uitvoert.
  • Metrische query's. Metrische query's worden gefactureerd op basis van het aantal aanroepen.
  • Waarschuwingen. Waarschuwingen worden gefactureerd op basis van het type en het aantal bewaakte signalen.
  • Meldingen. Meldingen worden gefactureerd op basis van het type en het aantal meldingen dat u verzendt.
  • Azure Monitor. In de sectie Gebruik en geschatte kosten van Azure Monitor worden uw maandelijkse kosten geschat op basis van de afgelopen 31 dagen gebruik.
  • Zie de prijscalculator en prijscalculator van Azure Monitor voor meer informatie.

Operationele uitmuntendheid

Operationele uitmuntendheid omvat de operationele processen die een toepassing implementeren en deze in productie houden. Zie Overzicht van de operationele uitmuntendheidpijler voor meer informatie.

Beheerbaarheid

Hier volgen overwegingen voor het beheer van uw omgeving.

DevOps

Hier volgen overwegingen voor het integreren van uw omgeving met DevOps-processen en -oplossingen.

  • Application Insights. Integreer Application Insights in Azure Pipelines om de prestaties en bruikbaarheid te verbeteren. Application Insights kan automatisch prestatieafwijkingen detecteren. Het maakt verbinding met verschillende ontwikkelhulpprogramma's, zoals Azure DevOps Services en GitHub.
  • Instrumentatie van toepassing. Instrumenteer toepassingen door toepassingscode te wijzigen om telemetrie met Application Insights in te schakelen. De volgende methoden zijn manieren om toepassingen te instrumenteren:
    • Tijdens runtime. Het instrumenteren van uw webtoepassing op de server tijdens runtime is ideaal voor toepassingen die al zijn geïmplementeerd, omdat er geen code hoeft te worden bijgewerkt. Geschikte scenario's zijn:
      • Microsoft ASP.NET- of ASP.NET Core-toepassingen die worden gehost in Azure Web Apps
      • ASP.NET toepassingen die worden gehost in Microsoft Internet Information Services (IIS) op een virtuele machine of virtuele-machineschaalset
      • ASP.NET toepassingen die worden gehost in IIS op een on-premises VM
      • Op Java gebaseerde Azure Functions
      • Node.JS-apps in Linux App Services
      • Microservices die worden gehost op AKS
    • Op ontwikkeltijd. Voeg Application Insights toe aan uw code om telemetrieverzameling aan te passen en meer gegevens te verzenden. Ondersteunde talen en platforms zijn onder andere:
      • ASP.NET-toepassingen
      • ASP.NET Core-toepassingen
      • .NET Console-toepassingen
      • Java
      • Node.js
      • Python
  • Gebruik IT Service Management Verbinding maken or (ITSMC) om verbinding te maken met externe ITSM-hulpprogramma's (IT Service Management). ITSMC verbindt Azure met ondersteunde ITSM-producten en -services, waarbij probleemgerelateerde werkitems zich meestal bevinden. Zie Verbinding maken Azure naar ITSM-hulpprogramma's met behulp van IT Service Management Verbinding maken or voor meer informatie.

Prestatie-efficiëntie

Prestatie-efficiëntie is de mogelijkheid van uw workload om op een efficiënte manier te schalen om te voldoen aan de eisen die uw gebruikers erop stellen. Zie overzicht van de pijler Prestatie-efficiëntie voor meer informatie.

Hier volgen overwegingen voor het schalen van uw omgeving.

  • Automatiseer de installatie en configuratie van uw resources en toepassingen.
  • Grootschalige geografisch verspreide toepassingen. Gebruik gedistribueerde tracering in Application Insights om afhankelijkheden en aanroepen in meerdere toepassingsonderdelen, back-endbronnen en microservicesomgevingen bij te houden. Met gedistribueerde tracering kunt u fouten opsporen in toepassingen die procesgrenzen aanroepen, buiten de lokale stack. (U hoeft dit niet in te schakelen Gedistribueerde tracering is automatisch beschikbaar als onderdeel van App Insights.)
    • Twee opties voor het verbruik van gedistribueerde traceringsgegevens zijn:
      • Ervaring met diagnostische gegevens over transacties. Deze ervaring is vergelijkbaar met een aanroepstack met een extra tijddimensie. De ervaring voor transactiediagnose biedt inzicht in één transactie/aanvraag. Het is handig om de hoofdoorzaak van betrouwbaarheidsproblemen en prestatieknelpunten per aanvraag te vinden. Zie Wat is gedistribueerde tracering voor meer informatie?
      • Ervaring met toepassingsoverzicht. Hiermee worden veel transacties samengevoegd om te laten zien hoe systemen topologisch communiceren en gemiddelde prestaties en foutpercentages bieden. Zie Toepassingsoverzicht: Gedistribueerde toepassingen triage voor meer informatie.

Volgende stappen

Meer informatie over de onderdeeltechnologieën:

Gerelateerde architecturen verkennen: