

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Migrieren Sie Daten mithilfe von Rclone von Microsoft Azure Blob zu Amazon S3
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone"></a>

*Suhas Basavaraj, Aidan Keane und Corey Lane, Amazon Web Services*

## Zusammenfassung
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-summary"></a>

Dieses Muster beschreibt, wie [Rclone](https://rclone.org/) verwendet wird, um Daten vom Microsoft Azure Blob-Objektspeicher in einen Amazon Simple Storage Service (Amazon S3) -Bucket zu migrieren. Sie können dieses Muster verwenden, um eine einmalige Migration oder eine fortlaufende Synchronisation der Daten durchzuführen. Rclone ist ein in Go geschriebenes Befehlszeilenprogramm, das zum Verschieben von Daten zwischen verschiedenen Speichertechnologien von Cloud-Anbietern verwendet wird.

## Voraussetzungen und Einschränkungen
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-prereqs"></a>

**Voraussetzungen**
+ Ein aktives AWS-Konto
+ Daten, die im Azure Blob Container Service gespeichert sind

## Architektur
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-architecture"></a>

**Quelltechnologie-Stack**
+ Azure Blob-Speichercontainer

**Zieltechnologie-Stack**
+ Amazon-S3-Bucket
+ Linux-Instanz von Amazon Elastic Compute Cloud (Amazon EC2)

**Architektur**

![\[Migrieren Sie Daten von Microsoft Azure zu Amazon S3\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/6ead815d-7768-4726-b27d-97a70cd21081/images/abe69eee-632f-4ca2-abf6-3223f3f3ec94.png)


## Tools
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-tools"></a>
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) ist ein cloudbasierter Objektspeicherservice, der Sie beim Speichern, Schützen und Abrufen beliebiger Datenmengen unterstützt.
+ [Rclone](https://rclone.org/) **ist ein Open-Source-Befehlszeilenprogramm, das von rsync inspiriert wurde.** Es wird zur Verwaltung von Dateien auf vielen Cloud-Speicherplattformen verwendet.

## Best Practices
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-best-practices"></a>

Beachten Sie bei der Migration von Daten von Azure zu Amazon S3 die folgenden Überlegungen, um unnötige Kosten oder langsame Übertragungsgeschwindigkeiten zu vermeiden:
+ Erstellen Sie Ihre AWS-Infrastruktur in derselben geografischen Region wie das Azure-Speicherkonto und der Blob-Container, z. B. in der AWS-Region `us-east-1` (Nord-Virginia) und der Azure-Region. `East US`
+ Vermeiden Sie nach Möglichkeit die Verwendung von NAT Gateway, da dadurch Datenübertragungsgebühren sowohl für die eingehende als auch für die ausgehende Bandbreite anfallen.
+ Verwenden Sie einen [VPC-Gateway-Endpunkt für Amazon S3](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html), um die Leistung zu steigern.
+ Erwägen Sie die Verwendung einer EC2 Instance auf Basis des AWS Graviton2 (ARM) -Prozessors, um im Vergleich zu Intel x86-Instances geringere Kosten und eine höhere Leistung zu erzielen. Rclone ist stark querkompiliert und bietet eine vorkompilierte ARM-Binärdatei.

## Epen
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-epics"></a>

### Bereiten Sie AWS- und Azure-Cloud-Ressourcen vor
<a name="prepare-aws-and-azure-cloud-resources"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Bereiten Sie einen S3-Ziel-Bucket vor. | [Erstellen Sie einen neuen S3-Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) in der entsprechenden AWS-Region oder wählen Sie einen vorhandenen Bucket als Ziel für die Daten, die Sie migrieren möchten. | AWS-Administrator | 
| Erstellen Sie eine IAM-Instance-Rolle für Amazon EC2. | [Erstellen Sie eine neue AWS Identity and Access Management (IAM) -Rolle für Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#working-with-iam-roles). Diese Rolle gewährt Ihrer EC2 Instance Schreibzugriff auf den Ziel-S3-Bucket. | AWS-Administrator | 
| Fügen Sie der IAM-Instanzrolle eine Richtlinie hinzu. | Verwenden Sie die IAM-Konsole oder die AWS-Befehlszeilenschnittstelle (AWS CLI), um eine Inline-Richtlinie für die EC2 Instance-Rolle zu erstellen, die Schreibzugriffsberechtigungen für den S3-Ziel-Bucket gewährt. Eine Beispielrichtlinie finden Sie im Abschnitt [Zusätzliche Informationen](#migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-additional). | AWS-Administrator | 
| Starten Sie eine EC2 Instanz. | Starten Sie eine Amazon EC2 Linux-Instance, die für die Verwendung der neu erstellten IAM-Servicerolle konfiguriert ist. Diese Instanz benötigt außerdem Zugriff auf öffentliche Azure-API-Endpunkte über das Internet. Erwägen Sie die Verwendung von [AWS Graviton-basierten EC2 Instances](https://docs.aws.amazon.com/compute-optimizer/latest/ug/graviton-recommendations.html), um die Kosten zu senken. Rclone stellt ARM-kompilierte Binärdateien bereit. | AWS-Administrator | 
| Erstellen Sie einen Azure AD-Dienstprinzipal. | Verwenden Sie die Azure-CLI, um einen Azure Active Directory-Dienstprinzipal (Azure AD) zu erstellen, der schreibgeschützten Zugriff auf den Azure Blob-Quellspeichercontainer hat. Anweisungen finden Sie im Abschnitt [Zusätzliche](#migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-additional) Informationen. Speichern Sie diese Anmeldeinformationen auf Ihrer EC2 Instance am Standort`~/azure-principal.json`. | Cloud-Administrator, Azure | 

### Installieren und konfigurieren Sie Rclone
<a name="install-and-configure-rclone"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Downloaden und installieren Sie Rclone.  | Laden Sie das Befehlszeilenprogramm Rclone herunter und installieren Sie es. Installationsanweisungen finden Sie in der [Rclone-Installationsdokumentation](https://rclone.org/install/). | Allgemein AWS, Cloud-Administrator | 
| Rclone konfigurieren. | Kopieren Sie die folgende `rclone.conf` Beispieldatei. `AZStorageAccount`Ersetzen Sie es durch Ihren Azure Storage-Kontonamen und `us-east-1` durch die AWS-Region, in der sich Ihr S3-Bucket befindet. Speichern Sie diese Datei an dem Speicherort `~/.config/rclone/rclone.conf` auf Ihrer EC2 Instance.<pre>[AZStorageAccount]<br />type = azureblob<br />account = AZStorageAccount<br />service_principal_file = azure-principal.json<br /><br />[s3]<br />type = s3<br />provider = AWS<br />env_auth = true<br />region = us-east-1</pre> | Allgemein AWS, Cloud-Administrator | 
| Überprüfen Sie die Rclone-Konfiguration. | Um sicherzustellen, dass Rclone konfiguriert ist und die Berechtigungen ordnungsgemäß funktionieren, stellen Sie sicher, dass Rclone Ihre Konfigurationsdatei analysieren kann und dass auf Objekte in Ihrem Azure Blob-Container und S3-Bucket zugegriffen werden kann. Im Folgenden finden Sie beispielsweise Validierungsbefehle.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone.html) | Allgemein AWS, Cloud-Administrator | 

### Migrieren Sie Daten mit Rclone
<a name="migrate-data-using-rclone"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Migrieren Sie Daten aus Ihren Containern. | Führen Sie den Befehl Rclone [copy](https://rclone.org/commands/rclone_copy/) oder [sync](https://rclone.org/commands/rclone_sync/) aus.  **Beispiel: Kopieren**Dieser Befehl kopiert Daten aus dem Azure-Blob-Quellcontainer in den S3-Ziel-Bucket.<pre>rclone copy AZStorageAccount:blob-container s3:amzn-s3-demo-bucket1</pre>**Beispiel: Sync**Dieser Befehl synchronisiert Daten zwischen dem Azure-Blob-Quellcontainer und dem Ziel-S3-Bucket. ****<pre>rclone sync AZStorageAccount:blob-container s3:amzn-s3-demo-bucket1</pre>Wenn Sie den Befehl **sync** verwenden, werden Daten, die nicht im Quellcontainer vorhanden sind, aus dem Ziel-S3-Bucket gelöscht. | Allgemein AWS, Cloud-Administrator | 
| Synchronisieren Sie Ihre Container.  | Führen Sie nach Abschluss der ersten Kopie den Befehl Rclone **sync** für die laufende Migration aus, sodass nur neue Dateien kopiert werden, die im S3-Ziel-Bucket fehlen. | Allgemein AWS, Cloud-Administrator | 
| Stellen Sie sicher, dass die Daten erfolgreich migriert wurden.  | [Führen Sie die Befehle Rclone [lsd](https://rclone.org/commands/rclone_lsd/) und ls aus, um zu überprüfen, ob die Daten erfolgreich in den Ziel-S3-Bucket kopiert wurden.](https://rclone.org/commands/rclone_ls/) | Allgemein AWS, Cloud-Administrator | 

## Zugehörige Ressourcen
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-resources"></a>
+ [Amazon S3 S3-Benutzerhandbuch](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) (AWS-Dokumentation)
+ [IAM-Rollen für Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html) (AWS-Dokumentation)
+ [Einen Microsoft Azure Blob-Container](https://docs.microsoft.com/en-us/azure/storage/blobs/storage-quickstart-blobs-portal) erstellen (Microsoft Azure-Dokumentation)
+ [Rclone-Befehle](https://rclone.org/commands/) (Rclone-Dokumentation)

## Zusätzliche Informationen
<a name="migrate-data-from-microsoft-azure-blob-to-amazon-s3-by-using-rclone-additional"></a>

**Beispiel für eine Rollenrichtlinie für Instanzen EC2 **

Diese Richtlinie gewährt Ihrer EC2 Instance Lese- und Schreibzugriff auf einen bestimmten Bucket in Ihrem Konto. Wenn Ihr Bucket einen vom Kunden verwalteten Schlüssel für die serverseitige Verschlüsselung verwendet, benötigt die Richtlinie möglicherweise zusätzlichen Zugriff auf AWS Key Management Service (AWS KMS).

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": [
              "arn:aws:s3:::amzn-s3-demo-bucket/*",
              "arn:aws:s3:::amzn-s3-demo-bucket"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "s3:ListAllMyBuckets",
            "Resource": "arn:aws:s3:::*"
        }    
    ]
}
```

**Einen schreibgeschützten Azure AD-Dienstprinzipal erstellen**

Ein Azure-Dienstprinzipal ist eine Sicherheitsidentität, die von Kundenanwendungen, Diensten und Automatisierungstools für den Zugriff auf bestimmte Azure-Ressourcen verwendet wird. Stellen Sie sich das als Benutzeridentität (Login und Passwort oder Zertifikat) mit einer bestimmten Rolle und streng kontrollierten Zugriffsberechtigungen für Ihre Ressourcen vor. Gehen Sie wie folgt vor, um einen schreibgeschützten Dienstprinzipal zu erstellen, der die geringsten Rechte einhält und Daten in Azure vor versehentlichem Löschen schützt: 

1. Melden Sie sich bei Ihrem Microsoft Azure-Cloud-Kontoportal an und starten Sie Cloud Shell in PowerShell oder verwenden Sie die Azure-Befehlszeilenschnittstelle (CLI) auf Ihrer Workstation.

1. Erstellen Sie einen Dienstprinzipal und konfigurieren Sie ihn mit [schreibgeschütztem](https://docs.microsoft.com/en-us/azure/role-based-access-control/built-in-roles#storage-blob-data-reader) Zugriff auf Ihr Azure BLOB-Speicherkonto. Speichern Sie die JSON-Ausgabe dieses Befehls in einer lokalen Datei namens. `azure-principal.json` Die Datei wird auf Ihre EC2 Instanz hochgeladen. Ersetzen Sie die Platzhaltervariablen, die in geschweiften Klammern (`{`und`}`) angezeigt werden, durch Ihre Azure-Abonnement-ID, den Namen der Ressourcengruppe und den Namen des Speicherkontos.

   ```
   az ad sp create-for-rbac `
   --name AWS-Rclone-Reader `
   --role "Storage Blob Data Reader" `
   --scopes /subscriptions/{Subscription ID}/resourceGroups/{Resource Group Name}/providers/Microsoft.Storage/storageAccounts/{Storage Account Name}
   ```