Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
OpenTelemetry Collezionista Contrib
Puoi usare OpenTelemetry Collector Contrib per iniziare. OpenTelemetry CloudWatch
Prerequisito
Assicurati che Transaction Search sia abilitato in. CloudWatch Per ulteriori informazioni, consulta Transaction Search.
Scarica OpenTelemetry Collector Contrib
Scarica l'ultima versione della distribuzione OpenTelemetry Collector Contrib.
Installa Collector Contrib OpenTelemetry
Installa OpenTelemetry Collector Contrib su qualsiasi sistema operativo e piattaforma. Per ulteriori informazioni, consulta Install the Collector.
Configura AWS le credenziali sui tuoi host Amazon EC2 o locali
Puoi configurare AWS le credenziali sui tuoi host Amazon EC2 o locali.
- Setup IAM permissions for Amazon EC2
-
Segui la procedura seguente per collegare la policy CloudWatchAgentServerPolicy IAM al ruolo IAM della tua EC2 istanza Amazon.
Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
Scegli Ruoli e trova e seleziona il ruolo utilizzato dalla tua EC2 istanza Amazon.
Nella scheda Autorizzazioni, scegli Aggiungi autorizzazioni, Collega policy.
Utilizzando la casella di ricerca, cerca la policy CloudWatchAgentServerPolicy.
Seleziona la policy CloudWatchAgentServerPolicy, quindi scegli Aggiungi autorizzazioni.
- Setup IAM permissions for on-premise hosts
-
Puoi creare un utente IAM che può essere utilizzato per fornire le autorizzazioni ai tuoi host on-premises.
Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
Scegli Utenti, quindi seleziona Crea utente.
In Dettagli utente, per Nome utente, inserisci un nome per il nuovo utente IAM. Questo è il nome di accesso AWS che verrà utilizzato per autenticare il tuo host.
Scegli Next (Successivo).
Nella pagina Imposta autorizzazioni, nel campo Opzioni delle autorizzazioni, scegli Collega direttamente le policy.
Dall'elenco delle politiche di autorizzazione, seleziona la CloudWatchAgentServerPolicypolitica da aggiungere al tuo utente.
Scegli Next (Successivo).
Nella pagina Rivedi e crea, assicurati di essere soddisfatto del nome utente e che la CloudWatchAgentServerPolicypolitica si trovi nel riepilogo delle autorizzazioni.
Selezionare Create user (Crea utente).
Crea e recupera la chiave di AWS accesso e la chiave segreta: nel riquadro di navigazione della console IAM, scegli Utenti, quindi seleziona il nome utente dell'utente creato nel passaggio precedente.
Nella pagina dell'utente, scegli la scheda Credenziali di sicurezza.
Nella sezione Chiavi di accesso, scegli Crea chiave di accesso.
Per Crea chiave di accesso (passaggio 1), scegli Interfaccia a riga di comando (CLI).
Per Crea chiave di accesso (passaggio 2), inserisci facoltativamente un tag e scegli Avanti.
Per Crea chiave di accesso (passaggio 3), seleziona Scarica il file .csv per salvare un file .csv con la chiave di accesso e la chiave di accesso segreta del tuo utente IAM. Queste informazioni serviranno per i passaggi successivi.
Seleziona Fatto.
Configura AWS le tue credenziali nel tuo host locale inserendo il seguente comando. Sostituisci ACCESS_KEY_ID e SECRET_ACCESS_ID con la chiave di accesso e la chiave di accesso segreta appena generate dal file .csv scaricato nel passaggio precedente.
$ aws configure
AWS Access Key ID [None]: ACCESS_KEY_ID
AWS Secret Access Key [None]: SECRET_ACCESS_ID
Default region name [None]: MY_REGION
Default output format [None]: json
Configura AWS le credenziali per i tuoi cluster Amazon EKS o Kubernetes
Per configurare AWS le credenziali per i cluster Amazon EKS o Kubernetes a cui inviare telemetria, segui la procedura seguente. CloudWatch
- Setup IAM permissions for Amazon EKS
-
Crea un provider di identità OIDC IAM per il cluster con il comando seguente.
eksctl utils associate-iam-oidc-provider --cluster ${CLUSTER_NAME} --region ${REGION} --approve
Assegna i ruoli IAM all'account di servizio Kubernetes per Collector utilizzando il seguente comando. OTel
eksctl create iamserviceaccount \
--name ${COLLECTOR_SERVICE_ACCOUNT}\
--namespace ${NAMESPACE} \
--cluster ${CLUSTER_NAME} \
--region ${REGION} \
--attach-policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy \
--approve \
--override-existing-serviceaccounts
- Setup IAM permissions for Kubernetes
-
Configura AWS le tue credenziali nel tuo host locale inserendo il seguente comando. Sostituisci ACCESS_KEY_ID e SECRET_ACCESS_ID con la chiave di accesso appena generata e la chiave di accesso segreta dal file.csv scaricato nel passaggio precedente. Per impostazione predefinita, il file delle credenziali viene salvato in/. home/user/.aws/credentials .
aws configure
AWS Access Key ID [None]: ACCESS_KEY_ID
AWS Secret Access Key [None]: SECRET_ACCESS_ID
Default region name [None]: MY_REGION
Default output format [None]: json
Modifica la risorsa OpenTelemetry Collector per aggiungere il segreto delle credenziali AWS appena creato utilizzando il comando: kubectl edit OpenTelemetryCollector otel_collector
Utilizzando l'editor di file, aggiungi AWS le credenziali nel OpenTelemetryCollector contenitore aggiungendo la seguente configurazione all'inizio della distribuzione. Sostituisci il percorso /home/user/.aws/credentials con la posizione del file delle AWS credenziali locali.
spec:
volumeMounts:
- mountPath: /rootfs
volumeMounts:
- name: aws-credentials
mountPath: /root/.aws
readOnly: true
volumes:
- hostPath:
path: /home/user/.aws/credentials
name: aws-credentials
Copia e incolla il contenuto seguente per configurare il raccoglitore per l'invio di log e tracce agli endpoint OTLP.
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
exporters:
otlphttp/logs:
compression: gzip
logs_endpoint: logs_otlp_endpoint
headers:
x-aws-log-group: ency_log_group
x-aws-log-stream: default
auth:
authenticator: sigv4auth/logs
otlphttp/traces:
compression: gzip
traces_endpoint: traces_otlp_endpoint
auth:
authenticator: sigv4auth/traces
extensions:
sigv4auth/logs:
region: "region"
service: "logs"
sigv4auth/traces:
region: "region"
service: "xray"
service:
telemetry:
extensions: [sigv4auth/logs, sigv4auth/traces]
pipelines:
logs:
receivers: [otlp]
exporters: [otlphttp/logs]
traces:
receivers: [otlp]
exporters: [otlphttp/traces]
Di seguito è riportato un esempio di invio di log e tracce utilizzando da sigv4 a us-east-1.
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
exporters:
otlphttp/logs:
compression: gzip
logs_endpoint: https://logs.us-east-1.amazonaws.com/v1/logs
headers:
x-aws-log-group: MyApplicationLogs
x-aws-log-stream: default
auth:
authenticator: sigv4auth/logs
otlphttp/traces:
compression: gzip
traces_endpoint: https://xray.us-east-1.amazonaws.com/v1/traces
auth:
authenticator: sigv4auth/traces
extensions:
sigv4auth/logs:
region: "us-east-1"
service: "logs"
sigv4auth/traces:
region: "us-east-1"
service: "xray"
service:
telemetry:
extensions: [sigv4auth/logs, sigv4auth/traces]
pipelines:
logs:
receivers: [otlp]
exporters: [otlphttp/logs]
traces:
receivers: [otlp]
exporters: [otlphttp/traces]