Freigeben über


Behandeln von Problemen in AzCopy v10

In diesem Artikel werden häufige Probleme erläutert, die bei der Verwendung von AzCopy auftreten können. Dieser Artikel hilft Ihnen auch, die Ursachen der Probleme zu identifizieren und ihnen vorschläge, wie Sie sie beheben können.

Identifizieren von Problemen

Sie können feststellen, ob ein Auftrag erfolgreich ist, indem Sie sich den Exitcode ansehen.

Wenn der Exitcode lautet, wurde 0-successder Auftrag erfolgreich abgeschlossen.

Wenn der Exitcode lautet 1-error, untersuchen Sie die Protokolldatei. Nachdem Sie die genaue Fehlermeldung verstanden haben, können Sie einfacher nach den richtigen Schlüsselwörtern suchen und die Lösung ermitteln. Weitere Informationen finden Sie unter Suchen von Fehlern und Fortsetzen von Aufträgen mithilfe von Protokoll- und Plandateien in AzCopy.

Wenn der Exitcode lautet, überprüfen Sie, ob die Protokolldatei vorhanden ist 2-panic. Wenn die Datei nicht vorhanden ist, melden Sie einen Fehler, oder wenden Sie sich an die Unterstützung.

Jeder andere Exitcode ungleich 0 (z OOMKilled. B. ) kann vom System generiert werden. Informationen zu speziellen Exitcodes finden Sie in der Dokumentation ihres Betriebssystems.

Fehler "403"

Fehler vom Typ "403" sind häufig. Manchmal sind sie harmlos und verursachen keine fehlgeschlagene Übertragung. In AzCopy-Protokollen können Sie beispielsweise sehen, dass eine HEAD Anforderung fehler vom Typ "403" empfangen hat. Diese Fehler werden angezeigt, wenn AzCopy überprüft, ob eine Ressource öffentlich ist. In den meisten Fällen können Sie diese Instanzen ignorieren.

In einigen Fällen können Fehler vom Typ "403" zu einem Fehler bei der Übertragung führen. Wenn dieses Problem auftritt, schlagen andere Versuche, Dateien zu übertragen, wahrscheinlich fehl, bis Sie das Problem behoben haben. Fehler vom Typ "403" können durch Authentifizierungs- und Autorisierungsprobleme verursacht werden. Sie können auch auftreten, wenn Anforderungen durch die Firewallkonfiguration des Speicherkontos blockiert werden.

Authentifizierungs- und Autorisierungsprobleme

Fehler vom Typ "403", die die Datenübertragung verhindern, treten aufgrund von Problemen auf, die SAS-Token, Rollen der rollenbasierten Zugriffssteuerung (Azure RBAC) und Konfigurationen der Zugriffssteuerungsliste (Access Control List, ACL) betreffen.

SAS-Token

Wenn Sie ein SAS-Token (Shared Access Signature) verwenden, stellen Sie sicher, dass die folgenden Anweisungen wahr sind:

  • Die Ablauf- und Startzeiten des SAS-Tokens sind angemessen.

  • Sie haben alle erforderlichen Berechtigungen für das Token ausgewählt.

  • Sie haben das Token mithilfe eines offiziellen SDK oder Tools generiert. Versuchen Sie es, Storage-Explorer, falls noch nicht geschehen.

Azure RBAC

Wenn Sie Azure RBAC-Rollen über den azcopy login Befehl verwenden, überprüfen Sie, ob Ihrer Identität die entsprechenden Azure-Rollen zugewiesen sind (z. B. die Rolle Mitwirkender an Storage-Blobdaten).

Weitere Informationen zu Azure-Rollen finden Sie unter Zuweisen einer Azure-Rolle für den Zugriff auf Blobdaten.

Acls

Wenn Sie Zugriffssteuerungslisten (Access Control Lists, ACLs) verwenden, überprüfen Sie, ob Ihre Identität in einem ACL-Eintrag für jede Datei oder jedes Verzeichnis angezeigt wird, auf die Bzw. das Sie zugreifen möchten. Stellen Sie außerdem sicher, dass jeder ACL-Eintrag die entsprechende Berechtigungsstufe widerspiegelt.

Weitere Informationen zu ACLs und ACL-Einträgen finden Sie unter Zugriffssteuerungslisten (ACLs) in Azure Data Lake Storage Gen2.

