Configuratie van Azure Monitor-automatisering bij edge
Azure Monitor-pijplijn is een pijplijn voor gegevensopname die consistente en gecentraliseerde gegevensverzameling biedt voor Azure Monitor. De pijplijn aan de rand maakt verzameling op schaal en routering van telemetriegegevens mogelijk voordat deze naar de cloud worden verzonden. Het kan gegevens lokaal in de cache opslaan en synchroniseren met de cloud wanneer de connectiviteit wordt hersteld en telemetrie wordt doorgestuurd naar Azure Monitor in gevallen waarin het netwerk is gesegmenteerd en gegevens niet rechtstreeks naar de cloud kunnen worden verzonden. In dit artikel wordt beschreven hoe u de pijplijn aan de rand in uw omgeving inschakelt en configureert.
Overzicht
De Azure Monitor-pijplijn aan de rand is een containeroplossing die wordt geïmplementeerd op een Kubernetes-cluster met Arc en gebruikmaakt van OpenTelemetry Collector als basis. In het volgende diagram ziet u de onderdelen van de pijplijn aan de rand. Een of meer gegevensstromen luisteren naar binnenkomende gegevens van clients en de pijplijnextensie stuurt de gegevens indien nodig door naar de cloud met behulp van de lokale cache.
Het configuratiebestand voor de pijplijn definieert de gegevensstromen en cache-eigenschappen voor de pijplijn aan de rand. De DCR definieert het schema van de gegevens die naar de cloudpijplijn worden verzonden, een transformatie voor het filteren of wijzigen van de gegevens en het doel waar de gegevens moeten worden verzonden. Elke definitie van de gegevensstroom voor de pijplijnconfiguratie specificeert de DCR en stream binnen die DCR die die gegevens in de cloudpijplijn verwerkt.
Notitie
Privékoppeling wordt ondersteund door automatisering bij edge voor de verbinding met de cloudautomatisering.
De volgende onderdelen en configuraties zijn vereist om de Azure Monitor-pijplijn aan de rand in te schakelen. Als u Azure Portal gebruikt om de pijplijn aan de rand te configureren, wordt elk van deze onderdelen voor u gemaakt. Met andere methoden moet u elke methode configureren.
Onderdeel | Beschrijving |
---|---|
Edge-pijplijncontrollerextensie | Extensie toegevoegd aan uw Kubernetes-cluster met Arc om pijplijnfunctionaliteit te ondersteunen: microsoft.monitor.pipelinecontroller |
Exemplaar van Edge-pijplijncontroller | Exemplaar van de edge-pijplijn die wordt uitgevoerd op uw Kubernetes-cluster met Arc. |
Gegevensstroom | Combinatie van ontvangers en exporteurs die worden uitgevoerd op het exemplaar van de pijplijncontroller. Ontvangers accepteren gegevens van clients en exporteurs om die gegevens aan Azure Monitor te leveren. |
Pijplijnconfiguratie | Configuratiebestand waarmee de gegevensstromen voor het pijplijnexemplaren worden gedefinieerd. Elke gegevensstroom omvat een ontvanger en een exporteur. De ontvanger luistert naar binnenkomende gegevens en de exporteur verzendt de gegevens naar de bestemming. |
Eindpunt voor gegevensverzameling (DCE) | Eindpunt waar de gegevens naar de Azure Monitor-pijplijn worden verzonden. De pijplijnconfiguratie bevat een eigenschap voor de URL van de DCE, zodat het pijplijnexemplaren weten waar de gegevens moeten worden verzonden. |
Configuratie | Beschrijving |
---|---|
Regel voor gegevensverzameling (DCR) | Configuratiebestand waarmee wordt gedefinieerd hoe de gegevens worden ontvangen in de cloudpijplijn en waar deze worden verzonden. De DCR kan ook een transformatie bevatten om de gegevens te filteren of te wijzigen voordat deze naar de bestemming worden verzonden. |
Pijplijnconfiguratie | Configuratie waarmee de gegevensstromen voor het pijplijnexemplaren worden gedefinieerd, inclusief de gegevensstromen en de cache. |
Ondersteunde configuraties
Ondersteunde distributies
Azure Monitor-automatisering aan edge wordt ondersteund in de volgende Kubernetes-distributies:
- Canonical
- Cluster API Provider voor Azure
- K3
- Rancher Kubernetes Engine
- VMware Tanzu Kubernetes raster
Ondersteunde locaties
Azure Monitor-pijplijn aan edge wordt ondersteund in de volgende Azure-regio's:
- VS - oost 2
- VS - west 2
- Europa -west
Vereisten
- Kubernetes-cluster met Arc in uw eigen omgeving met een extern IP-adres. Zie Een bestaand Kubernetes-cluster verbinden met Azure Arc voor meer informatie over het inschakelen van Arc voor een cluster.
- Voor het Kubernetes-cluster met Arc moeten de functies voor aangepaste locaties zijn ingeschakeld. Zie Aangepaste locaties maken en beheren in Kubernetes met Azure Arc.
- Log Analytics-werkruimte in Azure Monitor om de gegevens van de pijplijn aan de rand te ontvangen. Zie Een Log Analytics-werkruimte maken in Azure Portal voor meer informatie over het maken van een werkruimte.
- De volgende resourceproviders moeten zijn geregistreerd in uw Azure-abonnement. Zie Azure-resourceproviders en -typen.
- Microsoft.Insights
- Microsoft.Monitor
Workflow
U hebt geen gedetailleerd inzicht nodig in de verschillende stappen die door de Azure Monitor-pijplijn worden uitgevoerd om deze te configureren met behulp van Azure Portal. Mogelijk hebt u een gedetailleerdere kennis nodig als u een andere installatiemethode gebruikt of als u een geavanceerdere configuratie moet uitvoeren, zoals het transformeren van de gegevens voordat deze op de bestemming wordt opgeslagen.
De volgende tabellen en diagrammen beschrijven de gedetailleerde stappen en onderdelen in het proces voor het verzamelen van gegevens met behulp van de pijplijn aan de rand en geven deze door aan de cloudpijplijn voor opslag in Azure Monitor. Ook opgenomen in de tabellen is de configuratie vereist voor elk van deze onderdelen.
Stap | Bewerking | Ondersteunende configuratie |
---|---|---|
1. | Client verzendt gegevens naar de edge-pijplijnontvanger. | Client is geconfigureerd met IP en poort van de edge-pijplijnontvanger en verzendt gegevens in de verwachte indeling voor het ontvangertype. |
2. | Ontvanger stuurt gegevens door naar de exporteur. | Ontvanger en exporteur worden geconfigureerd in dezelfde pijplijn. |
3. | De exporteur probeert de gegevens naar de cloudpijplijn te verzenden. | De exporteur in de pijplijnconfiguratie bevat de URL van de DCE, een unieke id voor de DCR en de stroom in de DCR die definieert hoe de gegevens worden verwerkt. |
3a. | Exporteur slaat gegevens op in de lokale cache als deze geen verbinding kan maken met de DCE. | Permanent volume voor de cache en configuratie van de lokale cache is ingeschakeld in de pijplijnconfiguratie. |
Stap | Bewerking | Ondersteunende configuratie |
---|---|---|
4. | Cloudpijplijn accepteert de binnenkomende gegevens. | De DCR bevat een schemadefinitie voor de binnenkomende stroom die moet overeenkomen met het schema van de gegevens die afkomstig zijn van de pijplijn aan de rand. |
5. | Cloudpijplijn past een transformatie toe op de gegevens. | De DCR bevat een transformatie waarmee de gegevens worden gefilterd of gewijzigd voordat deze naar de bestemming worden verzonden. De transformatie kan gegevens filteren, kolommen verwijderen of toevoegen of het schema volledig wijzigen. De uitvoer van de transformatie moet overeenkomen met het schema van de doeltabel. |
6. | Cloudpijplijn verzendt de gegevens naar het doel. | De DCR bevat een bestemming waarmee de Log Analytics-werkruimte en -tabel worden opgegeven waarin de gegevens worden opgeslagen. |
Gesegmenteerd netwerk
Netwerksegmentatie is een model waarin u software-gedefinieerde perimeters gebruikt om een ander beveiligingspostuur te maken voor verschillende onderdelen van uw netwerk. In dit model hebt u mogelijk een netwerksegment dat geen verbinding kan maken met internet of met andere netwerksegmenten. De pijplijn aan de rand kan worden gebruikt om gegevens van deze netwerksegmenten te verzamelen en naar de cloudpijplijn te verzenden.
Als u Azure Monitor-pijplijn wilt gebruiken in een gelaagde netwerkconfiguratie, moet u de volgende vermeldingen toevoegen aan de acceptatielijst voor het Kubernetes-cluster met Arc. Zie Azure IoT Layered Network Management Preview configureren op cluster op niveau 4.
- destinationUrl: "*.ingest.monitor.azure.com"
destinationType: external
- destinationUrl: "login.windows.net"
destinationType: external
Tabel maken in Log Analytics-werkruimte
Voordat u het proces voor gegevensverzameling voor de pijplijn aan de rand configureert, moet u een tabel maken in de Log Analytics-werkruimte om de gegevens te ontvangen. Dit moet een aangepaste tabel zijn, omdat ingebouwde tabellen momenteel niet worden ondersteund. Het schema van de tabel moet overeenkomen met de gegevens die deze ontvangt, maar er zijn meerdere stappen in het verzamelingsproces waarin u de binnenkomende gegevens kunt wijzigen, zodat het tabelschema niet overeenkomt met de brongegevens die u verzamelt. De enige vereiste voor de tabel in de Log Analytics-werkruimte is dat deze een TimeGenerated
kolom heeft.
Zie Tabellen en kolommen toevoegen of verwijderen in Azure Monitor-logboeken voor meer informatie over verschillende methoden voor het maken van een tabel. Gebruik bijvoorbeeld de ONDERSTAANDe CLI-opdracht om een tabel te maken met de drie kolommen met de naam Body
, TimeGenerated
en SeverityText
.
az monitor log-analytics workspace table create --workspace-name my-workspace --resource-group my-resource-group --name my-table_CL --columns TimeGenerated=datetime Body=string SeverityText=string
Cache inschakelen
Edge-apparaten in sommige omgevingen kunnen onregelmatige connectiviteit ondervinden vanwege verschillende factoren, zoals netwerkcongestie, signaalinterferentie, stroomstoring of mobiliteit. In deze omgevingen kunt u de pijplijn aan de rand configureren om gegevens in de cache op te slaan door een permanent volume in uw cluster te maken. Het proces hiervoor varieert op basis van uw specifieke omgeving, maar de configuratie moet voldoen aan de volgende vereisten:
- De naamruimte voor metagegevens moet hetzelfde zijn als het opgegeven exemplaar van de Azure Monitor-pijplijn.
- De toegangsmodus moet worden ondersteund
ReadWriteMany
.
Zodra het volume is gemaakt in de juiste naamruimte, configureert u het met behulp van parameters in het onderstaande pijplijnconfiguratiebestand.
Let op
Elke replica van de edge-pijplijn slaat gegevens op op een locatie in het permanente volume dat specifiek is voor die replica. Als u het aantal replica's verlaagt terwijl de verbinding met het cluster is verbroken met de cloud, wordt voorkomen dat gegevens worden teruggevuld wanneer de verbinding wordt hersteld.
Gegevens worden opgehaald uit de cache met fifo (first-in-first-out). Alle gegevens die ouder zijn dan 48 uur, worden verwijderd.
Pijplijn inschakelen en configureren
De huidige opties voor inschakelen en configureren worden beschreven in de onderstaande tabbladen.
Pijplijn configureren met behulp van Azure Portal
Wanneer u Azure Portal gebruikt om de pijplijn in te schakelen en te configureren, worden alle vereiste onderdelen gemaakt op basis van uw selecties. Dit bespaart u op basis van de complexiteit van het afzonderlijk maken van elk onderdeel, maar u hebt andere methoden nodig voor
Voer een van de volgende handelingen uit in Azure Portal om het installatieproces voor de Azure Monitor-pijplijn te starten:
- Klik in het menu Azure Monitor-pijplijnen (preview) op Maken.
- Selecteer in het menu voor uw Kubernetes-cluster met Arc de optie Extensies en voeg vervolgens de Extensie voor de Azure Monitor-pijplijnextensie (preview) toe.
Op het tabblad Basis wordt u gevraagd om de volgende informatie voor het implementeren van de extensie en het pijplijnexemplaren op uw cluster.
De instellingen op dit tabblad worden beschreven in de volgende tabel.
Eigenschappen | Beschrijving |
---|---|
Exemplaarnaam | Naam voor het Azure Monitor-pijplijnexemplaren. Moet uniek zijn voor het abonnement. |
Abonnement | Azure-abonnement om het pijplijnexemplaren te maken. |
Resourcegroep | Resourcegroep voor het maken van het pijplijnexemplaren. |
Clusternaam | Selecteer uw Kubernetes-cluster met Arc waarop de pijplijn wordt geïnstalleerd. |
Aangepaste locatie | Aangepaste locatie voor uw Kubernetes-cluster met Arc. Dit wordt automatisch ingevuld met de naam van een aangepaste locatie die wordt gemaakt voor uw cluster of u kunt een andere aangepaste locatie in het cluster selecteren. |
Met het tabblad Gegevensstroom kunt u gegevensstromen maken en bewerken voor het pijplijnexemplaren. Elke gegevensstroom bevat de volgende details:
De instellingen op dit tabblad worden beschreven in de volgende tabel.
Eigenschappen | Beschrijving |
---|---|
Naam | Naam voor de gegevensstroom. Moet uniek zijn voor deze pijplijn. |
Brontype | Het type gegevens dat wordt verzameld. De volgende brontypen worden momenteel ondersteund: - Syslog - OTLP |
Poort | Poort waarop de pijplijn luistert voor binnenkomende gegevens. Als twee gegevensstromen dezelfde poort gebruiken, ontvangen en verwerken ze de gegevens. |
Log Analytics-werkruimte | Log Analytics-werkruimte om de gegevens naar te verzenden. |
Tabelnaam | De naam van de tabel in de Log Analytics-werkruimte waarnaar de gegevens moeten worden verzonden. |
Configuratie controleren
Pijplijnonderdelen controleren die worden uitgevoerd in het cluster
Navigeer in Azure Portal naar het menu Kubernetes-services en selecteer uw Kubernetes-cluster met Arc. Selecteer Services en ingresses en zorg ervoor dat u de volgende services ziet:
- <pijplijnnaam-externe-service>
- <pijplijnnaamservice>
Klik op de vermelding voor <de pijplijnnaam-externe> service en noteer het IP-adres en de poort in de kolom Eindpunten . Dit is het externe IP-adres en de poort waarnaar uw clients gegevens verzenden. Zie Het eindpunt voor inkomend verkeer ophalen voor het ophalen van dit adres van de client.
Heartbeat verifiëren
Elke pijplijn die in uw pijplijnexemplaren is geconfigureerd, verzendt elke minuut een heartbeatrecord naar de Heartbeat
tabel in uw Log Analytics-werkruimte. De inhoud van de OSMajorVersion
kolom moet overeenkomen met de naam van uw pijplijnexemplaren. Als het pijplijnexemplaren meerdere werkruimten bevat, wordt de eerste geconfigureerde werkruimte gebruikt.
Haal de heartbeatrecords op met behulp van een logboekquery, zoals in het volgende voorbeeld:
Clientconfiguratie
Zodra de edge-pijplijnextensie en het exemplaar zijn geïnstalleerd, moet u uw clients configureren om gegevens naar de pijplijn te verzenden.
Eindpunt voor inkomend verkeer ophalen
Voor elke client is het externe IP-adres van de Azure Monitor-automatiseringsservice vereist. Gebruik de volgende opdracht om het openbare IP-adres op te halen:
kubectl get services -n <namespace where azure monitor pipeline was installed>
- Als de toepassing die logboeken produceert extern is voor het cluster, kopieert u de waarde van de servicepijplijnnaam-service ><of <pijplijnnaam-extern-service> met het type load balancer.
- Als de toepassing zich op een pod in het cluster bevindt, kopieert u de cluster-IP-waarde .
Notitie
Als het veld extern ip is ingesteld op In behandeling, moet u handmatig een extern IP-adres voor dit toegangsbeheerobject configureren op basis van de clusterconfiguratie.
Klant | Beschrijving |
---|---|
Syslog | Werk Syslog-clients bij om gegevens te verzenden naar het automatiseringseindpunt en de poort van uw Syslog-gegevensstroom. |
OTLP | De Azure Monitor Edge-automatisering maakt een otlp-eindpunt op basis van gRPC beschikbaar op poort 4317. Het configureren van uw instrumentatie voor het verzenden naar dit OTLP-eindpunt is afhankelijk van de instrumentatiebibliotheek zelf. Zie de documentatie voor OTLP-eindpunt of Collector voor OpenTelemetry. De omgevingsvariabelemethode wordt beschreven bij OTLP Exporter Configuration. |
Gegevens controleren
De laatste stap is om te controleren of de gegevens worden ontvangen in de Log Analytics-werkruimte. U kunt deze verificatie uitvoeren door een query uit te voeren in de Log Analytics-werkruimte om gegevens uit de tabel op te halen.