Benutzerdefinierte SageMaker-Image-Spezifikationen für Amazon SageMaker Studio Classic - Amazon SageMaker AI

Benutzerdefinierte SageMaker-Image-Spezifikationen für Amazon SageMaker Studio Classic

Wichtig

Am 30. November 2023 wurde Amazon SageMaker Studio in Amazon SageMaker Studio umbenannt. Der folgende Abschnitt bezieht sich konkret auf die Verwendung der Studio-Classic-Anwendung. Informationen zur Verwendung der aktualisierten Studio-Konfiguration finden Sie unter Amazon SageMaker Studio.

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

Das Image wird ausgeführt

ENTRYPOINT und CMD Anweisungen werden überschrieben, damit das Image als KernelGateway-App ausgeführt werden kann.

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

Stoppen des Images

Die DeleteApp-API gibt das Äquivalent zu einem docker stop-Befehl aus. Andere Prozesse im Container erhalten die SIGKILL/SIGTERM-Signale nicht.

Kernel-Erkennung

SageMaker AI 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 die DescribeAppImageConfig-API, 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 Amazon EFS-Volume ist konfigurierbar. Standardmäßig ist der Speicherort des Verzeichnisses /home/sagemaker-user.

SageMaker AI konfiguriert POSIX-UID/GID-Zuordnungen zwischen dem Image und dem Host. Standardmäßig wird die UID/GID (0/0) des Root-Benutzers der UID/GID auf dem Host zugeordnet.

Sie können diese Werte mithilfe der CreateAppImageConfig-API angeben.

GID/UID-Grenzwerte

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

  • defaultUID: 1000 und defaultGID: 100, was einem Benutzer ohne Privilegien entspricht.

  • defaultUID: 0 und defaultGID: 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-Instance 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 NVIDIA Benutzerhandbuch.

Metriken und Protokollierung

Protokolle aus dem KernelGateway-Prozess werden im Kundenkonto an Amazon CloudWatch gesendet. Der Name der Protokollgruppe ist /aws/sagemaker/studio. Der Name des Protokollstroms 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

Die folgende Beispiel-Dockerfile 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 && \ jupyter-activity-monitor-extension \ python3 -m pip install ipykernel && \ python3 -m ipykernel install USER ${NB_UID}