Weitere Informationen dazu, wie Sie Azure-Rollen zusammen mit ACLs integrieren und wie das System diese auswertet, um Autorisierungsentscheidungen zu treffen, finden Sie unter Zugriffssteuerungsmodell in Azure Data Lake Storage Gen2.

Probleme mit Firewall und privaten Endpunkten

Wenn die Speicherfirewallkonfiguration keinen Zugriff von der Hostingkomponente zulässt, auf der AzCopy ausgeführt wird, geben AzCopy-Vorgänge den HTTP-Fehlercode "403" zurück.

Hinweis

In diesem Artikel bezieht sich der Begriff Hostingkomponente auf einen physischen Computer, einen virtuellen Computer (VM) oder einen Container.

Zulässiger Bereich für Kopiervorgänge

Die AllowedCopyScope -Eigenschaft eines Speicherkontos wird verwendet, um die Umgebungen anzugeben, aus denen Sie Daten in das Zielkonto kopieren können. Diese Eigenschaft wird im Azure-Portal als Konfigurationseinstellung Zulässiger Bereich für Kopiervorgänge (Vorschau) angezeigt. Standardmäßig erhält die Eigenschaft keinen Wert. Die -Eigenschaft gibt erst dann einen Wert zurück, wenn Sie ihn explizit festgelegt haben. Die AllowedCopyScope -Eigenschaft verfügt über drei mögliche Werte, wie in der folgenden Tabelle gezeigt.

Wert Beschreibung
(null) (Standardwert) Ermöglicht das Kopieren von einem beliebigen Speicherkonto in das Zielkonto.
Microsoft Entra ID Erlaubt das Kopieren nur von Konten, die sich innerhalb desselben Microsoft Entra Mandanten wie das Zielkonto befinden.
PrivateLink Ermöglicht nur das Kopieren von Speicherkonten, die private Verbindungen mit demselben virtuellen Netzwerk wie das Zielkonto aufweisen.

Weitere Informationen zu dieser Eigenschaft und der zugehörigen Konfigurationseinstellung finden Sie unter Einschränken der Quelle von Kopiervorgängen auf ein Speicherkonto.

Übertragen von Daten von oder an eine lokale Hostingkomponente

Wenn Sie Daten zwischen einem Speicherkonto und einer lokalen Hostingkomponente hochladen oder herunterladen, stellen Sie sicher, dass die Hostingkomponente, die AzCopy ausführt, entweder auf das Quell- oder Zielspeicherkonto zugreifen kann. Möglicherweise müssen Sie IP-Netzwerkregeln in den Firewalleinstellungen des Quell- oder Zielkontos verwenden, um den Zugriff von der öffentlichen IP-Adresse der Hostingkomponente zuzulassen.

Übertragen von Daten zwischen Speicherkonten

Autorisierungsfehler vom Typ "403" können verhindern, dass Sie Daten zwischen Konten übertragen, indem Sie die Clienthostingkomponente verwenden, auf der AzCopy ausgeführt wird.

Wenn Sie Daten zwischen Speicherkonten kopieren, stellen Sie sicher, dass die Hostingkomponente, die AzCopy ausführt, sowohl auf das Quell- als auch auf das Zielkonto zugreifen kann. Möglicherweise müssen Sie IP-Netzwerkregeln in den Firewalleinstellungen sowohl des Quell- als auch des Zielkontos verwenden, um den Zugriff von der öffentlichen IP-Adresse der Hostingkomponente zuzulassen. Der Dienst verwendet die IP-Adresse der AzCopy-Clienthostingkomponente, um den Quell- und Zieldatenverkehr zu autorisieren. Informationen zum Hinzufügen einer öffentlichen IP-Adresse zu den Firewalleinstellungen eines Speicherkontos finden Sie unter Gewähren des Zugriffs über einen Internet-IP-Bereich.

Falls Ihre VM keine öffentliche IP-Adresse hat oder nicht haben kann, sollten Sie einen privaten Endpunkt verwenden. Weitere Informationen finden Sie unter Verwenden privater Endpunkte für Azure Storage.

