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.
Richten Sie Remote IDE ein
Nachdem die Administratoren die Anweisungen unter abgeschlossen habenConnect Sie Ihre Remote-IDE mit SageMaker Räumen mit Fernzugriff, können Sie Ihre Remote-IDE mit Ihren SageMaker Remote-Spaces verbinden.
Einrichten Ihrer lokalen Umgebung
Installieren Sie Ihre bevorzugte Remote-IDE auf Ihrem lokalen Computer:
Informationen zu den Versionsanforderungen finden Sie unterAnforderungen an die IDE-Version.
Connect zu Ihrer Remote IDE her
Bevor Sie eine Verbindung von Ihrer Remote-IDE zu Ihren SageMaker Remote-Spaces herstellen können, muss Ihr Administrator dies tunEinrichten des Remotezugriffs. Ihr Administrator richtet eine bestimmte Methode ein, mit der Sie eine Verbindung herstellen können. Wählen Sie die Methode aus, die für Sie eingerichtet wurde.
Methode 1: Deep-Link von der Studio-Benutzeroberfläche
Gehen Sie wie folgt vor, um per Deep-Link eine Verbindung herzustellen.
-
Starten Sie Amazon SageMaker Studio.
-
Navigieren Sie in der Studio-Benutzeroberfläche zu Ihrem Bereich.
-
Wählen Sie „In VS Code öffnen“, „In Kiro öffnen“ oder „In Cursortaste öffnen“ für Ihre bevorzugte IDE. Stellen Sie sicher, dass Ihre bevorzugte IDE bereits auf Ihrem lokalen Computer installiert ist.
-
Bestätigen Sie, dass Sie Ihre IDE öffnen möchten, wenn Sie dazu aufgefordert werden. Ihre IDE wird mit einem weiteren Popup-Fenster zur Bestätigung geöffnet. Sobald der Vorgang abgeschlossen ist, wird die Fernverbindung hergestellt.
Gehen Sie wie folgt vor, um eine Verbindung mithilfe des AWS Toolkit for Visual Studio Code herzustellen. Diese Methode ist für VS Code, Kiro und Cursor verfügbar.
-
Öffnen Sie Ihre Remote-IDE (VS Code, Kiro oder Cursor).
-
Öffnen Sie die AWS Toolkit-Erweiterung.
-
Verbinden mit AWS.
-
Erweitern Sie im AWS Explorer SageMaker AI und dann Studio.
-
Suchen Sie Ihren Studio-Bereich.
-
Wählen Sie das Symbol Verbinden neben Ihrem Bereich aus, um ihn zu starten.
-
Beenden Sie den Service und starten Sie ihn erneut im Toolkit für Visual Studio, um den Remotezugriff zu aktivieren, falls noch keine Verbindung besteht.
-
Wenn der Bereich keine unterstützte Instance-Größe verwendet, werden Sie aufgefordert, die Instance zu ändern.
Methode 3: Herstellen einer Verbindung vom Terminal über SSH-CLI
Wählen Sie eine der folgenden Plattformoptionen, um das Verfahren zum Herstellen einer Verbindung mithilfe der SSH-CLI anzuzeigen.
- Linux/macOS
-
Erstellen Sie ein Shell-Skript (zum Beispiel /home/user/sagemaker_connect.sh):
#!/bin/bash
# Disable the -x option if printing each command is not needed.
set -exuo pipefail
SPACE_ARN="$1"
AWS_PROFILE="${2:-}"
# Validate ARN and extract region
if [[ "$SPACE_ARN" =~ ^arn:aws[-a-z]*:sagemaker:([a-z0-9-]+):[0-9]{12}:space\/[^\/]+\/[^\/]+$ ]]; then
AWS_REGION="${BASH_REMATCH[1]}"
else
echo "Error: Invalid SageMaker Studio Space ARN format."
exit 1
fi
# Optional profile flag
PROFILE_ARG=()
if [[ -n "$AWS_PROFILE" ]]; then
PROFILE_ARG=(--profile "$AWS_PROFILE")
fi
# Start session
START_SESSION_JSON=$(aws sagemaker start-session \
--resource-identifier "$SPACE_ARN" \
--region "${AWS_REGION}" \
"${PROFILE_ARG[@]}")
# Extract fields using grep and sed
SESSION_ID=$(echo "$START_SESSION_JSON" | grep -o '"SessionId": "[^"]*"' | sed 's/.*: "//;s/"$//')
STREAM_URL=$(echo "$START_SESSION_JSON" | grep -o '"StreamUrl": "[^"]*"' | sed 's/.*: "//;s/"$//')
TOKEN=$(echo "$START_SESSION_JSON" | grep -o '"TokenValue": "[^"]*"' | sed 's/.*: "//;s/"$//')
# Validate extracted values
if [[ -z "$SESSION_ID" || -z "$STREAM_URL" || -z "$TOKEN" ]]; then
echo "Error: Failed to extract session information from sagemaker start session response."
exit 1
fi
# Call session-manager-plugin
session-manager-plugin \
"{\"streamUrl\":\"$STREAM_URL\",\"tokenValue\":\"$TOKEN\",\"sessionId\":\"$SESSION_ID\"}" \
"$AWS_REGION" "StartSession"
-
Machen Sie das Skript ausführbar:
chmod +x /home/user/sagemaker_connect.sh
-
Konfigurieren Sie $HOME/.ssh/config, um den folgenden Eintrag hinzuzufügen:
Host space-name
HostName 'arn:PARTITION:sagemaker:us-east-1:111122223333:space/domain-id/space-name'
ProxyCommand '/home/user/sagemaker_connect.sh' '%h'
ForwardAgent yes
AddKeysToAgent yes
StrictHostKeyChecking accept-new
Die PARTITION kann beispielsweise aws sein.
Wenn Sie ein benanntes AWS Anmeldeinformationsprofil verwenden müssen, ändern Sie den Proxybefehl wie folgt:
ProxyCommand '/home/user/sagemaker_connect.sh' '%h' YOUR_CREDENTIAL_PROFILE_NAME
ssh space-name
scp file_abc space-name:/tmp/
- Windows
-
Voraussetzungen für Windows:
Erstellen Sie ein PowerShell Skript (zum Beispiel): C:\Users\user-name\sagemaker_connect.ps1
# sagemaker_connect.ps1
param(
[Parameter(Mandatory=$true)]
[string]$SpaceArn,
[Parameter(Mandatory=$false)]
[string]$AwsProfile = ""
)
# Enable error handling
$ErrorActionPreference = "Stop"
# Validate ARN and extract region
if ($SpaceArn -match "^arn:aws[-a-z]*:sagemaker:([a-z0-9-]+):[0-9]{12}:space\/[^\/]+\/[^\/]+$") {
$AwsRegion = $Matches[1]
} else {
Write-Error "Error: Invalid SageMaker Studio Space ARN format."
exit 1
}
# Build AWS CLI command
$awsCommand = @("sagemaker", "start-session", "--resource-identifier", $SpaceArn, "--region", $AwsRegion)
if ($AwsProfile) {
$awsCommand += @("--profile", $AwsProfile)
}
try {
# Start session and capture output
Write-Host "Starting SageMaker session..." -ForegroundColor Green
$startSessionOutput = & aws @awsCommand
# Try to parse JSON response
try {
$sessionData = $startSessionOutput | ConvertFrom-Json
} catch {
Write-Error "Failed to parse JSON response: $_"
Write-Host "Raw response was:" -ForegroundColor Yellow
Write-Host $startSessionOutput
exit 1
}
$sessionId = $sessionData.SessionId
$streamUrl = $sessionData.StreamUrl
$token = $sessionData.TokenValue
# Validate extracted values
if (-not $sessionId -or -not $streamUrl -or -not $token) {
Write-Error "Error: Failed to extract session information from sagemaker start session response."
Write-Host "Parsed response was:" -ForegroundColor Yellow
Write-Host ($sessionData | ConvertTo-Json)
exit 1
}
Write-Host "Session started successfully. Connecting..." -ForegroundColor Green
# Create session manager plugin command
$sessionJson = @{
streamUrl = $streamUrl
tokenValue = $token
sessionId = $sessionId
} | ConvertTo-Json -Compress
# Escape the JSON string
$escapedJson = $sessionJson -replace '"', '\"'
# Call session-manager-plugin
& session-manager-plugin "$escapedJson" $AwsRegion "StartSession"
} catch {
Write-Error "Failed to start session: $_"
exit 1
}
Host space-name
HostName "arn:aws:sagemaker:us-east-1:111122223333:space/domain-id/space-name"
ProxyCommand "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy RemoteSigned -File "C:\\Users\\user-name\\sagemaker_connect.ps1" "%h"
ForwardAgent yes
AddKeysToAgent yes
User sagemaker-user
StrictHostKeyChecking accept-new