Benutzerdefinierte SageMaker Bildspezifikationen - Amazon SageMaker

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.

Benutzerdefinierte SageMaker Bildspezifikationen

Wichtig

Seit dem 30. November 2023 heißt das vorherige Amazon SageMaker Studio-Erlebnis jetzt Amazon SageMaker Studio Classic. Der folgende Abschnitt bezieht sich speziell auf die Verwendung der Studio Classic-Anwendung. Informationen zur Verwendung der aktualisierten Studio-Oberfläche finden Sie unterAmazon SageMaker Studio.

Die folgenden Spezifikationen gelten für das Container-Image, das durch eine SageMaker Image-Version dargestellt wird.

Das Image wird ausgeführt

ENTRYPOINTund CMD Anweisungen werden außer Kraft gesetzt, damit das Image als App ausgeführt werden kann. KernelGateway

Port 8888 im Image ist für den Betrieb des KernelGateway Webservers reserviert.

Stoppen des Images

Der DeleteApp API gibt das Äquivalent eines docker stop Befehls aus. Andere Prozesse im Container erhalten die SIGKILL SIGTERM /-Signale nicht.

Kernel-Erkennung

SageMaker erkennt Kernel, wie sie in den Jupyter-Kernelspezifikationen definiert sind.

Sie können eine Liste von Kerneln angeben, die angezeigt werden sollen, bevor das Image ausgeführt wird. Wenn nicht angegeben, wird Python3 angezeigt. Verwenden Sie den DescribeAppImageConfigAPI, um die Liste der Kernel anzuzeigen.

Conda-Umgebungen werden standardmäßig als Kernel-Spezifikationen erkannt.

Dateisystem

Die Verzeichnisse /opt/.sagemakerinternal und /opt/ml sind reserviert. Alle Daten in diesen Verzeichnissen sind zur Laufzeit möglicherweise nicht sichtbar.

Benutzerdaten

Jeder Benutzer in einer Domain erhält ein Benutzerverzeichnis auf einem gemeinsam genutzten Amazon Elastic File System-Volume im Image. Der Speicherort des aktuellen Benutzerverzeichnisses auf dem EFS Amazon-Volume ist konfigurierbar. Standardmäßig ist der Speicherort des Verzeichnisses /home/sagemaker-user.

SageMaker konfiguriert POSIXUID/GIDZuordnungen zwischen dem Image und dem Host. Standardmäßig werden dieUID/GID(0/0) des Root-Benutzers dem/auf dem UID Host zugeordnet. GID

Sie können diese Werte mit dem angeben. CreateAppImageConfigAPI

GID/UIDGrenzwerte

Amazon SageMaker Studio Classic unterstützt nur die folgenden DefaultUID und DefaultGID Kombinationen:

  • StandardUID: 1000 und StandardGID: 100, was einem Benutzer ohne Privilegien entspricht.

  • StandardUID: 0 und StandardGID: 0, was dem Root-Zugriff entspricht.

Metadaten

Eine Metadatendatei befindet sich unter. /opt/ml/metadata/resource-metadata.json Den im Image definierten Variablen werden keine zusätzlichen Umgebungsvariablen hinzugefügt. Weitere Informationen finden Sie unter Abrufen von App-Metadaten.

GPU

Auf einer GPU Instanz wird das Image mit der --gpus Option ausgeführt. Nur das CUDA Toolkit sollte im Image enthalten sein, nicht die NVIDIA Treiber. Weitere Informationen finden Sie im NVIDIABenutzerhandbuch.

Metriken und Protokollierung

Protokolle des KernelGateway Prozesses werden CloudWatch im Kundenkonto an Amazon gesendet. Der Name der Protokollgruppe ist /aws/sagemaker/studio. Der Name des Protokollstream ist $domainID/$userProfileName/KernelGateway/$appName.

Größe des Images

Limitiert auf 35 GB. Führen Sie den Befehl aus, um die Größe Ihres Images anzuzeigendocker image ls.

Beispiel-Dockerfile

Das folgende Dockerfile-Beispiel erstellt ein Image, das auf Amazon Linux 2 basiert, installiert Pakete von Drittanbietern und den python3 Kernel und legt den Bereich auf den Benutzer ohne Zugriffsrechte fest.

FROM public.ecr.aws/amazonlinux/amazonlinux:2 ARG NB_USER="sagemaker-user" ARG NB_UID="1000" ARG NB_GID="100" RUN \ yum install --assumeyes python3 shadow-utils && \ useradd --create-home --shell /bin/bash --gid "${NB_GID}" --uid ${NB_UID} ${NB_USER} && \ yum clean all && \ python3 -m pip install ipykernel && \ python3 -m ipykernel install USER ${NB_UID}