훈련을 위해 인증이 필요한 Docker 레지스트리 사용 - Amazon SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

훈련을 위해 인증이 필요한 Docker 레지스트리 사용

Docker 레지스트리에 인증이 필요한 경우 액세스 자격 증명을 제공하는 AWS Lambda 함수를 만들어야 합니다. SageMaker 그런 다음, 훈련 작업을 생성하고 create_training_job API 내에 이 Lambda 함수의 ARN을 제공하십시오. 마지막으로, 선택적으로 인터페이스 VPC 엔드포인트를 생성하여 VPC가 인터넷을 통해 트래픽을 전송하지 않고도 Lambda 함수와 통신할 수 있도록 할 수 있습니다. 다음 안내서는 Lambda 함수를 생성하고, 함수에 올바른 역할을 할당하고, 인터페이스 VPC 엔드포인트를 생성하는 방법을 보여줍니다.

Lambda 함수 생성

액세스 자격 증명을 SageMaker 전달하고 응답을 반환하는 AWS Lambda 함수를 만드십시오. 다음 코드 예제는 다음과 같이 Lambda 함수 핸들러를 생성합니다.

def handler(event, context): response = { "Credentials": {"Username": "username", "Password": "password"} } return response

프라이빗 Docker 레지스트리를 설정하는 데 사용되는 인증 유형에 따라 다음과 같이 Lambda 함수가 반환하는 응답의 내용이 결정됩니다.

  • 프라이빗 Docker 레지스트리가 기본 인증을 사용하는 경우 Lambda 함수는 레지스트리 인증에 필요한 사용자 이름과 암호를 반환합니다.

  • 프라이빗 Docker 레지스트리에서 보유자 토큰 인증을 사용하는 경우 사용자 이름과 암호가 권한 부여 서버로 전송되고 권한 부여 서버는 보유자 토큰을 반환합니다. 그러면 이 토큰을 사용하여 프라이빗 Docker 레지스트리를 인증합니다.

참고

동일한 계정에 레지스트리용 Lambda 함수가 두 개 이상 있고 훈련 작업에 대한 실행 역할이 동일하다면, 레지스트리 하나에 대한 훈련 작업은 다른 레지스트리의 Lambda 함수에 액세스할 수 있습니다.

Lambda 함수에 올바른 역할 권한을 부여합니다.

create_training_jobAPI에서 사용하는 IAMRole에는 함수를 호출할 권한이 있어야 합니다. AWS Lambda 다음 코드 예제는 myLambdaFunction을 호출하기 위해 IAM 역할의 권한 정책을 확장하는 방법을 보여줍니다.

{ "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:*:*:function:*myLambdaFunction*" ] }

역할 권한 정책을 편집하는 방법에 대한 자세한 내용은 https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-modify_permissions-policyAWS ID 및 액세스 관리 사용 설명서의 역할 권한 정책 수정(콘솔)을 참조하십시오.

참고

AmazonSageMakerFullAccess관리형 정책이 연결된 IAM 역할은 이름에 SageMaker "“이 포함된 모든 Lambda 함수를 호출할 수 있는 권한을 가집니다.

Lambda에 대한 인터페이스 VPC 엔드포인트를 생성하려면()

마지막으로, 인터페이스 엔드포인트를 생성할 경우, Amazon VPC가 인터넷을 통해 트래픽을 전송하지 않고도 Lambda 함수와 통신할 수 있습니다. 자세한 내용은 AWS Lambda 개발자 안내서에서 Lambda에 대한 인터페이스 VPC 엔드포인트 구성을 참조하세요.

인터페이스 엔드포인트가 생성되면 SageMaker 교육은 VPC를 통해 요청을 전송하여 Lambda 함수를 호출합니다. lambda.region.amazonaws.com 인터페이스 엔드포인트를 생성할 때 DNS 이름 활성화를 선택하면 Amazon Route 53은 Lambda 인터페이스 엔드포인트로 호출을 라우팅합니다. 다른 DNS 공급자를 사용하는 경우 lambda.region.amazonaws.com을 Lambda 인터페이스 엔드포인트에 매핑해야 합니다.