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.
Wenn Ihre Docker-Registry eine Authentifizierung erfordert, müssen Sie eine AWS Lambda
Funktion erstellen, die Zugangsdaten für KI bereitstellt. SageMaker Erstellen Sie dann einen Trainingsauftrag und geben Sie den ARN dieser Lambda-Funktion in der create_training_job
So erstellen Sie die Lambda-Funktion:
Erstellen Sie eine AWS Lambda Funktion, die Zugangsdaten an SageMaker KI weitergibt und eine Antwort zurückgibt. Im folgenden Codebeispiel wird der Lambda-Funktionshandler wie folgt erstellt.
def handler(event, context):
response = {
"Credentials": {"Username": "username", "Password": "password"}
}
return response
Die Art der Authentifizierung, die zum Einrichten Ihrer privaten Docker-Registry verwendet wird, bestimmt den Inhalt der Antwort, die von Ihrer Lambda-Funktion zurückgegeben wird, wie folgt.
-
Wenn Ihre private Docker-Registry die Standardauthentifizierung verwendet, gibt die Lambda-Funktion den Benutzernamen und das Passwort zurück, die für die Authentifizierung bei der Registrierung erforderlich sind.
-
Wenn Ihre private Docker-Registry die Bearer-Token-Authentifizierung
verwendet, werden der Benutzername und das Passwort an Ihren Autorisierungsserver gesendet, der dann ein Bearer-Token zurückgibt. Dieses Token wird dann zur Authentifizierung bei Ihrer privaten Docker-Registry verwendet.
Anmerkung
Wenn Sie mehr als eine Lambda-Funktion für Ihre Verzeichnisse in demselben Konto haben und die Ausführungsrolle für Ihre Trainingsaufträge dieselbe ist, dann hätten Trainingsaufträge für Registry One Zugriff auf die Lambda-Funktionen für andere Verzeichnisse.
Gewähren Sie der Lambda-Funktion die korrekte Rolle.
Die IAMrole, die Sie in der create_training_job
API verwenden, muss über die Berechtigung zum Aufrufen einer AWS Lambda Funktion verfügen. Das folgende Codebeispiel zeigt, wie die Berechtigungsrichtlinie einer IAM-Rolle erweitert werden kann, um myLambdaFunction
aufzurufen.
{
"Effect": "Allow",
"Action": [
"lambda:InvokeFunction"
],
"Resource": [
"arn:aws:lambda:*:*:function:*myLambdaFunction*"
]
}
Weitere Informationen zum Bearbeiten von Rollenberechtigungsrichtlinien finden Sie unter Modifizierung einer Rollenberechtigungsrichtline (Konsole) in dem AWS Benutzerhandbuch für Identitäts- und Zugriffsmanagement.
Anmerkung
Eine IAM-Rolle mit einer angehängten AmazonSageMakerFullAccessverwalteten Richtlinie ist berechtigt, jede Lambda-Funktion aufzurufen, deren Name „SageMaker AI“ enthält.
So erstellen Sie einen Schnittstellen-VPC-Endpunkt für Lambda
Wenn Sie einen Schnittstellenendpunkt erstellen, kann Ihre Amazon VPC mit Ihrer Lambda-Funktion kommunizieren, ohne Datenverkehr über das Internet zu senden. Weitere Informationen finden Sie unterKonfigurieren von Schnittstellen-VPC-Endpunkten für LambdaimAWS Lambda Entwicklerhandbuch.
Nachdem Ihr Schnittstellenendpunkt erstellt wurde, ruft das SageMaker Training Ihre Lambda-Funktion auf, indem eine Anfrage über Ihre VPC an gesendet wird. lambda.region.amazonaws.com
Wenn Sie bei der Erstellung Ihres Schnittstellenendpunkts die Option DNS-Name aktivieren auswählen, leitet Amazon Route 53 den Anruf an den Lambda-Schnittstellenendpunkt weiter. Wenn Sie einen anderen DNS-Anbieter verwenden, müssen Sie lambda.region.amazonaws.co
, Ihrem Lambda-Schnittstellenendpunkt zuordnen.