내용으로 건너뛰기

SageMaker AI Studio에서 예약된 노트북 작업을 실행하려고 할 때 발생하는 오류를 해결하려면 어떻게 해야 합니까?

3분 분량
0

Amazon SageMaker AI Studio에서 예약된 노트북 작업을 실행하려고 할 때 발생하는 오류를 해결하고 싶습니다.

해결 방법

AccessDenied 오류 해결

예약된 노트북 작업을 실행하려고 하면 다음과 같은 이유로 ‘AccessDenied’ 오류가 발생할 수 있습니다.

  • 필요한 AWS Identity and Access Management(IAM) 정책이 없습니다.
  • 필요한 Amazon Virtual Private Cloud(Amazon VPC) 엔드포인트 정책이 없습니다.
  • 리소스 태그 예외가 있습니다.

IAM 정책 문제

기본 신뢰 관계를 허용하려면 노트북에 다음과 같은 정책이 IAM 역할에 연결되어 있어야 합니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "sagemaker.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    },
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "events.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

IAM 역할에 다음과 같은 권한이 있는지 확인합니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "iam:PassRole",
      "Resource": "arn:aws:iam::*:role/*",
      "Condition": {
        "StringLike": {
          "iam:PassedToService": [
            "sagemaker.amazonaws.com",
            "events.amazonaws.com"
          ]
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "events:TagResource",
        "events:DeleteRule",
        "events:PutTargets",
        "events:DescribeRule",
        "events:PutRule",
        "events:RemoveTargets",
        "events:DisableRule",
        "events:EnableRule"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/sagemaker:is-scheduling-notebook-job": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:CreateBucket",
        "s3:PutBucketVersioning",
        "s3:PutEncryptionConfiguration"
      ],
      "Resource": "arn:aws:s3:::sagemaker-automated-execution-*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "sagemaker:ListTags"
      ],
      "Resource": [
        "arn:aws:sagemaker:*:*:user-profile/*",
        "arn:aws:sagemaker:*:*:space/*",
        "arn:aws:sagemaker:*:*:training-job/*",
        "arn:aws:sagemaker:*:*:pipeline/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "sagemaker:AddTags"
      ],
      "Resource": [
        "arn:aws:sagemaker:*:*:training-job/*",
        "arn:aws:sagemaker:*:*:pipeline/*"
      ]
    },
    {
      "Effect": "Allow",
      "Action": [
        "ec2:CreateNetworkInterface",
        "ec2:CreateNetworkInterfacePermission",
        "ec2:CreateVpcEndpoint",
        "ec2:DeleteNetworkInterface",
        "ec2:DeleteNetworkInterfacePermission",
        "ec2:DescribeDhcpOptions",
        "ec2:DescribeNetworkInterfaces",
        "ec2:DescribeRouteTables",
        "ec2:DescribeSecurityGroups",
        "ec2:DescribeSubnets",
        "ec2:DescribeVpcEndpoints",
        "ec2:DescribeVpcs",
        "ecr:BatchCheckLayerAvailability",
        "ecr:BatchGetImage",
        "ecr:GetDownloadUrlForLayer",
        "ecr:GetAuthorizationToken",
        "s3:ListBucket",
        "s3:GetBucketLocation",
        "s3:GetEncryptionConfiguration",
        "s3:PutObject",
        "s3:DeleteObject",
        "s3:GetObject",
        "sagemaker:DescribeDomain",
        "sagemaker:DescribeUserProfile",
        "sagemaker:DescribeSpace",
        "sagemaker:DescribeStudioLifecycleConfig",
        "sagemaker:DescribeImageVersion",
        "sagemaker:DescribeAppImageConfig",
        "sagemaker:CreateTrainingJob",
        "sagemaker:DescribeTrainingJob",
        "sagemaker:StopTrainingJob",
        "sagemaker:Search",
        "sagemaker:CreatePipeline",
        "sagemaker:DescribePipeline",
        "sagemaker:DeletePipeline",
        "sagemaker:StartPipelineExecution"
      ],
      "Resource": "*"
    }
  ]
}

자세한 내용은 SageMaker AI 노트북의 AWS 관리형 정책을 참조하십시오.

VPC 엔드포인트 문제

Amazon VPC 엔드포인트를 통해 노트북 작업을 시작하는 경우 엔드포인트 구성 및 정책을 확인하십시오. 필수 단계를 완료하고 관련 AWS 서비스 엔드포인트의 모범 사례를 따라야 합니다.

Amazon S3 VPC 엔드포인트의 경우 단일 AWS 계정으로 제한한 엔드포인트와 관련된 오류가 발생할 수 있습니다. 예를 들어 다음 정책은 ID 111122223333 계정에 대한 액세스를 제한합니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowSpecificAccountsPermission",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "s3:ResourceAccount": "111122223333"
        }
      }
    }
  ]
}

이 문제를 해결하려면 사용자 작업에 대해 다음 S3 버킷 액세스도 허용해야 합니다.

{
  "Action": [
    "s3:*"
  ],
  "Resource": [
    "arn:aws:s3:::sagemakerheadlessexecution-prod-*",
    "arn:aws:s3:::sagemakerheadlessexecution-prod-*/*"
  ],
  "Effect": "Allow",
  "Sid": "SCTASK14554266"
}

리소스 태그 예외

IAM 정책에 다음과 같은 권한이 있는지 확인하십시오.

{
  "Effect": "Allow",
  "Action": [
    "events:TagResource",
    "events:DeleteRule",
    "events:PutTargets",
    "events:DescribeRule",
    "events:PutRule",
    "events:RemoveTargets",
    "events:DisableRule",
    "events:EnableRule"
  ],
  "Resource": "*",
  "Condition": {
    "StringEquals": {
      "aws:ResourceTag/sagemaker:is-scheduling-notebook-job": "true"
    }
  }
}

UI 오류 해결

노트북 작업 만들기, 설명, 업데이트, 중지 또는 삭제를 시도할 때 UI 오류가 발생할 수 있습니다. 작업 정의(예약된 작업)를 사용하면 이 오류가 발생할 수도 있습니다. 문제를 해결하려면 UI에 표시되는 오류 메시지를 검토하십시오. 이 메시지에는 문제 해결을 위한 지침이나 권장 작업이 포함될 수 있습니다.

오류를 해결할 수 없는 경우 다음 단계를 완료하십시오.

  1. 오류 스크린샷을 찍어 이미지 파일로 저장합니다.

  2. UI 오류가 발생할 때 네트워크 트래픽을 캡처하는 HTTP 아카이브(HAR) 파일을 만듭니다.

  3. SageMaker AI Studio의 Jupyter 서버 터미널을 엽니다. 파일, 새로 만들기, 터미널을 선택합니다.

  4. /var/log/app/app_container.log의 로그에서 UI 오류 발생 시점의 예외, 오류 또는 경고를 확인합니다.

  5. AWS Support에 문의합니다. 요청 시 오류 스크린샷, app_container.log 및 HAR 파일을 첨부합니다.

AWS 공식업데이트됨 7달 전