Delen via


De Azure Arc-telemetrierouter implementeren

Notitie

  • De telemetrierouter bevindt zich in openbare preview en moet alleen worden geïmplementeerd voor testdoeleinden.
  • Hoewel de telemetrierouter in openbare preview is, moet u er rekening mee houden dat toekomstige preview-releases wijzigingen kunnen bevatten in CRD-specificaties, CLI-opdrachten en/of telemetrierouterberichten.
  • De huidige preview biedt geen ondersteuning voor in-place upgrades van een gegevenscontroller die is geïmplementeerd met de Arc-telemetrierouter ingeschakeld. Als u een gegevenscontroller in een toekomstige release wilt installeren of upgraden, moet u de gegevenscontroller verwijderen en vervolgens opnieuw installeren.

Wat is de Azure Arc-telemetrierouter?

Met de Azure Arc-telemetrierouter kunt u telemetriegegevens exporteren naar andere bewakingsoplossingen. Voor deze openbare preview ondersteunen we alleen het exporteren van logboekgegevens naar Kafka of Elasticsearch en metrische gegevens naar Kafka.

In dit document wordt aangegeven hoe u de telemetrierouter implementeert en configureert voor gebruik met de ondersteunde exporteurs.

Implementatie

Notitie

De telemetrierouter ondersteunt momenteel alleen indirect verbonden modus.

Een aangepast configuratieprofiel maken

Nadat u uw Kubernetes-cluster hebt ingesteld, moet u een aangepast configuratieprofiel maken. Schakel vervolgens een tijdelijke functievlag in waarmee de telemetrierouter wordt geïmplementeerd tijdens het maken van de gegevenscontroller.

De functievlag inschakelen

Nadat u het aangepaste configuratieprofiel hebt gemaakt, moet u het profiel bewerken om de monitoring eigenschap toe te voegen met de enableOpenTelemetry vlag ingesteld op true. U kunt de functievlag instellen door de volgende az CLI-opdrachten uit te voeren (bewerk indien nodig de parameter --path):

az arcdata dc config add --path ./control.json --json-values ".spec.monitoring={}"
az arcdata dc config add --path ./control.json --json-values ".spec.monitoring.enableOpenTelemetry=true"

Als u wilt bevestigen dat de vlag juist is ingesteld, opent u het bestand control.json en bevestigt u dat het monitoring object is toegevoegd aan het spec object en enableOpenTelemetry is ingesteld op true.

spec:
    monitoring:
        enableOpenTelemetry: true

Deze vereiste functievlag wordt verwijderd in een toekomstige release.

De gegevenscontroller maken

Nadat u het aangepaste configuratieprofiel hebt gemaakt en de functievlag hebt ingesteld, kunt u de gegevenscontroller maken met behulp van de indirecte connectiviteitsmodus. Vervang de --profile-name parameter door een --path parameter die verwijst naar uw aangepaste control.json-bestand (zie aangepaste control.json-bestand gebruiken om een gegevenscontroller met Azure Arc te implementeren)

Implementatie van telemetrierouter controleren

Wanneer de gegevenscontroller wordt gemaakt, wordt er ook een aangepaste TelemetryRouter-resource gemaakt. De implementatie van de gegevenscontroller is gemarkeerd als gereed wanneer beide aangepaste resources zijn geïmplementeerd. Nadat de implementatie van de gegevenscontroller is voltooid, kunt u de volgende opdracht gebruiken om te controleren of de TelemetryRouter bestaat:

kubectl describe telemetryrouter arc-telemetry-router -n <namespace>
apiVersion: arcdata.microsoft.com/v1beta4
  kind: TelemetryRouter
  metadata:
    name: arc-telemetry-router
    namespace: <namespace>
  spec:
    credentials:
    exporters:
    pipelines:

Op het moment van maken worden er geen pijplijnen of exporteurs ingesteld. U kunt uw eigen pijplijnen en exporteurs instellen om metrische gegevens en logboekgegevens te routeren naar uw eigen exemplaren van Kafka en Elasticsearch.

Nadat de TelemetryRouter is geïmplementeerd, moet een exemplaar van Kafka (arc-router-kafka) en één exemplaar van TelemetryCollector (collector-inbound) worden geïmplementeerd en in een gereede status. Deze resources worden door het systeem beheerd en worden niet ondersteund. De volgende pods worden als gevolg hiervan geïmplementeerd:

  • Een inkomende collector-pod - arctc-collector-inbound-0
  • Een kakfa-brokerpod - arck-arc-router-kafka-broker-0
  • Een kakfa-controllerpod - arck-arc-router-kafka-controller-0

Notitie

Er wordt pas een uitgaande collectorpod gemaakt als er ten minste één pijplijn is toegevoegd aan de telemetrierouter.

Nadat u de eerste pijplijn hebt gemaakt, worden er een extra TelemetryCollector-resource (collector-outbound) en pod arctc-collector-outbound-0 geïmplementeerd.

kubectl get pods -n <namespace>

NAME                                 READY   STATUS      RESTARTS   AGE
arc-bootstrapper-job-4z2vr           0/1     Completed   0          15h
arc-webhook-job-facc4-z7dd7          0/1     Completed   0          15h
arck-arc-router-kafka-broker-0       2/2     Running     0          15h
arck-arc-router-kafka-controller-0   2/2     Running     0          15h
arctc-collector-inbound-0            2/2     Running     0          15h
bootstrapper-8d5bff6f7-7w88j         1/1     Running     0          15h
control-vpfr9                        2/2     Running     0          15h
controldb-0                          2/2     Running     0          15h
logsdb-0                             3/3     Running     0          15h
logsui-fwrh9                         3/3     Running     0          15h
metricsdb-0                          2/2     Running     0          15h
metricsdc-bc4df                      2/2     Running     0          15h
metricsdc-fm7jh                      2/2     Running     0          15h
metricsui-qqgbv                      2/2     Running     0          15h