# Konfigurieren des Blobspeichers

Archive von GitLab müssen vorübergehend gespeichert werden, damit GitHub sie gelesen werden können.

Für die meisten Kunden empfehlen wir das Speichern von Archiven mit GitHub-owned blob storage. Dies ist der einfachste Pfad und erfordert keine zusätzliche Konfiguration.

Möglicherweise möchten Sie jedoch den Speicher mit einem externen Anbieter konfigurieren, wenn Sie über Firewallanforderungen verfügen oder Archive nach Abschluss der Migration aufbewahren müssen.

## Auswählen des Speicherorts für Archiven

Das GL2GH extension exportiert jedes GitLab-Projekt in ein Archiv und lädt dann das Archiv in blob-Speicher hoch, aus dem GitHub gelesen werden kann. Sie wählen das Speicher-Back-End aus, wenn Sie eine Migration ausführen.

| Speicheroption | Auswählen | Hinweise |
| -------------- | --------- | -------- |

GitHub-owned blob storage (empfohlen) | `--use-github-storage` | Es ist kein Setup erforderlich.
GitHub löscht das Archiv automatisch nach einer erfolgreichen Migration oder sieben Tage nach einer fehlgeschlagenen Migration.
AWS S3 |
`--aws-bucket-name` (mit den `AWS_REGION`Variablen , `AWS_ACCESS_KEY_ID`und `AWS_SECRET_ACCESS_KEY` Umgebungsvariablen und optional `AWS_SESSION_TOKEN`) | Sie besitzen den Bucket und seinen Lebenszyklus.
GitHub löscht keine Archive aus Ihrem Speicher.
Azure Blob Storage (Speicherdienst von Azure für unstrukturierte Daten) |
`AZURE_STORAGE_CONNECTION_STRING` Umgebungsvariable (für einen einzelnen `migrate-repo` Befehl können Sie stattdessen verwenden `--azure-storage-connection-string`) | Nur Zugriffstastenzeichenfolgen für Speicherkonten werden unterstützt (nicht SAS).
GitHub löscht keine Archive aus Ihrem Speicher.

## Konfigurieren des Blobspeichers

Wenn Sie verwenden GitHub-owned blob storage, müssen Sie nichts konfigurieren. Sie verwenden das `--use-github-storage` Flag, um diese Methode mit der CLI auszuwählen. Sie können jedoch die `GITHUB_OWNED_STORAGE_MULTIPART_MEBIBYTES` Variable (Standard 100 MiB, mindestens 5 MiB) auf eine niedrigere Zahl festlegen, wenn Sie über eine langsame oder proxie Verbindung verfügen.

Wenn Sie externen BLOB-Speicher verwenden, müssen Sie dies einrichten.

### Einrichten eines AWS S3-Speicherbuckets

Richte in AWS einen S3-Bucket ein. Weitere Informationen findest du unter [Erstellen von Buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) in der AWS-Dokumentation.

Außerdem benötigst du einen AWS-Zugriffsschlüssel und einen geheimen Schlüssel mit den folgenden Berechtigungen:

```json
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucketMultipartUploads",
                "s3:AbortMultipartUpload",
                "s3:ListBucket",
                "s3:DeleteObject",
                "s3:ListMultipartUploadParts"
            ],
            "Resource": [
                "arn:aws:s3:::github-migration-bucket",
                "arn:aws:s3:::github-migration-bucket/*"
            ]
        }
    ]
}
```

> \[!NOTE]
> GitHub Enterprise Importer löscht dein Archiv nach Abschluss der Migration nicht aus AWS. Zur Verringerung der Speicherkosten wird empfohlen, das automatische Löschen deines Archivs nach einem bestimmten Zeitraum zu konfigurieren. Weitere Informationen findest du unter [Festlegen der Lebenszykluskonfiguration für einen Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-set-lifecycle-configuration-intro.html) in der AWS-Dokumentation.

Wenn du bereit bist, die Migration auszuführen, musst du deine AWS-Anmeldeinformationen in der GitHub CLI angeben: Region, Zugriffsschlüssel, geheimer Schlüssel und Sitzungstoken (falls erforderlich). Du kannst sie als Argumente übergeben oder die Umgebungsvariablen `AWS_REGION`, `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` und `AWS_SESSION_TOKEN` festlegen.

Du musst auch den Namen des S3-Buckets im `--aws-bucket-name`.Argument übergeben.

### Einrichten eines Azure Blob Storage-Speicherkontos

Erstelle in Azure ein Speicherkonto, und notiere dir die Verbindungszeichenfolge. Weitere Informationen findest du unter [Verwalten von Speicherkonto-Zugriffsschlüsseln](https://learn.microsoft.com/en-gb/azure/storage/common/storage-account-keys-manage?tabs=azure-portal#regenerate-access-keys) in der Microsoft-Dokumentation.

> \[!NOTE]
> GitHub Enterprise Importer löscht dein Archiv nach Abschluss der Migration nicht aus Azure Blob Storage. Zur Verringerung der Speicherkosten wird empfohlen, das automatische Löschen deines Archivs nach einem bestimmten Zeitraum zu konfigurieren. Weitere Informationen findest du unter [Optimieren von Kosten durch automatisches Verwalten des Datenlebenszyklus](https://learn.microsoft.com/en-us/azure/storage/blobs/lifecycle-management-overview) in der Microsoft-Dokumentation.

Wenn du bereit bist, die Migration auszuführen, kannst du deine Verbindungszeichenfolge entweder als Argument an die GitHub CLI übergeben oder mithilfe der Umgebungsvariable `AZURE_STORAGE_CONNECTION_STRING` übergeben.

### Zulassen des Netzwerkzugriffs

Wenn Sie Firewallregeln für Ihr Speicherkonto konfiguriert haben, müssen Sie sicherstellen, dass Sie Zugriff auf die IP-Adressbereiche für Ihr Migrationsziel haben. Siehe [Verwalten des Zugriffs für eine Migration von GitLab zu GitHub](/de/migrations/using-github-enterprise-importer/migrate-from-gitlab/manage-access#configure-ip-allow-lists-on-github).