

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Configuración de Amazon Managed Service para Prometheus para obtener datos de alta disponibilidad
<a name="AMP-ingest-high-availability"></a>

Al enviar datos a Amazon Managed Service para Prometheus, estos se replican de forma automática en todas las zonas de disponibilidad de AWS de la región y se envían desde un clúster de hosts que proporcionan escalabilidad, disponibilidad y seguridad. Es posible que desee agregar dispositivos de seguridad de alta disponibilidad adicionales, en función de su configuración concreta. Existen dos formas habituales de agregar dispositivos de seguridad de alta disponibilidad a la configuración:
+ Si tiene varios contenedores o instancias con los mismos datos, puede enviarlos a Amazon Managed Service para Prometheus y hacer que los datos se desdupliquen de forma automática. Esto ayuda a garantizar que sus datos se envíen al espacio de trabajo de Amazon Managed Service para Prometheus.

  Para obtener más información sobre la desduplicación de datos de alta disponibilidad, consulte [Desduplicación de métricas de alta disponibilidad enviadas a Amazon Managed Service para Prometheus](AMP-ingest-dedupe.md).
+ Si quiere asegurarse de tener acceso a los datos, incluso cuando la región de AWS no esté disponible, puede enviar las métricas a un segundo espacio de trabajo, en otra región.

  Para obtener más información acerca del envío de datos de métricas a varios espacios de trabajo, consulte [Uso de espacios de trabajo entre regiones para agregar alta disponibilidad en Amazon Managed Service para Prometheus](AMP-send-to-multiple-workspaces.md).

**Topics**
+ [Desduplicación de métricas de alta disponibilidad enviadas a Amazon Managed Service para Prometheus](AMP-ingest-dedupe.md)
+ [Envío de datos de alta disponibilidad a Amazon Managed Service para Prometheus con Prometheus](Send-high-availability-data.md)
+ [Configuración de datos de alta disponibilidad para Amazon Managed Service para Prometheus con el gráfico de Helm del operador de Prometheus](Send-high-availability-data-operator.md)
+ [Envíe datos de alta disponibilidad a Amazon Managed Service para AWS Prometheus con Distro para OpenTelemetry](Send-high-availability-data-ADOT.md)
+ [Envío de datos de alta disponibilidad a Amazon Managed Service para Prometheus con el gráfico de Helm de la comunidad de Prometheus](Send-high-availability-prom-community.md)
+ [Respuestas a preguntas habituales sobre la configuración de alta disponibilidad en Amazon Managed Service para Prometheus](HA_FAQ.md)
+ [Uso de espacios de trabajo entre regiones para agregar alta disponibilidad en Amazon Managed Service para Prometheus](AMP-send-to-multiple-workspaces.md)

# Desduplicación de métricas de alta disponibilidad enviadas a Amazon Managed Service para Prometheus
<a name="AMP-ingest-dedupe"></a>

Puede enviar datos desde varios *agentes* de Prometheus (instancias de Prometheus que se ejecutan en modo Agente) al espacio de trabajo de Amazon Managed Service para Prometheus. Si algunas de estas instancias registran y envían las mismas métricas, los datos tendrán una disponibilidad mayor (incluso si uno de los agentes deja de enviar datos, el espacio de trabajo de Amazon Managed Service para Prometheus seguirá recibiendo los datos de otra instancia). Sin embargo, lo que quiere es que el espacio de trabajo de Amazon Managed Service para Prometheus desduplique automáticamente las métricas para no verlas varias veces y también para que no se le cobre por la ingesta y el almacenamiento de datos varias veces.

Para que Amazon Managed Service para Prometheus desduplique automáticamente los datos de varios agentes de Prometheus, debe asignar al conjunto de agentes que envían los datos duplicados un *nombre de clúster* único y a cada una de las instancias un *nombre de réplica*. El nombre del clúster identifica las instancias que comparten datos y el nombre de la réplica permite a Amazon Managed Service para Prometheus identificar el origen de cada métrica. Las métricas almacenadas finales incluyen la etiqueta del clúster, pero no la réplica, por lo que las métricas parecen provenir de un solo origen.

