Come posso attivare un agente DataSync tra regioni AWS o tra account utilizzando un endpoint Amazon VPC?

8 minuti di lettura
0

Desidero utilizzare AWS DataSync per trasferire dati tra le seguenti posizioni: Tra locali e AWS tra regioni AWS Tra account AWS desidero configurare i miei ambienti e l'agente DataSync per questo scenario in una rete privata utilizzando un endpoint Amazon Virtual Private Cloud (Amazon VPC).

Risoluzione

Importante: La configurazione seguente presuppone che:

  • Le risorse non si connetteranno alla rete Internet pubblica ad eccezione della connessione tra gli endpoint privati ad AWS.
  • L'origine del trasferimento dei dati è un ambiente VPC locale o remoto con un'origine dati NFS o SMB. La destinazione del trasferimento dei dati è un Amazon VPC con accesso ad Amazon Simple Storage Service (Amazon S3), Amazon Elastic File System (Amazon EFS) o Amazon FSx. Dopo aver completato la configurazione, è possibile invertire la direzione di trasferimento in base alle combinazioni di posizioni supportate per DataSync.

Configurazione dell'ambiente di rete di origine (origine dati NFS o SMB)

L'agente DataSync viene eseguito sulla rete di origine vicina all'origine dati NFS o SMB. Per questa configurazione, la rete di origine può essere locale o Amazon VPC privata.

Nota: Se desideri configurare i trasferimenti tra VPC utilizzando il peering VPC, verifica i limiti del peering VPC per assicurarti che la funzionalità supporti la tua configurazione.

Configurazione dell'ambiente di rete di destinazione (Amazon S3, Amazon EFS o Amazon FSx)

Per questa configurazione, la rete di destinazione deve essere un Amazon VPC privato in grado di accedere a una posizione di destinazione, come Amazon S3, Amazon EFS o Amazon FSx.

Inoltre, è necessario configurare quanto segue sul VPC privato di destinazione:

1.Crea un endpoint VPC per DataSync.

2.Verificare che la sottorete associata all'endpoint VPC disponga di almeno quattro indirizzi IP disponibili per gli endpoint di esecuzione di DataSync.

Nota: Ogni attività DataSync utilizza quattro indirizzi IP per gli endpoint di esecuzione delle attività.

3.Configura un gruppo di sicurezza per gli endpoint DataSync VPC. Il gruppo di sicurezza deve consentire:

  • Traffico in entrata sulla porta TCP 443 verso l'endpoint
  • Traffico effimero in uscita
  • Traffico in entrata sull'intervallo di porte TCP 1024-1062 verso l'endpoint VPC di destinazione
  • Per aprire un canale di supporto AWS, consenti il traffico in entrata sulla porta TCP 22

Configurare la connessione di rete tra l'ambiente di origine e quello di destinazione

Per questa configurazione, il trasferimento dei dati può avvenire da un ambiente locale di origine a un VPC privato di destinazione. Oppure, il trasferimento dei dati può avvenire tra VPC privati che si trovano in diverse regioni AWS o appartengono a diversi account AWS. È necessario configurare i seguenti requisiti di connessione e rete tra gli ambienti di origine e di destinazione:

1.Configura una connessione di rete attiva tra l'ambiente di origine e l'endpoint VPC di destinazione. Ad esempio, configura questa connessione utilizzando AWS Direct Connect, VPC peering o un VPC in transito.

2.Verifica che non vi siano sovrapposizioni nello spazio degli indirizzi di rete privata tra l'ambiente di origine e quello di destinazione. Quindi, verifica i blocchi CIDR.

3.Verificare che le voci della tabella di routing sia nella sottorete di origine che nella sottorete di destinazione consentano il traffico tra le reti senza problemi. Ad esempio, se utilizzi il peering VPC, aggiorna le tabelle di route per la connessione peering.

4.Se è presente un firewall tra le reti di origine e di destinazione, devi consentire quanto segue:

  • Traffico sulla porta TCP 443 verso le sottoreti degli endpoint VPC di destinazione
  • Traffico sull'intervallo di porte TCP 1024-1062 verso l'endpoint VPC di destinazione
  • Per aprire un canale di supporto AWS, consenti il traffico sulla porta TCP 22

5.Verifica che tutti i gruppi di sicurezza e i firewall consentano il traffico effimero in uscita o l'uso di strumenti di tracciamento della connessione.

Configura la macchina che utilizzerai per attivare l'agente DataSync

Puoi utilizzare un computer fisico, una macchina virtuale o un'istanza Amazon Elastic Compute Cloud (Amazon EC2) per attivare l'agente DataSync. È necessario configurare quanto segue sulla macchina:

1.Configurare una connessione a una delle reti private nell'ambiente di origine o di destinazione. È necessario configurare percorsi di rete validi per entrambe le reti.

2.Se non è disponibile una connessione Internet, è necessario configurare l'accesso di rete all'agente DataSync sulla porta TCP 80 (HTTP).

3.Installa il comando cURL per ottenere la chiave di attivazione.

4.Installa l'interfaccia a riga di comando AWS (AWS CLI) per attivare l'agente DataSync.

5.Configura l'interfaccia a riga di comando di AWS con le credenziali di AWS Identity and Access Management (IAM) che consentono di attivare l'agente DataSync, in modo simile a quanto segue:

{
  "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: Se utilizzi un'istanza Amazon EC2 per attivare l'agente, puoi associare il ruolo IAM con le autorizzazioni corrette al profilo dell'istanza.

Attiva l'agente DataSync

Nota: Assicurati di sostituire us-east-1 con la regione AWS di tua scelta.

1.Implementa l'agente DataSync su una macchina virtuale (on-premises) o su un'istanza EC2 (VPC privato).

2.Dal computer configurato nei passaggi precedenti, ottieni la chiave di attivazione dell'agente DataSync eseguendo il seguente 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: Puoi facoltativamente includere --data-urlencode "no_redirect" per semplificare e abbreviare il comando e l'output.

-oppure-

È possibile ottenere la chiave di attivazione utilizzando la console locale.

3.Nota la chiave di attivazione dall'output del comando.

4.Utilizzando l'interfaccia a riga di comando di AWS, esegui il comando describe-vpc-endpoints per ottenere l'ID endpoint VPC di destinazione:

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

Nota: Se ricevi errori durante l'esecuzione dei comandi dell'interfaccia a riga di comando di AWS, assicurati di utilizzare la versione più recente dell'interfaccia a riga di comando di AWS.

5.Nota il "VpcEndpointId" dall'output del comando, simile al seguente:

"VpcEndpointId": "vpce-0ba3xxxxx3752b63"

6.Utilizzando l'interfaccia a riga di comando di AWS, esegui il comando describe-security-groups per ottenere l'ID del gruppo di sicurezza del cloud privato virtuale di destinazione. Questo è il gruppo di sicurezza che gli endpoint di esecuzione DataSync utilizzeranno per connettersi all'endpoint DataSync VPC.

Nota: Ti consigliamo di utilizzare lo stesso gruppo di sicurezza dell'endpoint VPC per ridurre la complessità della configurazione.

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

7.Nota il "GroupID" dall'output del comando, simile al seguente:

"GroupId": "sg-000e8edxxxx4e4701"

8.Utilizzando l'interfaccia a riga di comando di AWS, esegui il comando describe-subnets per ottenere l'ID della sottorete associato all'endpoint VPC:

Nota: Per ridurre la complessità della configurazione, è consigliabile utilizzare la stessa sottorete dell'endpoint VPC.

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

9.Nota il "SubnetArn" dall'output del comando, simile al seguente:

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

10.Utilizzando l'interfaccia a riga di comando di AWS, esegui il comando create-agent per attivare l'agente DataSync:

  • Per --activation-key, inserisci la chiave di attivazione che hai ottenuto nel passaggio 3.
  • Per --vpc-endpoint-id, inserisci il "VpcEndpointId" che hai ottenuto nel passaggio 5.
  • Per --security-group-arns, inserisci il GroupID che hai ottenuto nel passaggio 7.
  • Per --subnet-arns, inserisci il SubnetArn che hai ottenuto nel passaggio 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.Il comando restituisce l'Amazon Resource Name (ARN) dell'agente DataSync:

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

12.Esegui il comando list-agents per confermare che l'agente è stato creato correttamente:

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

13.Conferma che l'ARN del tuo agente DataSync sia restituito nell'output:

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

Dopo l'attivazione dell'agente DataSync, è possibile utilizzare la console DataSync per creare posizioni e attività per i trasferimenti.

Risoluzione degli errori durante l'attivazione dell'agente DataSync

'Il comando cURL restituisce "errorType=PRIVATE_LINK_ENDPOINT_UNREACHABLE' e non restituisce la chiave di attivazione'

Questo errore si verifica in genere quando il traffico sulla porta TCP 443 non è consentito all'endpoint VPC.

"Si è verificato un errore (InvalidRequestException) durante la chiamata all'operazione CreateAgent: La configurazione del link privato non è valida: L'ID dell'endpoint VPC non deve essere specificato per le chiavi di attivazione degli endpoint pubblici"

Questo errore si verifica in genere quando si immette la chiave di attivazione pubblica per il parametro --activation-key nel comando create-agent. È necessario inserire la chiave di attivazione privata per il tipo di endpoint privato in questa configurazione.

"Si è verificato un errore (InvalidRequestException) durante la chiamata all'operazione CreateAgent: Subnet EC2 non valida, ARN: arn:aws:ec2:us-east-1:123456789012:subnet/subnet-41xxxx08, reason: invalid subnet, StatusCode: 403"

-oppure-

"Si è verificato un errore (InvalidRequestException) durante la chiamata all'operazione CreateAgent: Gruppo di sicurezza EC2 non valido, ARN: arn:aws:ec2:us-east-1:123456789012:security-group/sg-000e8xxxx9d4e4701, motivo: gruppo di sicurezza non valido, StatusCode: 403"

-oppure-

"Si è verificato un errore (InvalidRequestException) durante la chiamata all'operazione CreateAgent: La configurazione del link privato non è valida: L'endpoint VPC vpce-0ba34edxxxx752b63 non è valido"

Questi errori si verificano in genere quando l'identità IAM configurata nell'interfaccia a riga di comando di AWS non dispone di autorizzazioni sufficienti. Devi confermare che la policy della tua identità IAM concede le autorizzazioni per ec2:*VpcEndpoint*, ec2:*subnet* ed ec2:*security-group*.


Informazioni correlate

Come funziona AWS DataSync

Utilizzo di AWS DataSync in un cloud privato virtuale

Requisiti per AWS DataSync

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa