Ga naar hoofdinhoud

AWS DataSync: Zo stel je geautomatiseerde gegevensoverdrachten in

Leer hoe je AWS DataSync instelt, configureert en optimaliseert. Deze stapsgewijze gids behandelt automatisering, beveiliging en best practices.
· 15 min lezen

Verken met AI

Bedrijven lopen tegen uitdagingen aan bij het overzetten van data wanneer ze workloads naar de cloud verplaatsen of back-ups en disaster recovery beheren. Verouderde technieken—zoals handmatige uploads of eigen scripts—missen automatisering en betrouwbaarheid, met hogere kosten en operationele overhead tot gevolg.

AWS DataSync maakt dit makkelijker door een veilige, geautomatiseerde methode te bieden voor het overzetten van datasets tussen opslagsystemen, on-premises en AWS-services, of tussen verschillende AWS-regio’s.

In deze tutorial leid ik je door:

  1. Het instellen van AWS DataSync – Agents aanmaken en configureren voor gegevensoverdracht.
  2. Het configureren van overdrachtstaken – Bron- en bestemmingsendpoints definiëren, data filteren en overdrachten plannen.
  3. DataSync gebruiken voor belangrijke use-cases – Zoals cloudmigratie, back-up en disaster recovery.

Wat is AWS DataSync?

AWS DataSync is een gegevensoverdrachtsservice die is bedoeld om grote hoeveelheden data te verplaatsen tussen on-premises opslagsystemen en cloudomgevingen met AWS-services. Het stroomlijnt overdrachtsprocessen door taken als datavalidatie en versleuteling af te handelen en biedt planningsopties. Dit maakt het een betrouwbare keuze voor migraties, databack-ups en continue datareplicatie.

DataSync versnelt gegevensoverdracht ten opzichte van methoden met complexe scripts of handmatige stappen door snelle en veilige geautomatiseerde dataverplaatsing tussen verschillende bronnen mogelijk te maken. Het ondersteunt overdrachten tussen:

  1. On-premises opslag (NFS, SMB, objectopslag) en AWS.
  2. Amazon S3, Amazon EFS, Amazon FSx en Amazon S3 Glacier.
  3. AWS-services in verschillende regio’s en accounts.

> Als je nieuw bent bij AWS of de kern van cloudtools wilt opfrissen, biedt de cursus AWS Cloud Technology and Services een stevige basis in services als EC2, S3 en IAM.

Functies van AWS DataSync

  1. Hoge snelheid voor gegevensoverdracht: Parallelle en geoptimaliseerde datastromen maken overdracht tot 10 keer sneller mogelijk. 
  2. Geautomatiseerde datavalidatie: Verifieert de nauwkeurigheid van overgezette data via checksums om de dataintegriteit te waarborgen. 
  3. Naadloze integratie met AWS-services: Ondersteunt natuurlijk Amazon S3, Amazon EFS, Amazon FSx for Windows en FSx for Lustre als zowel bron als bestemming.
  4. Incrementele en geplande overdrachten: Verplaatst alleen gewijzigde data (differentieel sync) om bandbreedtegebruik en kosten te beperken en ondersteunt planning voor periodieke synchronisatie.
  5. Beveiliging en versleuteling: Gegevensoverdrachten worden beschermd met end-to-end-versleuteling via TLS voor transportbeveiliging en AES 256 voor bescherming in rust. AWS Identity and Access Management (IAM) biedt ook toegangsbeheer. 
  6. Multi-Region- en cross-account-overdrachten: Faciliteert het kopieëren van data tussen regio’s en accounts op AWS voor planning en delen.

Nu de context helder is, gaan we door naar het praktische deel van deze tutorial!

AWS DataSync instellen

Voordat je data overdraagt, moet je AWS DataSync correct configureren. In deze sectie behandelen we de vereisten en stappen voor de setup, inclusief agentinstallatie, IAM-rollen en opslagconfiguratie.

Vereisten voor AWS DataSync

We gebruiken AWS CloudFormation om de provisioning te automatiseren en ons te richten op datamigratie. We maken de volgende resources aan:

  1. Een AWS VPC met publieke subnets voor netwerkconnectiviteit.
  2. Een NFS-server op een Amazon EC2-instance om een on-premises opslagsysteem te simuleren.
  3. AWS DataSync-agents op EC2-instances om dataverplaatsing mogelijk te maken.
  4. IAM-rollen en -policies om de vereiste rechten voor DataSync-bewerkingen te verlenen.

Inloggen op de AWS-console

  • Log in op de AWS Management Console met je inloggegevens.
  • Klik op het dropdownmenu rechtsboven in het scherm en selecteer voor deze tutorial de regio “N. California”.

De AWS Management Console met het dropdownmenu voor regiokeuze geopend, met verschillende beschikbare regio’s

Figuur 1 - AWS-regio selecteren in de AWS Management Console

  • Ga naar de EC2-console en navigeer naar de sectie Key Pair. Zorg dat je in dezelfde AWS-regio zit als in de vorige stap.
  • Klik op Create Key Pair en noem deze “datasync”.

AWS EC2-interface met de pagina voor het aanmaken van een key pair, met opties voor RSA en ED25519.

Figuur 2 - Een key pair aanmaken voor veilige toegang in AWS EC2

  • Klik op Create en je browser downloadt een datasync.pem-bestand.
  • Sla dit bestand veilig op—je hebt het later in de tutorial nodig.

De omgeving configureren

In deze stap gebruik je een CloudFormation-template om de benodigde AWS-infrastructuur voor AWS DataSync in te richten, zoals eerder genoemd.

  • Open de AWS CloudFormation-console en klik op Create stack.
  • Selecteer Template is ready en kies vervolgens Upload a template file.

AWS CloudFormation-interface met de optie om een templatebestand te uploaden voor het aanmaken van een stack.

Figuur 3 - Een CloudFormation-template uploaden om een nieuwe stack te maken.

  • Download het bestand van Github Gist en klik op Choose file, upload datasync-onprem.yaml en klik op Next.
  • Selecteer onder Parameters een EC2 key pair om SSH-login toe te staan op instances die door deze stack worden gemaakt. Bewerk de waarden voor AMI ID’s niet, maar klik op Next.
  • Laat op de pagina Stack Options de standaardinstellingen staan en klik op Next.
  • Controleer de configuratie en klik op Create stack.
  • Je wordt doorgestuurd naar de CloudFormation-console, waar de status “CREATE_IN_PROGRESS” wordt weergegeven. Wacht tot dit verandert in “CREATE_COMPLETE”.

De status van resourcecreatie controleren in AWS CloudFormation.

Figuur 4 - De status van resourcecreatie controleren in AWS CloudFormation

  • Ga na voltooiing naar de sectie Outputs en noteer de waarden—je hebt ze nodig voor de rest van de tutorial.
  • Je moet nog een stack deployen door dezelfde stappen als hierboven te volgen. Deze template vereist geen extra parameters. Download de template van GitHub Gist en ga verder met de deployment.

De DataSync-agent instellen

In deze tutorial repliceren we een on-premises omgeving in AWS om realistische datamigratiescenario’s met AWS DataSync te emuleren. 

In plaats van echte on-premises infrastructuur gebruiken we een NFS-server op een Amazon EC2-instance als bronsysteem. Zo kunnen we AWS DataSync testen en configureren alsof we data van on-premises verplaatsen.

We hebben de AWS DataSync-agents op EC2-instances in dezelfde omgeving gestart om dataverplaatsing mogelijk te maken. Deze agents koppelen de NFS-server aan AWS DataSync en maken overdrachten naar cloudopslagservices zoals Amazon S3 mogelijk. 

Met deze architectuur kunnen we AWS DataSync-taken nabootsen, configureren en valideren voor een soepele workflow, voordat we ze in een echte on-premises omgeving implementeren. In deze tutorial gebruiken we deze omgeving om de agent te registreren, DataSync-taken te maken en data efficiënt te verplaatsen.

Afbeelding toont architectuur gedeployed door AWS CloudFormation

Figuur 5 - Architectuur gedeployed door AWS CloudFormation

De NFS-server configureren voor AWS DataSync

Voordat je AWS DataSync instelt, is het belangrijk om te begrijpen welke data je overzet en hoe die is georganiseerd. In deze sectie configureren we een NFS-server in onze AWS-omgeving om te fungeren als een on-premises opslagsysteem. Met deze setup kunnen we datamigratie naar AWS-services simuleren.

Log eerst in op de NFS-server:

  • Open de AWS Management Console en ga naar de regio “N. California”.
  • Selecteer EC2 in de lijst met AWS-services.
  • Zoek de NFS-serverinstance in de EC2-instantielijst.
  • Klik op Connect en volg de instructies om te verbinden via Session Manager of SSH.