**nota**  
Algunas versiones de Kubernetes (1.28 y 1.29) pueden emitir una métrica propia con una etiqueta `cluster`. Esto puede provocar problemas con la deduplicación de Amazon Managed Service para Prometheus. Para obtener más información, consulte [Preguntas frecuentes sobre alta disponibilidad](HA_FAQ.md#HA_FAQ_cluster-label).

En los temas siguientes se muestra cómo enviar datos e incluir las etiquetas `cluster` y `__replica__` para que Amazon Managed Service para Prometheus deduplique los datos de forma automática.

**importante**  
Si no configura la desduplicación, se le cobrará por todas las muestras de datos que se envíen a Amazon Managed Service para Prometheus. Estas muestras de datos incluyen muestras duplicadas.

# Envío de datos de alta disponibilidad a Amazon Managed Service para Prometheus con Prometheus
<a name="Send-high-availability-data"></a>

Para configurar una configuración de alta disponibilidad con Prometheus, debe aplicar etiquetas externas en todas las instancias de un grupo de alta disponibilidad para que Amazon Managed Service para Prometheus pueda identificarlas. Utilice la etiqueta `cluster` para identificar un agente de instancias de Prometheus como parte de un grupo de alta disponibilidad. Utilice la etiqueta `__replica__` para identificar cada réplica del grupo por separado. Debe aplicar ambas etiquetas, `__replica__` y `cluster`, para que la desduplicación funcione.

**nota**  
La etiqueta `__replica__` está formateada con dos símbolos de subrayado antes y después de la palabra `replica`.

**Ejemplo: fragmentos de código**

En los siguientes fragmentos de código, la etiqueta `cluster` identifica el agente de instancias de Prometheus `prom-team1` y la etiqueta `_replica_` identifica las réplicas `replica1` y `replica2`.

```
cluster: prom-team1
__replica__: replica1
```

```
cluster: prom-team1
__replica__: replica2
```

Dado que Amazon Managed Service para Prometheus almacena muestras de datos de réplicas de alta disponibilidad con estas etiquetas, la etiqueta `replica` se elimina al aceptarse las muestras. Esto significa que solo dispondrá de una asignación de series 1:1 para la serie actual, en lugar de una serie por réplica. La etiqueta `cluster` se conserva.

**nota**  
Algunas versiones de Kubernetes (1.28 y 1.29) pueden emitir una métrica propia con una etiqueta `cluster`. Esto puede provocar problemas con la deduplicación de Amazon Managed Service para Prometheus. Para obtener más información, consulte [Preguntas frecuentes sobre alta disponibilidad](HA_FAQ.md#HA_FAQ_cluster-label).

# Configuración de datos de alta disponibilidad para Amazon Managed Service para Prometheus con el gráfico de Helm del operador de Prometheus
<a name="Send-high-availability-data-operator"></a>

Para definir una configuración de alta disponibilidad con el operador de Prometheus en Helm, debe aplicar etiquetas externas en todas las instancias de un grupo de alta disponibilidad para que Amazon Managed Service para Prometheus pueda identificarlas. También debe establecer los atributos `replicaExternalLabelName` y `externalLabels` en el gráfico de Helm del operador de Prometheus.

**Ejemplo: encabezado de YAML**

En el siguiente encabezado de YAML, `cluster` se agrega a `externalLabel` para identificar un agente de instancias de Prometheus como parte de un grupo de alta disponibilidad y `replicaExternalLabels` identifica cada réplica del grupo.

```
replicaExternalLabelName: __replica__
externalLabels:
cluster: prom-dev
```

**nota**  
Algunas versiones de Kubernetes (1.28 y 1.29) pueden emitir una métrica propia con una etiqueta `cluster`. Esto puede provocar problemas con la deduplicación de Amazon Managed Service para Prometheus. Para obtener más información, consulte [Preguntas frecuentes sobre alta disponibilidad](HA_FAQ.md#HA_FAQ_cluster-label).

# Envíe datos de alta disponibilidad a Amazon Managed Service para AWS Prometheus con Distro para OpenTelemetry
<a name="Send-high-availability-data-ADOT"></a>

AWS Distro for OpenTelemetry (ADOT) es una distribución del proyecto segura y lista para la producción. OpenTelemetry ADOT le proporciona el código fuente APIs, las bibliotecas y los agentes para que pueda recopilar rastreos y métricas distribuidos para la supervisión de las aplicaciones. Para obtener información sobre ADOT, consulte [Acerca de AWS Distro for](https://aws-otel.github.io/about) Open Telemetry.

Para configurar ADOT con una configuración de alta disponibilidad, debe configurar una imagen de contenedor recopilador de ADOT y aplicar las etiquetas externas `cluster` y `__replica__` al exportador de escritura remota AWS Prometheus. Este exportador envía las métricas raspadas al espacio de trabajo de Amazon Managed Service para Prometheus a través del punto de conexión `remote_write`. Al colocar estas etiquetas en el exportador de escritura remota, se evita que se conserven las métricas duplicadas mientras se ejecutan las réplicas redundantes. Para obtener más información sobre el exportador de escritura remota de AWS Prometheus, consulta Cómo [empezar con el exportador de escritura remota de Prometheus para Amazon Managed Service for Prometheus](https://aws-otel.github.io/docs/getting-started/prometheus-remote-write-exporter).

**nota**  
Algunas versiones de Kubernetes (1.28 y 1.29) pueden emitir una métrica propia con una etiqueta `cluster`. Esto puede provocar problemas con la deduplicación de Amazon Managed Service para Prometheus. Para obtener más información, consulte [Preguntas frecuentes sobre alta disponibilidad](HA_FAQ.md#HA_FAQ_cluster-label).

# Envío de datos de alta disponibilidad a Amazon Managed Service para Prometheus con el gráfico de Helm de la comunidad de Prometheus
<a name="Send-high-availability-prom-community"></a>

Para configurar una configuración de alta disponibilidad con el gráfico de Helm de la comunidad de Prometheus, debe aplicar etiquetas externas a todas las instancias de un grupo de alta disponibilidad para que Amazon Managed Service para Prometheus pueda identificarlas. Este es un ejemplo de cómo pueden agregarse las `external_labels` a una sola instancia de Prometheus desde el gráfico de Helm de la comunidad de Prometheus.

```
server:
global:
  external_labels:
      cluster: monitoring-cluster
      __replica__: replica-1
```

**nota**  
Si desea varias réplicas, debe implementar el gráfico varias veces con valores de réplica diferentes, ya que el gráfico de Helm de la comunidad de Prometheus no le permite establecer de forma dinámica el valor de la réplica al aumentar el número de réplicas directamente desde el grupo de controladores. Si prefiere que la etiqueta `replica` se configure automáticamente, utilice el gráfico de Helm del operador de Prometheus.

**nota**  
Algunas versiones de Kubernetes (1.28 y 1.29) pueden emitir una métrica propia con una etiqueta `cluster`. Esto puede provocar problemas con la deduplicación de Amazon Managed Service para Prometheus. Para obtener más información, consulte [Preguntas frecuentes sobre alta disponibilidad](HA_FAQ.md#HA_FAQ_cluster-label).

# Respuestas a preguntas habituales sobre la configuración de alta disponibilidad en Amazon Managed Service para Prometheus
<a name="HA_FAQ"></a>

## ¿Debo incluir el valor *\$1\$1replica\$1\$1* en otra etiqueta para hacer un seguimiento de los puntos de muestra?
<a name="HA_FAQ_replica-label"></a>

 En un entorno de alta disponibilidad, Amazon Managed Service para Prometheus garantiza que las muestras de datos no se dupliquen mediante la elección de un líder en el clúster de instancias de Prometheus. Si la réplica líder deja de enviar muestras de datos durante 30 segundos, Amazon Managed Service para Prometheus convierte de forma automática otra instancia de Prometheus en réplica líder e ingiere los datos del nuevo líder, incluidos los datos omitidos. Por lo tanto, la respuesta es no, no se recomienda.  Si lo hace, puede provocar problemas como los siguientes: 
+  Al consultar un `count` en **PromQL**, es posible que se devuelva un valor superior al esperado durante el periodo de elección de un nuevo líder.
+  El número de `active series` aumenta durante el periodo de elección de un nuevo líder y alcanza el `active series limits`. Para obtener más información, consulte [Cuotas de AMP](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP_quotas.html).

## Parece que Kubernetes tiene su propia etiqueta *cluster* y no deduplica mis métricas. ¿Cómo puedo solucionarlo?
<a name="HA_FAQ_cluster-label"></a>

En Kubernetes 1.28 se incorporó la nueva métrica `apiserver_storage_size_bytes` con la etiqueta `cluster`. Esto puede provocar problemas con la deduplicación de Amazon Managed Service para Prometheus, que depende de la etiqueta `cluster`. En Kubernetes 1.3, se ha cambiado el nombre de la etiqueta por `storage-cluster_id` (también se ha cambiado en las revisiones posteriores de 1.28 y 1.29). Si el clúster emite esta métrica con la etiqueta `cluster`, Amazon Managed Service para Prometheus no puede deduplicar la serie de tiempo asociada. Le recomendamos que actualice el clúster de Kubernetes a la última versión revisada para evitar este problema. Como alternativa, puede cambiar a la etiqueta `cluster` en la métrica `apiserver_storage_size_bytes` antes de la ingesta en Amazon Managed Service para Prometheus.

**nota**  
*Para obtener más información sobre el cambio a Kubernetes, consulte [Cambiar el nombre](https://github.com/kubernetes/kubernetes/pull/124283) del clúster de etiquetas a storage\$1cluster\$1id para la métrica apiserver\$1storage\$1size\$1bytes del proyecto Kubernetes. GitHub*

# Uso de espacios de trabajo entre regiones para agregar alta disponibilidad en Amazon Managed Service para Prometheus
<a name="AMP-send-to-multiple-workspaces"></a>

Para añadir a tus datos la disponibilidad entre regiones, puedes enviar métricas a AWS varios espacios de trabajo de todas las regiones. Prometheus admite tanto escritores múltiples como escritura entre regiones.

El siguiente ejemplo muestra cómo configurar un servidor de Prometheus que se ejecuta en modo Agente para enviar métricas a dos espacios de trabajo en distintas regiones con Helm.

```
extensions:
      sigv4auth:
        service: "aps"
     
    receivers:
      prometheus:
        config:
          scrape_configs:
            - job_name: 'kubernetes-kubelet'
              scheme: https
              tls_config:
                ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
                insecure_skip_verify: true
              bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
              kubernetes_sd_configs:
              - role: node
              relabel_configs:
              - action: labelmap
                regex: __meta_kubernetes_node_label_(.+)
              - target_label: __address__
                replacement: kubernetes.default.svc.cluster.local:443
              - source_labels: [__meta_kubernetes_node_name]
                regex: (.+)
                target_label: __metrics_path__
                replacement: /api/v1/nodes/$${1}/proxy/metrics
     
    exporters:
      prometheusremotewrite/one:
        endpoint: "https://aps-workspaces.workspace_1_region.amazonaws.com/workspaces/ws-workspace_1_id/api/v1/remote_write"
        auth:
          authenticator: sigv4auth
      prometheusremotewrite/two:
        endpoint: "https://aps-workspaces.workspace_2_region.amazonaws.com/workspaces/ws-workspace_2_id/api/v1/remote_write"
        auth:
          authenticator: sigv4auth
     
    service:
      extensions: [sigv4auth]
      pipelines:
        metrics/one:
          receivers: [prometheus]
          exporters: [prometheusremotewrite/one]
        metrics/two:
          receivers: [prometheus]
          exporters: [prometheusremotewrite/two]
```