Přidání exportérů a kanálů do nasazení směrovače telemetrie
Poznámka:
- Směrovač telemetrie je ve verzi Public Preview a měl by být nasazen pouze pro účely testování.
- Přestože je směrovač telemetrie ve verzi Public Preview, doporučujeme, aby budoucí verze Preview mohly zahrnovat změny specifikací CRD, příkazů rozhraní příkazového řádku nebo zpráv směrovače telemetrie.
- Aktuální verze Preview nepodporuje místní upgrady kontroleru dat nasazeného s povoleným směrovačem telemetrie Arc. Pokud chcete nainstalovat nebo upgradovat kontroler dat v budoucí verzi, budete muset správce dat odinstalovat a pak znovu nainstalovat.
Co jsou exportéry a kanály?
Exportéry a kanály jsou dvě z hlavních součástí směrovače telemetrie. Exportéři popisují, jak odesílat data do cílového systému, jako je Kafka. Při vytváření vývozce ho přidružíte ke kanálu, abyste tento typ telemetrických dat směrovali do tohoto cíle. Pro každý kanál můžete mít více exportérů.
Tento článek obsahuje příklady, jak můžete nastavit vlastní exportéry a kanály pro směrování telemetrických dat monitorování do vašeho vlastního podporovaného vývozce.
Podporované vývozce
Vývozce | Podporované typy kanálů |
---|---|
Kafka | protokoly, metriky |
Elasticsearch | Protokoly |
Konfigurace
Všechny konfigurace se zadají prostřednictvím specifikace vlastních prostředků směrovače telemetrie a podporují konfiguraci exportérů a kanálů.
Vývozci
Ve verzi Public Preview jsou exportéři částečně konfigurovatelné a podporují následující řešení:
Vývozce | Podporované typy telemetrie |
---|---|
Kafka | protokoly, metriky |
Elasticsearch | Protokoly |
Během verze Public Preview se v současné době dají konfigurovat následující vlastnosti:
Obecné nastavení vývozce
Nastavení | Popis |
---|---|
certificateName | Klientský certifikát pro export do řešení monitorování |
caCertificateName | Certifikační autorita clusteru nebo certifikát poskytnutý zákazníkem pro vývozce |
Nastavení vývozce Kafka
Nastavení | Popis |
---|---|
topic | Název tématu pro export |
makléři | Seznam zprostředkovatelů pro připojení |
encoding | Kódování telemetrie: otlp_json nebo otlp_proto |
Nastavení exportéru Elasticsearch
Nastavení | Popis |
---|---|
index | Toto nastavení může být název indexu nebo názvu datového streamu pro publikování událostí. |
endpoint | Koncový bod Elasticsearch pro export do |
Pipelines
Směrovač telemetrie podporuje protokoly a kanály metrik. Tyto kanály jsou zpřístupněny ve specifikaci vlastních prostředků směrovače telemetrie Arc a jsou k dispozici pro úpravy.
Z směrovače telemetrie nemůžete odebrat poslední kanál. Pokud použijete soubor yaml, který odebere poslední kanál, služba aktualizaci odmítne.
Nastavení kanálu
Nastavení | Popis |
---|---|
Protokoly | Může deklarovat pouze nové kanály protokolů. |
metriky | Může deklarovat pouze nové kanály metrik. |
Vývozci | Seznam vývozců. Může být více stejného typu. |
Přihlašovací údaje
Nastavení přihlašovacích údajů
Nastavení | Popis |
---|---|
certificateName | Název osvědčení musí odpovídat názvu osvědčení uvedenému v prohlášení vývozce. |
secretName | Název tajného kódu poskytnutého prostřednictvím Kubernetes |
secretNamespace | Obor názvů s tajným kódem poskytovaným prostřednictvím Kubernetes |
Příklad specifikace TelemetryRouter
apiVersion: arcdata.microsoft.com/v1beta4
kind: TelemetryRouter
metadata:
name: arc-telemetry-router
namespace: <namespace>
spec:
credentials:
certificates:
- certificateName: arcdata-elasticsearch-exporter
- certificateName: cluster-ca-certificate
exporters:
elasticsearch:
- caCertificateName: cluster-ca-certificate
certificateName: arcdata-elasticsearch-exporter
endpoint: https://logsdb-svc:9200
index: logstash-otel
name: arcdata
pipelines:
logs:
exporters:
- elasticsearch/arcdata
Příklad 1: Přidání vývozce Kafka pro kanál metrik
Můžete otestovat vytvoření exportéru Kafka pro kanál metrik, který může odesílat data metrik do vaší vlastní instance Kafka. Potřebujete předponu názvu kanálu metrik pomocí kafka/
parametru . Pro každý typ telemetrie můžete mít jednu nepojmenovanou instanci. Například "kafka" je platný název kanálu metrik.
- Poskytnutí certifikátů klienta a certifikační autority
credentials
v části prostřednictvím tajných kódů Kubernetes - Deklarujte nový exportér v
exporters
části s potřebnými nastaveními – název, certifikáty, zprostředkovatel a index. Nezapomeňte uvést nového vývozce podle příslušného typu ("kakfa:") - Uveďte vývozce v
pipelines
části specifikace jako kanál metrik. Název vývozce musí být předponou typu vývozce. Napříkladkafka/myMetrics
V tomto příkladu jsme přidali kanál metrik s názvem "metrics" s jedním vývozcem (kafka/myMetrics
), který směruje do vaší instance Kafka.
arc-telemetry-router.yaml
apiVersion: arcdata.microsoft.com/v1beta4
kind: TelemetryRouter
metadata:
name: arc-telemetry-router
namespace: <namespace>
spec:
credentials:
certificates:
# Step 1. Provide your client and ca certificates through Kubernetes secrets
# where the name of the secret and its namespace are specified.
- certificateName: <kafka-client-certificate-name>
secretName: <name_of_secret>
secretNamespace: <namespace_with_secret>
- certificateName: <ca-certificate-name>
secretName: <name_of_secret>
secretNamespace: <namespace_with_secret>
exporters:
kafka:
# Step 2. Declare your Kafka exporter with the needed settings
# (name, certificates, endpoint, and index to export to)
- name: myMetrics
# Provide your client and CA certificate names
# for the exporter as well as any additional settings needed
caCertificateName: <ca-certificate-name>
certificateName: <kafka-client-certificate-name>
broker: <kafka_broker>
# Index can be the name of an index or datastream name to publish events to
index: <kafka_index>
pipelines:
metrics:
exporters:
# Step 3. Assign your kafka exporter to the list
# of exporters for the metrics pipeline.
- kafka/myMetrics
kubectl apply -f arc-telemetry-router.yaml -n <namespace>
Přidali jste kanál metrik, který exportuje do vaší instance Kafka. Po použití změn v souboru yaml přejde vlastní prostředek TelemetryRouter do stavu aktualizace a služba kolektoru se restartuje.
Příklad 2: Přidání exportéru Elasticsearch pro kanál protokolů
Nasazení směrovače telemetrie může exportovat do více cílů konfigurací dalších exportérů. V daném nasazení směrovače telemetrie se podporuje více typů exportérů. Tento příklad ukazuje přidání vývozce Elasticsearch jako druhého vývozce. Tento druhý exportér aktivujeme tak, že ho přidáme do kanálu protokolů.
- Poskytnutí certifikátů klienta a certifikační autority
credentials
v části prostřednictvím tajných kódů Kubernetes - Deklarujte nový exportér pod
exporters
částí s potřebnými nastaveními – název, certifikáty, koncový bod a index. Nezapomeňte uvést nového vývozce podle příslušného typu ("Elasticsearch:"). - Uveďte vývozce v
pipelines
části specifikace jako kanál protokolů. Název vývozce musí být předponou typu vývozce. Napříkladelasticsearch/myLogs
Tento příklad vychází z předchozího příkladu přidáním kanálu protokolů pro vývozce Elasticsearch (elasticsearch/myLogs
). Na konci příkladu máme dva vývozce s každým vývozcem přidaným do jiného kanálu.
arc-telemetry-router.yaml
apiVersion: arcdata.microsoft.com/v1beta4
kind: TelemetryRouter
metadata:
name: arc-telemetry-router
namespace: <namespace>
spec:
credentials:
certificates:
# Step 1. Provide your client and ca certificates through Kubernetes secrets
# where the name of the secret and its namespace are specified.
- certificateName: <elasticsearch-client-certificate-name>
secretName: <name_of_secret>
secretNamespace: <namespace_with_secret>
- certificateName: <kafka-client-certificate-name>
secretName: <name_of_secret>
secretNamespace: <namespace_with_secret>
- certificateName: <ca-certificate-name>
secretName: <name_of_secret>
secretNamespace: <namespace_with_secret>
exporters:
Elasticsearch:
# Step 2. Declare your Elasticsearch exporter with the needed settings
# (certificates, endpoint, and index to export to)
- name: myLogs
# Provide your client and CA certificate names
# for the exporter as well as any additional settings needed
caCertificateName: <ca-certificate-name>
certificateName: <elasticsearch-client-certificate-name>
endpoint: <elasticsearch_endpoint>
# Index can be the name of an index or datastream name to publish events to
index: <elasticsearch_index>
kafka:
- name: myMetrics
caCertificateName: <ca-certificate-name>
certificateName: <kafka-client-certificate-name>
broker: <kafka_broker>
index: <kafka_index>
pipelines:
logs:
exporters:
# Step 3. Add your Elasticsearch exporter to
# the exporters list of a logs pipeline.
- elasticsearch/myLogs
metrics:
exporters:
- kafka/myMetrics
kubectl apply -f arc-telemetry-router.yaml -n <namespace>
Teď máte exportéry Kafka a Elasticsearch přidané do kanálů metrik a protokolů. Po použití změn v souboru yaml přejde vlastní prostředek TelemetryRouter do stavu aktualizace a služba kolektoru se restartuje.