Blader vervolgens door de bestandssystemen. De NFS-server bevat drie EBS-volumes van 200 GiB, elk geformatteerd met het XFS-bestandssysteem en vooraf gevuld met voorbeeldsets.

  • Voer de volgende opdracht uit om de aangekoppelde bestandssystemen te controleren:
mount | grep /mnt

Figuur 6 - Verwachte output van het commando mount

  • Controleer vervolgens de hoeveelheid data op elk bestandssysteem:
df -h | grep /mnt

Afbeelding toont verwachte output van het commando df

Figuur 7 - Verwachte output van het commando df

Zoals je ziet bevatten fs1 en fs2 12 GiB aan data, en fs3 22 GiB.

Laten we nu de NFS-exports configureren. Om AWS DataSync-agents toegang te geven tot de NFS-server, configureer je het bestand /etc/exports:

  • Open als root het bestand /etc/exports met een teksteditor:
sudo nano /etc/exports
  • Voeg de volgende regels toe om read-only (ro) exports voor de DataSync-agents te definiëren:
/mnt/fs1 10.12.14.243(ro,no_root_squash) 10.12.14.249(ro,no_root_squash)
/mnt/fs2 10.12.14.243(ro,no_root_squash) 10.12.14.249(ro,no_root_squash)
/mnt/fs3 10.12.14.243(ro,no_root_squash) 10.12.14.249(ro,no_root_squash)

Vervang 10.12.14.243 en 10.12.14.249 door de private IP-adressen van je DataSync-agent-EC2-instances uit de CloudFormation-outputs.

  • Pas de nieuwe exportinstellingen toe door de NFS-service te herstarten:
sudo systemctl restart nfs
  • Controleer de NFS-exports:
showmount -e

Afbeelding toont verwachte output van het commando showmount

Figuur 8 - Verwachte output van het commando showmount

CloudWatch configureren en AWS DataSync-agents activeren

Met de NFS-server geconfigureerd, is de volgende stap CloudWatch-logging voor DataSync inschakelen en de DataSync-agents in de regio “N. California” activeren. Zo worden alle bestandoverdrachten gelogd en krijg je inzicht in fouten of storingen.

Voordat AWS DataSync logs naar CloudWatch kan sturen, moeten we een resourcebeleid maken dat DataSync de vereiste machtigingen geeft.

  • Kopieer het volgende JSON-beleid en sla het lokaal op als datasync-policy.json:
{
    "Statement": [
        {
            "Sid": "DataSyncLogsToCloudWatchLogs",
            "Effect": "Allow",
            "Action": [
                "logs:PutLogEvents",
                "logs:CreateLogStream"
            ],
            "Principal": {
                "Service": "datasync.amazonaws.com"
            },
            "Resource": "*"
        }
    ],
    "Version": "2012-10-17"
}
  • Voer vervolgens de volgende opdracht uit in je terminal:
aws logs put-resource-policy --region us-west-1 --policy-name trustDataSync --policy-document file://datasync-policy.json

Met bovenstaande opdracht kan AWS DataSync naar CloudWatch loggen, wat helpt bij het monitoren en debuggen van overdrachtsproblemen.

Laten we nu de DataSync-agents activeren. Hoewel de DataSync-agent-EC2-instances zijn aangemaakt in de regio “N. California”, moeten ze in die regio geactiveerd worden voordat je ze kunt gebruiken.

Opmerking: Als je de DataSync-agent op VMware of een andere on-premises omgeving moet installeren, raadpleeg dan de officiële AWS-gids. Omdat we echter een on-premises setup simuleren met EC2-instances, zijn de DataSync-agents in deze tutorial gedeployed volgens de best practices van AWS voor cloudinstallaties.

  • Ga naar de AWS-managementconsole en selecteer de regio “N. California”.
  • Open de AWS DataSync-service.
  • Als er geen agents bestaan, klik op Get started; anders klik op Create agent.
  • Laat in de sectie Service endpoint de optie “Public service endpoints…” staan.
  • Voer in de sectie Activation key het openbare IP-adres in van de eerste DataSync-agent uit de CloudFormation-outputs:
    • Agent 1 Public IP:  <Output from Cloudformation>
    • Agent 2 Public IP: <Output from Cloudformation>

Afbeelding toont het scherm voor het aanmaken en activeren van een DataSync-agent