Private Link befindet sich auf der Ebene des virtuellen Netzwerks/Subnetzes. Wenn AzCopy-Anforderungen Private Link durchlaufen sollen, muss AzCopy diese Anforderungen von einer VM senden, die in diesem virtuellen Netzwerk/Subnetz ausgeführt wird. Angenommen, Sie konfigurieren Private Link in VNet1/Subnet1, aber die VM, auf der AzCopy ausgeführt wird, befindet sich in VNet1/Subnet2. In diesem Szenario verwenden AzCopy-Anforderungen keine Private Link, und es wird erwartet, dass die Anforderungen fehlschlagen.

Wenn TCP-Fehler wie "dial tcp: lookup proxy.x.x: no such host" auftreten, bedeutet dies, dass Ihre Umgebung nicht für die Verwendung des richtigen Proxys konfiguriert ist oder Sie einen erweiterten Proxy verwenden, den AzCopy nicht erkennt.

Sie müssen die Proxyeinstellungen aktualisieren, um die richtigen Konfigurationen widerzuspiegeln. Weitere Informationen finden Sie unter Konfigurieren von Proxyeinstellungen.

Sie können den Proxy auch umgehen, indem Sie die Umgebungsvariable NO_PROXY="*"festlegen.

Dies sind die Endpunkte, die AzCopy erfordert:

Anmeldeendpunkte Azure Storage-Endpunkte
login.microsoftonline.com (globales Azure) (blob | file | dfs).core.windows.net (globales Azure)
login.chinacloudapi.cn (Azure China) (blob | file | dfs).core.chinacloudapi.cn (Azure China)
login.microsoftonline.de (Azure Deutschland) (blob | file | dfs).core.cloudapi.de (Azure Deutschland)
login.microsoftonline.us (Azure US Government) (blob | file | dfs).core.usgovcloudapi.net (Azure US Government)

x509: Von unbekannter Autorität signiertes Zertifikat

Dieser Fehler bezieht sich häufig auf die Verwendung eines Proxys, der ein SSL-Zertifikat (Secure Sockets Layer) verwendet, dem das Betriebssystem nicht vertraut. Überprüfen Sie Ihre Einstellungen, und stellen Sie sicher, dass das Zertifikat auf Betriebssystemebene vertrauenswürdig ist.

Es wird empfohlen, das Zertifikat dem Stammzertifikatspeicher Ihrer Hostingkomponente hinzuzufügen, da dort die vertrauenswürdigen Autoritäten aufbewahrt werden.

Nicht erkannte Parameter

Wenn Sie eine Fehlermeldung erhalten, die besagt, dass Ihre Parameter nicht erkannt werden, stellen Sie sicher, dass Sie die richtige Version von AzCopy verwenden. AzCopy v8 und frühere Versionen sind veraltet. AzCopy v10 ist die aktuelle Version, und es handelt sich um eine vollständige Neuschreibung, die keine Syntax mit den vorherigen Versionen teilt. Weitere Informationen finden Sie im AzCopy-Migrationshandbuch für v8 zu v10.

Stellen Sie außerdem sicher, dass Sie integrierte Hilfemeldungen verwenden, azcopy copy -hindem Sie den -h Schalter zusammen mit einem beliebigen Befehl (z. B. ) verwenden. Weitere Informationen finden Sie unter Hilfe zum Abrufen von Befehlen. Informationen zum Online-Anzeigen derselben Informationen finden Sie unter azcopy copy.

Um Ihnen das Verständnis von Befehlen zu erleichtern, stellen wir ein Education-Tool bereit, das sich im AzCopy-Befehlshandbuch befindet. Dieses Tool veranschaulicht die beliebtesten AzCopy-Befehle zusammen mit den beliebtesten Befehlsflags. Beispielbefehle finden Sie unter Übertragen von Daten. Wenn Sie eine Frage haben, durchsuchen Sie zunächst vorhandene GitHub-Probleme , um festzustellen, ob sie bereits beantwortet wurden.

Fehler der Richtlinie für bedingten Zugriff

Beim Aufrufen des Befehls wird möglicherweise der azcopy login folgende Fehler angezeigt:

Fehler beim Ausführen des Anmeldebefehls: Fehler bei der Anmeldung mit tenantID "common", Azure directory endpoint "https://login.microsoftonline.com", autorest/adal/devicetoken: -REDACTED- AADSTS50005: Der Benutzer hat versucht, sich von einer Plattform (Unbekannt) bei einem Gerät anzumelden, die derzeit nicht durch die Richtlinie für bedingten Zugriff unterstützt wird. Unterstützte Geräteplattformen sind: iOS-, Android-, Mac- und Windows-Varianten. Ablaufverfolgungs-ID: -REDACTED- Korrelations-ID: -REDACTED- Zeitstempel: 2021-01-05 01:58:28Z

