¿Cómo puedo activar un agente de DataSync en todas las regiones de AWS o en todas las cuentas mediante un punto de conexión de Amazon VPC?

9 minutos de lectura
0

Quiero usar AWS DataSync para transferir datos entre las siguientes ubicaciones: Entre las instalaciones locales y AWS Entre las regiones de AWS Entre las cuentas de AWS Quiero configurar mis entornos y el agente de DataSync para este escenario en una red privada mediante un punto de conexión de Amazon Virtual Private Cloud (Amazon VPC).

Resolución

Importante: La siguiente configuración asume que:

  • Los recursos no se conectarán a la Internet pública, excepto la conexión entre los puntos de conexión privados y AWS.
  • El origen de la transferencia de datos es un entorno de VPC local o remoto con un origen de datos NFS o SMB. El destino de la transferencia de datos es una Amazon VPC que tiene acceso a Amazon Simple Storage Service (Amazon S3), Amazon Elastic File System (Amazon EFS) o Amazon FSx. Tras completar la configuración, puede invertir la dirección de transferencia en función de las combinaciones de ubicaciones admitidas para DataSync.

Configure el entorno de red de origen (origen de datos NFS o SMB)

El agente de DataSync se ejecuta en la red de origen cercana al origen de datos NFS o SMB. Para esta configuración, la red de origen puede ser local o privada de Amazon VPC.

Nota: Si quiere configurar las transferencias entre VPC mediante la interconexión de VPC, asegúrese de revisar las limitaciones de la interconexión de VPC para asegurarse de que la función sea compatible con la configuración.

Configure el entorno de red de destino (Amazon S3, Amazon EFS o Amazon FSx)

Para esta configuración, la red de destino debe ser una Amazon VPC privada que pueda acceder a una ubicación de destino, como Amazon S3, Amazon EFS o Amazon FSx.

Además, debe configurar lo siguiente en la VPC privada de destino:

1.    Cree un punto de conexión de VPC para DataSync.

2.    Confirme que la subred asociada al punto de conexión de VPC tenga al menos cuatro direcciones IP disponibles para los puntos de conexión de ejecución de DataSync.

Nota: Cada tarea de DataSync utiliza cuatro direcciones IP para los puntos de conexión de ejecución de la tarea.

3.    Configure un grupo de seguridad para los puntos de conexión de VPC de DataSync. El grupo de seguridad debe permitir:

  • Tráfico entrante en el puerto TCP 443 al punto de conexión
  • Tráfico efímero saliente
  • Tráfico entrante en el rango de puertos TCP 1024 a 1062 al punto de conexión de VPC de destino
  • Para abrir un canal de AWS Support, permita el tráfico entrante en el puerto TCP 22

Configure la conexión de red entre los entornos de origen y destino

Para esta configuración, la transferencia de datos puede llevarse a cabo desde un entorno local de origen a una VPC privada de destino. O bien, la transferencia de datos puede hacerse entre VPC privadas que se encuentran en diferentes regiones de AWS o que pertenecen a diferentes cuentas de AWS. Debe configurar los siguientes requisitos de conexión y red entre los entornos de origen y destino:

1.    Configure una conexión de red activa entre el entorno de origen y el punto de conexión de VPC de destino. Por ejemplo, configure esta conexión mediante AWS Direct Connect, la interconexión de VPC, o una VPC de tránsito.

2.    Confirme que no haya superposición en el espacio de direcciones de la red privada entre los entornos de origen y destino. A continuación, verifique los bloques CIDR.

3.    Confirme que las entradas de la tabla de enrutamiento tanto en la subred de origen como en la subred de destino permiten el tráfico entre las redes sin problemas. Por ejemplo, si utiliza la interconexión de VPC, actualice las tablas de enrutamiento para la conexión de la interconexión.

4.    Si hay un firewall entre las redes de origen y destino, debe permitir lo siguiente:

  • Tráfico en el puerto TCP 443 a las subredes del punto de conexión de VPC de destino
  • Tráfico en el rango de puertos TCP 1024 a 1062 con destino al punto de conexión de VPC de destino
  • Para abrir un canal de AWS Support, permita el tráfico en el puerto TCP 22

5.    Confirme que todos los grupos de seguridad y firewalls permiten el tráfico saliente efímero o el uso de herramientas de seguimiento de conexiones.

Configure la máquina que utilizará para activar el agente de DataSync

Puede utilizar un equipo físico, una máquina virtual o una instancia de Amazon Elastic Compute Cloud (Amazon EC2) para activar el agente de DataSync. Debe configurar lo siguiente en el equipo:

1.    Configure una conexión a una de las redes privadas del entorno de origen o destino. Debe configurar rutas de red válidas para ambas redes.

2.    Si no hay conexión a Internet, debe configurar el acceso de red al agente de DataSync en el puerto TCP 80 (HTTP).

3.    Instale el comando cURL para obtener la clave de activación.

4.    Instale la Interfaz de la línea de comandos de AWS (AWS CLI) para activar el agente de DataSync.

5.    Configure la AWS CLI con las credenciales de AWS Identity and Access Management (IAM) que le permiten activar el agente de DataSync, de forma similar a la siguiente:

{
  "Version": "2012-10-17",
  "Statement": [{
      "Sid": "VisualEditor2",
      "Effect": "Allow",
      "Action": [
        "datasync:*"
      ],
      "Resource": "arn:aws:datasync:us-east-1:123456789012:*"
    },
    {
      "Sid": "VisualEditor3",
      "Effect": "Allow",
      "Action": [
        "ec2:*VpcEndpoint*",
        "ec2:*subnet*",
        "ec2:*security-group*"
      ],
      "Resource": "*"
    }
  ]
}

Nota: Si utiliza una instancia de Amazon EC2 para activar el agente, puede adjuntar el rol de IAM con los permisos correctos al perfil de instancia.

Activar el agente de DataSync

Nota: Asegúrese de reemplazar us-east-1 por la región de AWS que elija.

1.    Despliegue el agente de DataSync en una máquina virtual (local) o en una instancia de EC2 (VPC privada).

2.    Desde la máquina que configuró en los pasos anteriores, obtenga la clave de activación del agente de DataSync. Para ello, ejecute el siguiente comando cURL:

curl -vvv -G \
  --data-urlencode "activationRegion=us-east-1" \
  --data-urlencode "gatewayType=SYNC" \
  --data-urlencode "endpointType=PRIVATE_LINK" \
  --data-urlencode "privateLinkEndpoint=vpc_endpoint_ip_address" \
  --data-urlencode "redirect_to=https://us-east-1.console.aws.amazon.com/datasync/home?region=us-east-1#/agents/create" \
  "http://datasync_agent_ip"

Nota: Si lo desea, puede incluir --data-urlencode «no_redirect» para simplificar y acortar el comando y la salida.

-o-

Puede obtener la clave de activación mediante la consola local.

3.    Anote la clave de activación de la salida del comando.

4.    Con la AWS CLI, ejecute el comando describe-vpc-endpoints para obtener el ID del punto de conexión de VPC de destino:

aws ec2 describe-vpc-endpoints --region us-east-1

Nota: Si recibe errores al ejecutar los comandos de AWS CLI, asegúrese de utilizar la versión más reciente de AWS CLI.

5.    Observe el «VpcEndPointId» del resultado del comando, similar al siguiente:

"VpcEndpointId": "vpce-0ba3xxxxx3752b63"

6.    Con la AWS CLI, ejecute el comando describe-security-groups para obtener el ID del grupo de seguridad de la VPC de destino. Este es el grupo de seguridad que los puntos de conexión de ejecución de DataSync utilizarán para conectarse al punto de conexión de VPC de DataSync.

Nota: Le recomendamos que utilice el mismo grupo de seguridad que el punto de conexión de VPC para reducir la complejidad de la configuración.

aws ec2 describe-security-groups --region us-east-1

7.    Observe el «GroupID» del resultado del comando, similar al siguiente:

"GroupId": "sg-000e8edxxxx4e4701"

8.    Con la AWS CLI, ejecute el comando describe-subnets para obtener el ID de subred asociado al punto de conexión de VPC:

Nota: Para reducir la complejidad de la configuración, se recomienda utilizar la misma subred que el punto de conexión de VPC.

aws ec2 describe-subnets --region us-east-1

9.    Observe el «SubnetArn» del resultado del comando, similar al siguiente:

"SubnetArn": "arn:aws:ec2:us-east-1:123456789012:subnet/subnet-03dc4xxxx6905bb76"

10.    Con la AWS CLI, ejecute el comando create-agent para activar el agente de DataSync:

  • Para --activation-key, introduzca la clave de activación que obtuvo en el paso 3.
  • Para --vpc-endpoint-id, introduzca el «VpcEndpointId» que obtuvo en el paso 5.
  • Para --security-group-arns, introduzca el GroupID que obtuvo en el paso 7.
  • Para --subnet-arns, introduzca el SubnetArn que obtuvo en el paso 9.
aws datasync create-agent --agent-name your_agent_name --vpc-endpoint-id vpce-0cxxxxxxxxxxxxf57 --activation-key UxxxQ-0xxxB-LxxxL-AUxxV-JxxxN --subnet-arns arn:aws:ec2:us-east-1:123456789012:subnet/subnet-0cxxxxxxxxxxxx3 --security-group-arns arn:aws:ec2:us-east-1:123456789012:security-group/sg-xxxxxxxxxxxxxx --region us-east-1

11.    El comando devuelve el nombre de recurso de Amazon (ARN) del agente de DataSync:

{
    "AgentArn": "arn:aws:datasync:us-east-1:123456789012:agent/agent-0bxxxxxxxxxxxxxx57c"
}

12.    Ejecute el comando list-agents para confirmar que ha creado el agente correctamente:

aws datasync list-agents --region us-east-1

13.    Confirme que el ARN de su agente de DataSync aparezca en la salida:

{
    "Agents": [
        {
            "AgentArn": "arn:aws:datasync:us-east-1:123456789012:agent/agent-0bxxxxxxxxxxxxxx57c",
            "Status": "ONLINE",
            "Name": "your_agent_name"
        }
    ]
}

Una vez activado su agente de DataSync, puede usar la consola de DataSync para crear ubicaciones y tareas para sus transferencias.

Solucionar errores durante la activación del agente de DataSync

«El comando cURL devuelve 'errorType=PRIVATE_LINK_ENDPOINT_UNREACHABLE' y no devuelve la clave de activación»

Este error suele producirse cuando el tráfico del puerto TCP 443 no está permitido en el punto de conexión de VPC.

«Se ha producido un error (InvalidRequestException) al llamar a la operación CreateAgent: La configuración del enlace privado no es válida: El Id del punto de conexión de VPC debe permanecer sin especificar para las claves de activación de los puntos de conexión públicos»

Este error se produce normalmente al introducir la clave de activación pública para el parámetro --activation-key en el comando create-agent. Debe introducir la clave de activación privada para el tipo de punto de conexión privado en esta configuración.

«Se ha producido un error (InvalidRequestException) al llamar a la operación CreateAgent: Subred de EC2 no válida, ARN: arn:aws:ec2:us-east-1:123456789012:subnet/subnet-41xxxx08, motivo: subred no válida, StatusCode: 403»

-o-

«Se ha producido un error (InvalidRequestException) al llamar a la operación CreateAgent: Grupo de seguridad de EC2 no válido, ARN: arn:aws:ec2:us-east-1:123456789012:security-group/sg-000e8xxxx9d4e4701, motivo: grupo de seguridad no válido, StatusCode: 403»

-o-

«Se ha producido un error (InvalidRequestException) al llamar a la operación CreateAgent: La configuración del enlace privado no es válida: El punto de conexión de VPC vpce-0ba34edxxxx752b63 no es válido»

Estos errores suelen producirse cuando la identidad de IAM configurada en la AWS CLI no tiene permisos suficientes. Debe confirmar que la política de su identidad de IAM otorga permisos para ec2:*VpcEndpoint*, ec2:*subnet* y ec2:*security-group*.


Información relacionada

Cómo funciona AWS DataSync

Uso de AWS DataSync en una nube privada virtual

Requisitos para AWS DataSync

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años