Figuur 8 - DataSync-agent aanmaken en activeren

  • Klik op Get key om de activatiesleutel op te halen.
  • Voer na succesvolle activatie een Agent-naam in (bijv. "Agent 1" of "Agent 2").
  • Voeg tags toe indien nodig.
  • Klik op Create agent.
  • Herhaal bovenstaande stappen voor de tweede DataSync-agent.

Een DataSync-taak maken

Laten we nu eindelijk een DataSync-taak maken! Volg deze stappen:

  • Ga naar de AWS DataSync-console.
  • Klik op Tasks → Create task.
  • Maak bronlocatie aan:
    • Location type: Network File System (NFS).
    • Agents: Selecteer zowel “Agent 1 private IP” als “Agent 2 private IP”.
    • NFS Server Private IP: NFS private IP.
    • Mount path: /mnt/fs1/d0001 (kopieert alleen de map d0001).

WS DataSync-console met de stap "Configure source location". De interface toont opties om een nieuwe bronlocatie te maken met "Network File System (NFS)" als locatietype

Figuur 10 - De bronlocatie configureren voor AWS DataSync

  • Maak bestemmingslocatie aan:
    • Location type: Amazon S3.
    • Selecteer de S3-bucket uit de CloudFormation-outputs.
    • Storage class: Standard.
    • IAM Role: Selecteer uit de CloudFormation-outputs

Overdrachtstaken configureren

Als AWS DataSync is ingesteld, is de volgende stap het configureren van overdrachtstaken. Deze taken bepalen hoe, wanneer en waar data wordt overgezet. AWS DataSync biedt verschillende opties om overdrachten te optimaliseren, waaronder bestandsfiltering, planning en monitoring.

  • Configureer taakinstellingen:
    • Task name: Test Task
    • Exclude patterns: */.htaccess en */index.html
    • Transfer mode: Alleen gewijzigde data overdragen (bepaalt of DataSync alleen de data en metadata overdraagt die afwijken tussen bron en bestemming.)
    • Verify data: Selecteer "Verify only the data transferred".
  • CloudWatch-logging inschakelen:
    • Log group: Selecteer DataSyncLogs-datasync-incloud.
  • Klik op Next, controleer de instellingen en klik op Create task.

Gegevensoverdracht uitvoeren met AWS DataSync

Na het configureren van een DataSync-taak moet je de overdracht uitvoeren en de voortgang monitoren. Deze sectie behandelt hoe je een overdracht handmatig of via de CLI start, de status volgt en veelvoorkomende problemen oplost.

De gegevensoverdracht starten

  • Wacht tot de taakstatus verandert van "Creating" naar "Available".
  • Klik op de knop Start, controleer de instellingen en klik op Start.

AWS DataSync-console met een geconfigureerde DataSync-taak met status "Available".

Figuur 11 - Lijst met AWS DataSync-taken met opties om de taak te starten, bewerken of verwijderen

  • Monitor de voortgang van de taak:
    • De taak doorloopt deze statussen: Launching → Preparing → Transferring → Verifying → Success.

De overdrachtsvoortgang monitoren

Klik op het tabblad Task history en selecteer het execution-object om overdrachtsstatistieken in de taak te bekijken.

AWS DataSync-console met prestatistatistieken, waaronder totaal aantal overgedragen bestanden (10.041), overgedragen data (194,73 MiB) en throughput-metrics voor verwerkingssnelheid, gegevensoverdrachtsnelheid en netwerkgebruik.

Figuur 12 - AWS DataSync-prestatiemetingen met bestandsthroughput, datathroughput en netwerkgebruik

Problemen met gegevensoverdracht oplossen

Tijdens AWS DataSync-overdrachten kunnen veelvoorkomende problemen optreden, zoals connectiviteitsstoringen, toestemmingsfouten of trage overdrachtssnelheden. Los dit op door:

  1. CloudWatch-logs te controleren – Identificeer fouten met bestandsrechten, agentconnectiviteit of mislukte overdrachten.
  2. Netwerkconnectiviteit te verifiëren – Zorg dat de DataSync-agents zowel de bron (NFS/SMB) als de bestemming (S3, EFS, FSx) kunnen bereiken.
  3. IAM-machtigingen te controleren – Bevestig dat de DataSync-servicerol de vereiste rechten heeft om te lezen/schrijven.
  4. De agentconfiguratie te inspecteren – Zorg dat agents correct geactiveerd, gezond en in staat zijn te communiceren met de AWS DataSync-service.

