

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.

# Habilite los registros de comprobación de estado de su Application Load Balancer
<a name="enable-health-check-logging"></a>

Al habilitar los registros de comprobación de estado para el balanceador de cargas, debes especificar el nombre del depósito de S3 en el que el balanceador de cargas almacenará los registros. El bucket debe tener una política de bucket que conceda permiso a Elastic Load Balancing para escribir en el bucket.

**Topics**
+ [

## Paso 1: Crear un bucket de S3
](#health-check-log-create-bucket)
+ [

## Paso 2: Adjuntar una política al bucket de S3
](#attach-bucket-policy-health-check)
+ [

## Paso 3: Configurar los registros de control de estado
](#enable-health-check-logs)
+ [

## Paso 4: verificar los permisos del bucket
](#verify-bucket-permissions-health-check)
+ [

## Resolución de problemas
](#bucket-permissions-troubleshooting-health-check)

## Paso 1: Crear un bucket de S3
<a name="health-check-log-create-bucket"></a>

Al habilitar los registros de comprobación de estado, debe especificar un depósito de S3 para los registros de comprobación de estado. Puede usar un depósito existente o crear uno específico para los registros de comprobación de estado. El bucket debe cumplir los siguientes requisitos.

**Requisitos**
+ El bucket debe estar ubicado en la misma región que el equilibrador de carga. El bucket y el equilibrador de carga pueden ser propiedad de diferentes cuentas.
+ La única opción de cifrado del lado del servidor que se admite son claves administradas por Amazon S3 (SSE-S3). Para obtener más información, consulte [Claves de cifrado administradas por Amazon S3 (SSE-S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html).

**Para crear un bucket de S3 con la consola de Amazon S3**

1. Abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Elija **Crear bucket**.

1. En la página **Crear un bucket**, realice las siguientes acciones:

   1. En **Nombre del bucket**, escriba un nombre para el bucket. Este nombre debe ser único entre todos los nombres de buckets de Amazon S3. En algunas regiones, es posible que haya restricciones adicionales para los nombres de los buckets. Para obtener más información, consulte [Restricciones y límites de buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/BucketRestrictions.html) en la *Guía del usuario de Amazon S3*.

   1. En **Región AWS **, seleccione la región donde ha creado el equilibrador de carga.

   1. Para el **cifrado predeterminado**, elija las **claves administradas por Amazon S3 (SSE-S3)**.

   1. Elija **Crear bucket**.

## Paso 2: Adjuntar una política al bucket de S3
<a name="attach-bucket-policy-health-check"></a>

El bucket de S3 debe tener una política de bucket que conceda permiso a Elastic Load Balancing para escribir los registros de comprobación de estado en el bucket. Las políticas de bucket son colecciones de instrucciones JSON escritas en el lenguaje de la política de acceso para definir los permisos de acceso al bucket. Cada instrucción incluye información sobre un único permiso y contiene una serie de elementos.

Si utilizas un bucket existente que ya tiene una política adjunta, puedes añadir la declaración de los registros de comprobación de estado de Elastic Load Balancing a la política. Si lo hace, le recomendamos que evalúe el conjunto de permisos resultante para asegurarse de que son adecuados para los usuarios que necesitan acceder al depósito de registros de comprobación de estado.

### Política de bucket
<a name="bucket-policy-logdelivery-health-check"></a>

Esta política otorga permisos al servicio de entrega de registros especificado.

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "logdelivery.elasticloadbalancing.amazonaws.com"
      },
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*"
    }
  ]
}
```

En `Resource`, introduzca el ARN de la ubicación de los registros de acceso con el formato que se muestra en la política de ejemplo. Incluya siempre el ID de la cuenta que contiene el equilibrador de carga en la ruta de recursos del ARN del bucket de S3. Esto garantiza que solo los equilibradores de carga de la cuenta especificada puedan escribir registros de acceso en el bucket de S3.

El ARN que especifique dependerá de si planea incluir un prefijo al habilitar los registros de acceso en el [paso 3](enable-access-logging.md#enable-access-logs).

**Ejemplo de ARN del bucket de S3 con un prefijo**  
El nombre del bucket de S3 es amzn-s3-demo-logging-bucket y el prefijo es logging-prefix.

```
arn:aws:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
```

**AWS GovCloud (US)**: en el siguiente ejemplo, se utiliza la sintaxis de ARN para las AWS GovCloud (US) Regions.

```
arn:aws-us-gov:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
```

**Ejemplo de ARN del bucket de S3 sin prefijo**  
El nombre del bucket de S3 es amzn-s3-demo-logging-bucket. No hay ninguna parte de prefijo en el ARN del bucket de S3.

```
arn:aws:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*
```

**AWS GovCloud (US)**: en el siguiente ejemplo, se utiliza la sintaxis de ARN para las AWS GovCloud (US) Regions.

```
arn:aws-us-gov:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*
```

### Política de bucket heredada
<a name="legacy-bucket-policy"></a>

Anteriormente, para las regiones disponibles antes de agosto de 2022, necesitábamos una política que concediera permisos a una cuenta de Elastic Load Balancing que fuera específica de la región. Esta política heredada aún es compatible, pero recomendamos que la sustituya por la política más reciente que se ha indicado anteriormente. Si prefiere continuar con el uso de la política heredada, que no se muestra aquí, puede hacerlo.

 Como referencia, estas son las cuentas IDs de Elastic Load Balancing que se deben especificar `Principal` en la política heredada. Tenga en cuenta que las regiones que no figuran en esta lista no son compatibles con la política heredada.
+ Este de EE. UU. (Norte de Virginia): 127311923021
+ Este de EE. UU. (Ohio): 033677994240
+ Oeste de EE. UU. (Norte de California): 027434742980
+ Oeste de EE. UU. (Oregón): 797873946194
+ África (Ciudad del Cabo): 098369216593
+ Asia-Pacífico (Hong Kong): 754344448648
+ Asia-Pacífico (Yakarta): 589379963580
+ Asia-Pacífico (Bombay): 718504428378
+ Asia-Pacífico (Osaka): 383597477331
+ Asia-Pacífico (Seúl): 600734575887
+ Asia Pacífico (Singapur): 114774131450
+ Asia Pacífico (Sídney): 783225319266
+ Asia Pacífico (Tokio): 582318560864
+ Canadá (Centro): 985666609251
+ Europa (Fráncfort): 054676820928
+ Europa (Irlanda): 156460612806
+ Europa (Londres): 652711504416
+ Europa (Milán): 635631232127
+ Europa (París): 009996457667
+ Europa (Estocolmo): 897822967062
+ Medio Oriente (Baréin): 076674570225
+ América del Sur (São Paulo): 507241528517
+ AWS GovCloud (EE. UU. Este) — 190560391635
+ AWS GovCloud (US-Oeste) — 048591011584

### Zonas Outposts
<a name="bucket-policy-outposts"></a>

La siguiente política otorga permisos al servicio de entrega de registros especificado. Utilice esta política para los equilibradores de carga en las zonas Outposts.

```
{
    "Effect": "Allow",
    "Principal": {
        "Service": "logdelivery.elb.amazonaws.com"
    },
    "Action": "s3:PutObject",
    "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*"
    "Condition": {
        "StringEquals": {
            "s3:x-amz-acl": "bucket-owner-full-control"
        }
    }
}
```

En `Resource`, introduzca el ARN de la ubicación de los registros de acceso. Incluya siempre el ID de la cuenta que contiene el equilibrador de carga en la ruta de recursos del ARN del bucket de S3. Esto garantiza que solo los equilibradores de carga de la cuenta especificada puedan escribir registros de acceso en el bucket de S3.

El ARN que especifique dependerá de si planea incluir un prefijo al habilitar los registros de acceso en el [paso 3](enable-access-logging.md#enable-access-logs).

**Ejemplo de ARN del bucket de S3 con un prefijo**  
El nombre del bucket de S3 es amzn-s3-demo-logging-bucket y el prefijo es logging-prefix.

```
arn:aws:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
```

**Ejemplo de ARN del bucket de S3 sin prefijo**  
El nombre del bucket de S3 es amzn-s3-demo-logging-bucket. No hay ninguna parte de prefijo en el ARN del bucket de S3.

```
arn:aws:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*
```

### Prácticas recomendadas de seguridad
<a name="bucket-policy-security-best-practices"></a>

Para mejorar la seguridad, utilice un cubo S3 preciso. ARNs
+ Utilice la ruta de recurso completa, no solo el ARN del bucket de S3.
+ Incluya la parte del ID de cuenta del ARN del bucket de S3.
+ No utilice caracteres comodín (\$1) en la parte del ID de cuenta del ARN del bucket de S3.

Después de crear la política de bucket, utilice una interfaz de Amazon S3, como la consola o los AWS CLI comandos de Amazon S3, para adjuntar la política de bucket a su bucket de S3.

------
#### [ Console ]

**Para asociar la política de bucket al bucket de S3**

1. Abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Seleccione el nombre del bucket para abrir la página de detalles.

1. Elija **Permisos** y, a continuación, seleccione **Política de bucket**, **Editar**.

1. Actualice la política de bucket para conceder los permisos necesarios.

1. Seleccione **Save changes (Guardar cambios)**.

------
#### [ AWS CLI ]

**Para asociar la política de bucket al bucket de S3**  
Utilice el comando [put-bucket-policy](https://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-policy.html). En este ejemplo, la política de bucket se guardó en el archivo .json especificado.

```
aws s3api put-bucket-policy \
    --bucket amzn-s3-demo-bucket \
    --policy file://access-log-policy.json
```

------

## Paso 3: Configurar los registros de control de estado
<a name="enable-health-check-logs"></a>

Utilice el siguiente procedimiento para configurar los registros de comprobación de estado a fin de capturar y entregar los archivos de registro a su bucket de S3.

**Requisitos**  
El bucket debe cumplir los requisitos descritos en el [paso 1](#health-check-log-create-bucket) y debe adjuntar una política de bucket tal como se describe en el [paso 2](#attach-bucket-policy-health-check). Si especifica un prefijo, no debe incluir la cadena "AWSLogs».

**Para administrar el depósito de S3 para sus registros de control de estado**  
Asegúrese de deshabilitar los registros de comprobaciones de estado antes de eliminar el depósito que configuró para los registros de comprobaciones de estado. De lo contrario, si hay un nuevo bucket con el mismo nombre y la política de bucket requerida, pero creado en uno del Cuenta de AWS que no eres propietario, Elastic Load Balancing podría escribir los registros de comprobación de estado de tu balanceador de cargas en este nuevo bucket.

------
#### [ Console ]

**Para habilitar los registros de verificación de estado**

1. Abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación, seleccione **Equilibradores de carga**.

1. Seleccione el nombre del equilibrador de carga para abrir la página de detalles.

1. En la pestaña **Atributos**, seleccione **Editar**.

1. Para la **supervisión**, activa los **registros de Health Check**.

1. En **URI de S3**, ingrese el URI de S3 correspondiente a los archivos de registro. El URI que especifique depende de si utiliza un prefijo.
   + URI con un prefijo: `s3://bucket-name/prefix`
   + URI sin un prefijo: `s3://bucket-name`

1. Seleccione **Save changes (Guardar cambios)**.

------
#### [ AWS CLI ]

**Para habilitar los registros de control de estado**  
Utilice el [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elbv2/modify-load-balancer-attributes.html)comando con los atributos relacionados.

```
aws elbv2 modify-load-balancer-attributes \
    --load-balancer-arn load-balancer-arn \
    --attributes \
        Key=health_check_logs.s3.enabled,Value=true \
        Key=health_check_logs.s3.bucket,Value=amzn-s3-demo-logging-bucket \
        Key=health_check_logs.s3.prefix,Value=logging-prefix
```

------
#### [ CloudFormation ]

**Para habilitar los registros de control de estado**  
Actualice el [AWS::ElasticLoadBalancingV2::LoadBalancer](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-loadbalancer.html)recurso para incluir los atributos relacionados.

```
Resources:
  myLoadBalancer:
    Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer'
    Properties:
      Name: my-alb
      Type: application
      Scheme: internal
      Subnets: 
        - !Ref subnet-AZ1
        - !Ref subnet-AZ2
      SecurityGroups: 
        - !Ref mySecurityGroup
      LoadBalancerAttributes: 
        - Key: "health_check_logs.s3.enabled"
          Value: "true"
        - Key: "health_check_logs.s3.bucket"
          Value: "amzn-s3-demo-logging-bucket"
        - Key: "health_check_logs.s3.prefix"
          Value: "logging-prefix"
```

------

## Paso 4: verificar los permisos del bucket
<a name="verify-bucket-permissions-health-check"></a>

Una vez habilitados los registros de comprobación de estado para el balanceador de cargas, Elastic Load Balancing valida el bucket de S3 y crea un archivo de prueba para garantizar que la política del bucket especifique los permisos necesarios. Puede utilizar la consola de Amazon S3 para comprobar que se ha creado el archivo de prueba. El archivo de prueba no es un archivo de registro de chequeos de estado propiamente dicho; no contiene registros de ejemplo.

**Para comprobar que Elastic Load Balancing ha creado un archivo de prueba en el bucket de S3**

1. Abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Seleccione el nombre del depósito que especificó para los registros de control de estado.

1. Vaya al archivo registro de prueba, `ELBHealthCheckLogTestFile`. La ubicación depende de si utiliza un prefijo.
   + Ubicación con un prefijo:*amzn-s3-demo-logging-bucket*//*prefix*/AWSLogs/*123456789012*ELBHealthCheckLogTestFile
   + Ubicación sin prefijo:*amzn-s3-demo-logging-bucket*///AWSLogs*123456789012*ELBHealthCheckLogTestFile

## Resolución de problemas
<a name="bucket-permissions-troubleshooting-health-check"></a>

Si recibe un error de acceso denegado, estas pueden ser causas posibles:
+ La política del bucket no concede permiso a Elastic Load Balancing para escribir registros de comprobación de estado en el bucket. Compruebe que está utilizando la política de bucket correcta para la región. Compruebe que el ARN del recurso utilice el mismo nombre de bucket que especificó al habilitar los registros de comprobación de estado. Compruebe que el ARN del recurso no incluya un prefijo si no lo especificó al habilitar los registros de comprobación de estado.
+ El bucket usa una opción de cifrado del lado del servidor no compatible. El bucket debe usar claves administradas por Amazon S3 (SSE-S3).