Dieser Fehler bedeutet, dass Ihr Administrator eine Richtlinie für bedingten Zugriff konfiguriert hat, die die Art des Geräts angibt, über das Sie sich anmelden können. AzCopy verwendet den Gerätecodeflow. Der Gerätecodeflow kann nicht garantieren, dass sich die Hostingkomponente, auf der Sie das AzCopy-Tool verwenden, auch dort befindet, wo Sie sich anmelden.

Wenn Ihr Gerät in der Liste der unterstützten Plattformen enthalten ist, können Sie möglicherweise Storage-Explorer verwenden. Storage-Explorer integriert AzCopy für alle Datenübertragungen (Token werden über den Geheimnisspeicher an AzCopy übergeben), bietet aber einen Anmeldeworkflow, der die Übergabe von Geräteinformationen unterstützt. AzCopy selbst unterstützt auch verwaltete Identitäten und Dienstprinzipale als Anmeldealternative.

Wenn Ihr Gerät nicht in der Liste der unterstützten Plattformen enthalten ist, wenden Sie sich an Ihren Administrator, um Hilfe zu erhalten.

Server ausgelastet, Netzwerkfehler oder Timeouts

Wenn eine große Anzahl fehlerhafter Anforderungen mit dem status "503 Server Ausgelastet" angezeigt wird, drosselt der Speicherdienst Ihre Anforderungen. Wenn Netzwerkfehler oder Timeouts angezeigt werden, versuchen Sie möglicherweise, zu viele Daten per Push zu übertragen, damit Ihre Infrastruktur sie verarbeiten kann. In allen Fällen ist die Problemumgehung ähnlich.

Wenn sie sehen, dass eine große Datei wiederholt nicht kopiert werden kann, weil bestimmte Blöcke jedes Mal fehlschlagen, versuchen Sie, die gleichzeitigen Netzwerkverbindungen oder das Durchsatzlimit abhängig von Ihrem spezifischen Fall zu begrenzen. Wir empfehlen Ihnen, die Leistung zunächst drastisch zu senken, zu beobachten, ob diese Aktion das anfängliche Problem gelöst hat, und dann die Leistung wieder zu steigern, bis Sie ein Gesamtgleichgewicht erreicht haben.

Weitere Informationen finden Sie unter Optimieren der Leistung von AzCopy mit Azure Storage.

Wenn Sie Daten zwischen Konten mithilfe von AzCopy kopieren, kann sich die Qualität und Zuverlässigkeit des Netzwerks, in dem Sie AzCopy ausführen, auf die Gesamtleistung auswirken. Obwohl Datenübertragungen vom Server zum Server durchgeführt werden, initiiert AzCopy Aufrufe für jede Datei, die zwischen Dienstendpunkten kopiert werden soll.

Bekannte Einschränkungen in AzCopy

  • Das Kopieren von Daten aus Government Clouds in kommerzielle Clouds wird nicht unterstützt. Das Kopieren von Daten aus kommerziellen Clouds in Government-Clouds wird jedoch unterstützt.

  • Asynchrones dienstseitiges Kopieren wird nicht unterstützt. AzCopy führt nur synchrones Kopieren aus. Mit anderen Worten, zu dem Zeitpunkt, zu dem der Auftrag abgeschlossen ist, wurden die Daten verschoben.

  • Wenn Sie beim Kopieren in eine Azure-Dateifreigabe vergessen haben, das --preserve-smb-permissions Flag anzugeben und die Daten nicht erneut übertragen möchten, sollten Sie robocopy verwenden, um die Berechtigungen zu übernehmen.

  • Azure Functions verfügt über einen anderen Endpunkt für die MSI-Authentifizierung. AzCopy unterstützt noch keine MSI-Authentifizierung.

Siehe auch

Kontaktieren Sie uns für Hilfe

Wenn Sie Fragen haben oder Hilfe mit Ihren Azure-Gutschriften benötigen, dann erstellen Sie beim Azure-Support eine Support-Anforderung oder fragen Sie den Azure Community-Support. Sie können auch Produktfeedback an die Azure Feedback Community senden.