Stappen na overdracht en datasynchronisatie

Wanneer de gegevensoverdracht voltooid is, is het belangrijk de integriteit van de overgezette bestanden te verifiëren en waar nodig doorlopende synchronisatie in te stellen. Deze sectie legt uit hoe je datanauwkeurigheid controleert, incrementele syncs plant en ongebruikte resources opruimt om kosten te optimaliseren.

Dataintegriteit verifiëren

  • Open de AWS S3-console en navigeer naar de bucket die begint met “datasync”.
  • Blader door de bucket en controleer of alle verwachte bestanden zijn overgezet.

AWS S3-bucket met bestanden die via AWS DataSync zijn overgezet

Figuur 13 - AWS S3-bucket met bestanden die via AWS DataSync zijn overgezet

  • Controleer dat de bestanden .htaccess en index.html niet zijn gekopieerd.

Je kunt de uitvoeringsdetails van de taak ook via de AWS CLI controleren:

  • Haal de task execution ARN op:
aws datasync list-task-executions --region us-west-1 | grep exec-
  • Beschrijf de taakuitvoering:
aws datasync describe-task-execution --region us-west-1 --task-execution-arn <task-execution-arn>

Output van AWS DataSync describe-task-execution, met status: SUCCESS, overgedragen bestanden: 10.041, overgedragen bytes: 204 MB, en uitsluitingen voor .htaccess- en index.html-bestanden.

Figuur 14 - Details van AWS DataSync-taakuitvoering

  • Bekijk belangrijke prestatiestatistieken: EstimatedFilesToTransfer, BytesTransferred, overdrachtssnelheid en duur.

Doorlopende datasynchronisatie

In praktijksituaties worden bestanden na een initiële overdracht nog steeds toegevoegd en gewijzigd. AWS DataSync ondersteunt incrementele overdrachten, waarbij alleen nieuwe of gewijzigde bestanden naar de bestemming worden gekopieerd. In deze sectie wijzigen we data op fs2, voeren we een incrementele overdracht uit en optimaliseren we het proces met filters.

Laten we beginnen met het wijzigen van bestanden op fs2.

  • Log in op de NFS-server via SSH:
ssh ec2-user@<NFS-Server-IP>
  • Maak een nieuw bestand en werk de manifestlijst bij:
cd /mnt/fs2/d0001/dir0001
dd if=/dev/urandom of=newfile1 bs=1M count=1
echo "newfile1" >> manifest.lst

Dit voegt één nieuw bestand toe (newfile1) en wijzigt manifest.lst.

Voer vervolgens de taak opnieuw uit om wijzigingen te synchroniseren:

  • Ga naar de AWS DataSync-console.
  • Klik op Tasks → Test Task (eerder gemaakte taak).
  • Klik op Start om een nieuwe uitvoering te starten.
  • Volg de voortgang op het tabblad Task history.
  • Controleer na voltooiing:
    • 3 bestanden overgedragen (newfile1, bijgewerkte manifest.lst en mapupdate).
    • 1 MiB aan data naar S3 gekopieerd.

AWS DataSync-prestatiemetingen die een incrementele overdracht tonen.

Figuur 15 - AWS DataSync-prestatiemetingen die een incrementele overdracht tonen

  • Valideer de overdracht in S3:
    • Ga naar de S3-bucket en bevestig de aanwezigheid van newfile1.
    • Controleer manifest.lst op een bijgewerkte timestamp.

DataSync-overdrachten automatiseren met geplande taken

In omgevingen waar data vaak verandert, zorgt periodieke synchronisatie ervoor dat de bestemming actueel blijft met minimale handmatige tussenkomst. AWS DataSync laat je taken op vaste intervallen (bijv. elk uur, dagelijks of wekelijks) configureren, wat operationele overhead vermindert. 

Door een terugkerend schema in te stellen, detecteert DataSync automatisch alleen nieuwe en gewijzigde bestanden en draagt die over, wat het bandbreedtegebruik en de efficiëntie van de overdracht optimaliseert.

Zo plan je een taak:

  1. Ga naar de AWS DataSync-console en bewerk een bestaande taak.
  2. Selecteer in de sectie Schedule “Daily”, “Weekly”, etc.
  3. Geef de specifieke tijd op (optioneel).
  4. Sla de instellingen op; DataSync voert de taak op de opgegeven intervallen uit.

Opschonen en kostenoptimalisatie

