Erste Schritte mit dem lokalen Modus - Amazon SageMaker KI

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.

Erste Schritte mit dem lokalen Modus

In den folgenden Abschnitten werden die Schritte beschrieben, die für den Einstieg in den lokalen Modus in Amazon SageMaker Studio erforderlich sind, darunter:

  • Erfüllung der Voraussetzungen

  • Festlegen von EnableDockerAccess

  • Docker-Installation

Voraussetzungen

Erfüllen Sie die folgenden Voraussetzungen, um den lokalen Modus in Studio-Anwendungen zu verwenden:

  • Um Bilder aus einem Amazon Elastic Container Registry-Repository abzurufen, muss das Konto, das das Amazon ECR-Image hostet, eine Zugriffsberechtigung für die Ausführungsrolle des Benutzers bereitstellen. Die Ausführungsrolle der Domain muss auch Amazon ECR-Zugriff ermöglichen.

  • Stellen Sie sicher, dass Sie die neueste Version des Studio Python SDK verwenden, indem Sie den folgenden Befehl verwenden: 

    pip install -U sagemaker
  • Um den lokalen Modus und die lokalen Docker Funktionen zu verwenden, legen Sie DockerSettings mit der AWS Command Line Interface (AWS CLI) den folgenden Domänenparameter fest: 

    EnableDockerAccess : ENABLED
  • Mithilfe können Sie auch steuernEnableDockerAccess, ob Benutzer in der Domäne den lokalen Modus verwenden können. Standardmäßig sind der lokale Modus und die lokalen Docker Funktionen in Studio-Anwendungen nicht zulässig. Weitere Informationen finden Sie unter Festlegen von EnableDockerAccess.

  • Installieren Sie die Docker CLI in der Studio-Anwendung, indem Sie die Schritte unter befolgenDocker-Installation.

Festlegen von EnableDockerAccess

In den folgenden Abschnitten wird gezeigt, wie festgelegt wirdEnableDockerAccess, wann die Domain über einen öffentlichen Internetzugang verfügt oder sich im VPC-only Modus befindet.

Anmerkung

Änderungen, die EnableDockerAccess nur für Anwendungen gelten, die nach der Aktualisierung der Domain erstellt wurden. Nach der Aktualisierung der Domain müssen Sie eine neue Anwendung erstellen.

Öffentlicher Internetzugang

Die folgenden Beispielbefehle zeigen, wie EnableDockerAccess beim Erstellen einer neuen Domain oder beim Aktualisieren einer vorhandenen Domain mit öffentlichem Internetzugang Folgendes eingestellt wird:

# create new domain aws --region region \ sagemaker create-domain --domain-name domain-name \ --vpc-id vpc-id \ --subnet-ids subnet-ids \ --auth-mode IAM \ --default-user-settings "ExecutionRole=execution-role" \ --domain-settings '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}' \ --query DomainArn \ --output text # update domain aws --region region \ sagemaker update-domain --domain-id domain-id \ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}'

VPC-only Modus

Wenn Sie eine Domain im VPC-only Modus verwenden, werden Docker Image-Push- und Pull-Anfragen über die Service-VPC und nicht über die vom Kunden konfigurierte VPC weitergeleitet. Aufgrund dieser Funktionalität können Administratoren eine Liste vertrauenswürdiger Dateien konfigurieren, an AWS-Konten die Benutzer Amazon ECR Anfragen für Vorgänge senden und Docker abrufen können.

Wenn eine Docker Image-Push- oder Pull-Anfrage an eine Person gestellt wird AWS-Konto , die nicht in der Liste der vertrauenswürdigen Dateien aufgeführt ist AWS-Konten, schlägt die Anfrage fehl. DockerPull- und Push-Operationen außerhalb von Amazon Elastic Container Registry (Amazon ECR) werden im VPC-only Modus nicht unterstützt.

Folgendes wird standardmäßig AWS-Konten als vertrauenswürdig eingestuft:

  • Das Konto, das die SageMaker AI-Domain hostet.

  • SageMaker AI-Konten, die die folgenden SageMaker Bilder hosten:

    • DLC-Framework-Bilder

    • SklearnSpark, Bilder verarbeiten XGBoost

Um eine Liste weiterer vertrauenswürdiger Dateien zu konfigurieren AWS-Konten, geben Sie den VpcOnlyTrustedAccounts Wert wie folgt an:

aws --region region \ sagemaker update-domain --domain-id domain-id \ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED", "VpcOnlyTrustedAccounts": ["account-list"]}}'

Docker-Installation

Zur Verwendung Docker müssen Sie die Installation manuell Docker vom Terminal Ihrer Studio-Anwendung aus durchführen. Die Installationsschritte unterscheiden Docker sich, je nachdem, ob die Domain Zugang zum Internet hat oder nicht.

Internetzugang