Als je gegevensoverdracht voltooid is, is het essentieel ongebruikte resources op te ruimen om onnodige kosten te voorkomen. Volg deze stappen:

  • Stop en verwijder DataSync-taken:
    • Ga naar de AWS DataSync-console, selecteer de taak en kies Stop als deze actief is.
    • Klik op Actions → Delete om voltooide taken te verwijderen.
  • Verwijder DataSync-agents:
    • Navigeer naar Agents in de DataSync-console.
    • Selecteer agents en klik op Delete om ze te verwijderen.

De CloudFormation-stack verwijderen

  • Open de AWS CloudFormation Console.
  • Selecteer de CloudFormation-stack die in de tutorial is aangemaakt.
  • Klik op Delete (rechtsboven).

AWS-interface die om bevestiging vraagt om een CloudFormation-stack te verwijderen.

Figuur 15 - Stackverwijdering bevestigen in AWS

  • Bevestig de verwijdering—CloudFormation verwijdert automatisch alle gekoppelde resources (dit kan tot 15 minuten duren).
  • Monitor de CloudFormation-console om te controleren of de stack volledig verwijderd is.

AWS DataSync-kosten optimaliseren

Hanteer deze best practices om kosten voor gegevensoverdracht te minimaliseren:

  1. Gebruik incrementele overdrachten – Configureer DataSync om alleen nieuwe of gewijzigde bestanden over te zetten en onnodige dataverplaatsing te verminderen.
  2. Optimaliseer overdrachtsfrequentie – Plan taken op basis van het ritme van datawijzigingen in plaats van continu te synchroniseren.
  3. Kies kosteneffectieve opslag – Sla data die je zelden raadpleegt op in Amazon S3 Glacier in plaats van Amazon EFS, dat duurder is.

Door resources goed op te ruimen en overdrachtsstrategieën te optimaliseren, kun je AWS-kosten aanzienlijk verlagen en toch efficiënte datasynchronisatie behouden.

Geavanceerde functies van AWS DataSync

Naast basisoverdrachten biedt AWS DataSync krachtige mogelijkheden die prestaties, kostenefficiëntie en beveiliging verbeteren. Deze sectie verkent belangrijke geavanceerde use-cases, waaronder S3-integratie en NFS-naar-EFS-migratie.

DataSync gebruiken met Amazon S3

AWS DataSync is een krachtig hulpmiddel om grote hoeveelheden data naar en van S3 te verplaatsen en is ideaal voor back-up, archief en cloudmigraties. Het verbetert de prestaties via multipart uploads,  waarbij grote bestanden in kleinere delen worden opgesplitst en parallel worden overgezet. Daarnaast helpt de integratie van DataSync met S3-opslagklassen om kosten te besparen door minder actieve data te migreren naar S3 Glacier of S3 Intelligent-Tiering.

In deze tutorial legden we uit hoe je een DataSync-taak configureert, een NFS-bron instelt en bestanden naar een S3-bucket verplaatst, terwijl je ongewenste bestanden uitsluit. Je kunt deze stappen gebruiken om grote dataverplaatsingen te plannen met weinig tot geen operationele impact.

Migreren van NFS naar Amazon EFS met DataSync

Voor organisaties die on-premises NFS-shares naar Amazon EFS moeten migreren, is AWS DataSync een geautomatiseerde, veilige en schaalbare oplossing. Het punt is dat S3 objectopslag is. Tegelijkertijd is Amazon EFS (Elastic File System) een volledig beheerde bestandsopslagservice met POSIX-naleving, waardoor het een goede keuze is voor toepassingen die gedeelde toegang en lage latentie vereisen.

Zo helpt DataSync bij NFS-naar-EFS-migratie:

  1. Behoudt metadata – Behoudt bestandsrechten, timestamps en eigendom.
  2. Ondersteunt incrementele syncs – Kopieert alleen gewijzigde of nieuwe bestanden en verlaagt zo de overdrachtskosten.
  3. Automatiseert migratie – Geen noodzaak voor handmatig scripten of complexe dataverplaatsingsstrategieën.

Hoewel deze tutorial gebaseerd was op NFS-naar-S3-migratie, kun je dezelfde DataSync-principes toepassen bij migratie naar Amazon EFS. Het belangrijkste verschil is dat je EFS als doel kiest, zodat dataverplaatsing goed verloopt voor toepassingen die een bestandssysteem met dynamische schaalbaarheid in AWS nodig hebben. 

Best practices voor het gebruik van AWS DataSync

Om het meeste uit AWS DataSync te halen, is het essentieel om best practices te volgen die snelheid, beveiliging en kostenefficiëntie verbeteren. Deze sectie behandelt belangrijke strategieën om overdrachten te optimaliseren, data te beveiligen en monitoring effectief te beheren.

Optimaliseer snelheid en kosten van overdracht

Voor grootschalige datamigraties is AWS Direct Connect (DX) een gedediceerde private netwerkverbinding die het publieke internet omzeilt en snellere, veiligere overdrachten met lagere latentie mogelijk maakt. Als DX niet beschikbaar is, kunnen alternatieven zoals VPN-verbindingen of VPC-peering de overdrachtssnelheden verbeteren met behoud van beveiliging.

Bovendien heeft AWS DataSync ingebouwde compressie die de hoeveelheid data die over het netwerk wordt verplaatst vermindert, waardoor de snelheid toeneemt en bandbreedtekosten afnemen. Omdat compressie CPU-resources gebruikt, is het wel belangrijk de prestatievoordelen af te wegen tegen mogelijke systeemoverhead. 

Daarnaast kan taakplanning en -configuratie verder worden geoptimaliseerd om de prestaties van DataSync te verbeteren. Door overdrachten naar daluren te verplaatsen, vermijd je netwerkdrukte en garandeer je bandbreedte, vooral bij het verplaatsen van grote bestanden. Het fijn afstemmen van buffergrootte en het aantal parallelle overdrachtstreams op basis van netwerk- en opslagcapaciteit verhoogt de throughput drastisch. 

Voor workflows met kleine bestanden verkort meer parallelisme de overdrachtstijd, terwijl efficiënt buffermanagement de prestaties en betrouwbaarheid bij grote bestanden verbetert.

Zorg voor databeveiliging

Alle data die AWS DataSync overdraagt, wordt tijdens transport versleuteld via TLS voor veilige netwerkoverdracht. Schakel ook versleuteling in voor bestemmingsopslagservices, waaronder Amazon S3, Amazon EFS en Amazon FSx. Voor extra bescherming bij S3 kun je server-side encryption inschakelen.

Volg bij het toewijzen van IAM-rollen voor DataSync-taken het principe van minste privilege. Verleen alleen de noodzakelijke rechten aan DataSync-agents en taakuitrolrollen om risico’s te minimaliseren. Vermijd het gebruik van beleidskeys op basis van tags en gebruik in plaats daarvan resourcegebaseerde policies om onverwachte datawijzigingen te voorkomen.

Voor intra-VPC-overdrachten kun je VPC-eindpunten inschakelen zodat DataSync-verkeer binnen het AWS-netwerk blijft en het publieke internet niet wordt gebruikt. Dit verkleint de risico’s en verbetert de prestaties bij dataverplaatsing tussen AWS-services.

Draai de DataSync-agent veilig, volgens recente aanbevelingen voor OS-beveiliging en netwerksegmentatie. Zorg ook dat deze up-to-date is en dat AWS security group policies ongeautoriseerde toegang blokkeren.

Monitor en beheer overdrachten effectief

Effectieve monitoring helpt te garanderen dat overdrachten via AWS DataSync slagen en geoptimaliseerd zijn. Deze tutorial liet ook zien hoe je integreert met CloudWatch voor realtime tracking van taakuitvoering, overdrachtssnelheden, foutpercentages en throughput. Het beoordelen van taaklogs helpt bij het identificeren van problemen, het controleren van bestandsintegriteit en het oplossen van mislukte overdrachten.

AWS CloudWatch-grafieken met DataSync-overdrachtsmetrics, waaronder aantal overgedragen bestanden, totaal verplaatste bytes en geschreven bytes, met activiteits pieken voor twee agents.

Figuur 16 - AWS DataSync CloudWatch-monitoringdashboard met overgedragen bestanden en verplaatste bytes

Bovendien kun je met CloudWatch-alarmen meldingen ontvangen wanneer overdrachten mislukken of prestatieproblemen hebben, zodat je kunt ingrijpen voordat het grotere problemen worden.

Probleemoplossing voor AWS DataSync

Hoewel AWS DataSync gegevensoverdrachten automatiseert, kun je te maken krijgen met connectiviteitsproblemen, toestemmingsfouten of datainconsistenties. Deze sectie biedt oplossingen voor veelvoorkomende problemen, legt uit hoe je debugt met logs en zorgt voor soepele datasynchronisatie.