Wenn die Domain mit öffentlichem Internetzugang oder im VPC-only Modus mit eingeschränktem Internetzugang erstellt wurde, gehen Sie zur Installation wie folgt vorDocker.

  1. (Optional) Wenn Ihre Domain im VPC-only Modus mit eingeschränktem Internetzugang erstellt wurde, erstellen Sie ein öffentliches NAT-Gateway mit Zugriff auf die Docker Website. Anweisungen finden Sie unter NAT-Gateways.

  2. Navigieren Sie zum Terminal der Studio-Anwendung, Docker in der Sie die Installation durchführen möchten.

  3. Um das Betriebssystem der Anwendung zurückzugeben, führen Sie den folgenden Befehl vom Terminal aus:

    cat /etc/os-release
  4. DockerFolgen Sie bei der Installation den Anweisungen für das Betriebssystem der Anwendung im Amazon SageMaker AI Local Mode Examples Repository.

    Folgen Sie bei der Installation beispielsweise Docker dem Ubuntu Skript unter https://github.com/aws-samples/amazon-sagemaker-local-mode/blob/main/sagemaker_studio_docker_cli_install/sagemaker- ubuntu-focal-docker-cli -install.sh und beachten Sie dabei die folgenden Überlegungen:

    • Wenn verkettete Befehle fehlschlagen, führen Sie die Befehle nacheinander aus.

    • Studio unterstützt nur Docker Version 20.10.X. und Docker Engine API-Version1.41.

    • Die folgenden Pakete sind für die Verwendung der Docker CLI in Studio nicht erforderlich und ihre Installation kann übersprungen werden:

      • containerd.io

      • docker-ce

      • docker-buildx-plugin

    Anmerkung

    Sie müssen den Docker Dienst nicht in Ihren Anwendungen starten. Die Instanz, die die Studio-Anwendung hostet, führt den Docker Dienst standardmäßig aus. Alle Docker API-Aufrufe werden automatisch über den Docker Dienst weitergeleitet.

  5. Verwenden Sie den exponierten Docker Socket für Docker Interaktionen innerhalb von Studio-Anwendungen. Standardmäßig ist der folgende Socket verfügbar:

    unix:///docker/proxy.sock

    Die folgende Umgebungsvariable der Studio-Anwendung USER verwendet standardmäßig diesen exponierten Socket:

    DOCKER_HOST

Kein Internetzugang

Wenn die Domain im VPC-only Modus ohne Internetzugang erstellt wurde, gehen Sie zur Installation wie folgt vorDocker.

  1. Navigieren Sie zum Terminal der Studio-Anwendung, Docker in der Sie die Installation durchführen möchten.

  2. Führen Sie den folgenden Befehl vom Terminal aus, um das Betriebssystem der Anwendung zurückzugeben:

    cat /etc/os-release
  3. Laden Sie die erforderlichen Docker .deb Dateien auf Ihren lokalen Computer herunter. Anweisungen zum Herunterladen der erforderlichen Dateien für das Betriebssystem der Studio-Anwendung finden Sie unter Docker Engine installieren.

    Installieren Sie beispielsweise Docker aus einem Paket auf Ubuntu und folgen Sie dabei den Schritten 1—4 unter Aus einem Paket installieren. Beachten Sie dabei die folgenden Überlegungen:

    • DockerAus einem Paket installieren. Die Verwendung anderer Methoden zur Installation von Docker schlägt fehl.

    • Installieren Sie die neuesten Pakete, die der Docker Version 20.10.X entsprechen.

    • Die folgenden Pakete sind nicht erforderlich, um die Docker CLI in Studio zu verwenden. Sie müssen Folgendes nicht installieren:

      • containerd.io

      • docker-ce

      • docker-buildx-plugin

    Anmerkung

    Sie müssen den Docker Dienst nicht in Ihren Anwendungen starten. Die Instanz, die die Studio-Anwendung hostet, führt den Docker Dienst standardmäßig aus. Alle Docker API-Aufrufe werden automatisch über den Docker Dienst weitergeleitet.

  4. Laden Sie die .deb Dateien in das Amazon EFS-Dateisystem oder in das Amazon EBS-Dateisystem der Anwendung hoch.

  5. Installieren Sie die docker-compose-plugin .deb Pakete docker-ce-cli und manuell vom Studio-Anwendungsterminal aus. Weitere Informationen und Anweisungen finden Sie in Schritt 5 unter Aus einem Paket installieren auf der Docker Docs-Website.

  6. Verwenden Sie den exponierten Docker Socket für Docker Interaktionen innerhalb von Studio-Anwendungen. Standardmäßig ist der folgende Socket verfügbar:

    unix:///docker/proxy.sock

    Die folgende Umgebungsvariable der Studio-Anwendung USER verwendet standardmäßig diesen exponierten Socket:

    DOCKER_HOST