Veelvoorkomende fouten en hoe je ze oplost

Gebruikers van AWS DataSync kunnen tijdens overdrachten te maken krijgen met time-outs, toestemmingsproblemen of fouten in dataintegriteit. Hier zijn enkele veelvoorkomende problemen en hun oplossingen:

  • Taak-time-out of trage overdrachten
    • Oorzaak: Netwerkcongestie, bandbreedtelimieten of veel bestanden.
    • Oplossing: Verhoog bandbreedte en plan overdrachten tijdens daluren.
  • Permission denied-fouten
    • Oorzaak: IAM-rollen of NFS/SMB-toegangsbeperkingen.
    • Oplossing: Zorg dat de DataSync IAM-rol de juiste rechten heeft en controleer of NFS-export- of SMB-sharepermissies agenttoegang toestaan.
  • Problemen met dataintegriteit (beschadigde of ontbrekende bestanden)
    • Oorzaak: Onvolledige overdrachten, onderbrekingen of foutieve verificatie-instellingen.
    • Oplossing: Schakel dataverificatie in bij taakinstellingen, controleer logs op overgeslagen of mislukte bestanden en voer de taak indien nodig opnieuw uit.
  • Agent-verbindingen mislukken
    • Oorzaak: Netwerkmisconfiguratie, firewallblokkades of onjuiste activatie.
    • Oplossing: Zorg dat de agent internettoegang heeft of configureer VPC-eindpunten voor private connectiviteit. Registreer de agent opnieuw indien nodig.

Debuggen met logs en CloudWatch

Voor effectieve probleemoplossing van AWS DataSync-taken bieden logs waardevolle inzichten in mislukte overdrachten, overgeslagen bestanden en netwerkfouten. Deze tutorial liet CloudWatch-integratie zien voor het monitoren en debuggen van DataSync-uitvoeringen.

Zo bekijk je DataSync-taaklogs:

  • Navigeer naar CloudWatch Logs → Open de log group die aan de DataSync-taak is gekoppeld.
  • Zoek naar foutmeldingen of overdrachtsstoringen gerelateerd aan permissies, time-outs of netwerkfouten.

AWS CloudWatch Logs met details over DataSync-taakuitvoering, inclusief taakstart, destination host logging en voltooiingsstatus. Twee alarmen zichtbaar onder het onderdeel Alarms.

Figuur 17 - AWS CloudWatch-logstream voor DataSync-taakuitvoering

Stel vervolgens CloudWatch-alarms in voor storingen:

  • Ga naar CloudWatch Metrics → Selecteer AWS/DataSync.
  • Maak alarmen voor hoge foutpercentages, dalende overdrachtssnelheden of agentconnectiviteitsproblemen.

Conclusie

AWS DataSync vereenvoudigt geautomatiseerde, veilige en efficiënte gegevensoverdrachten tussen on-premises omgevingen en AWS-opslagservices zoals Amazon S3, EFS en FSx. Deze tutorial bood een praktische, hands-on aanpak voor het configureren van DataSync, het instellen van NFS als bron en het overzetten van data met oog voor beveiliging en prestaties.

We hebben incrementele overdrachten, taakplanning en CloudWatch-monitoring verkend om DataSync te optimaliseren voor kosten, snelheid en betrouwbaarheid. Daarnaast helpen stappen voor probleemoplossing en loganalyse om overdrachtsproblemen effectief te diagnosticeren en op te lossen.

Als je nieuw bent bij AWS of je begrip van cloudconcepten en -services wilt verdiepen, raad ik je aan deze gerelateerde leermaterialen te bekijken:

Deze cursussen zijn een geweldige manier om je basiskennis op te bouwen en je voor te bereiden op praktijksituaties in de cloud met AWS!

Rahul Sharma

Auteur

Rahul Sharma

Rahul Sharma is een AWS Ambassador, DevOps-architect en technisch blogger, gespecialiseerd in cloudcomputing, DevOps-praktijken en open-sourcetechnologieën. Met expertise in AWS, Kubernetes en Terraform maakt hij complexe concepten eenvoudiger voor zowel studenten als professionals via boeiende artikelen en tutorials. Rahul is gepassioneerd over het oplossen van DevOps-uitdagingen en het delen van inzichten om de techcommunity te versterken.

Onderwerpen

Gerelateerd