AWS Glue 개발 엔드포인트로 지원되는 Amazon SageMaker 노트북 인스턴스를 시작할 수 없는 이유는 무엇입니까?

3분 분량
0

AWS Glue 개발 엔드포인트로 지원되는 내 Amazon SageMaker 노트북 인스턴스의 시간이 초과되어 다음 오류가 발생합니다. "Notebook Instance Lifecycle Config 'arn:aws:sagemaker:us-xxxx-x:xxxxxx:notebook-instance-lifecycle-config/mylifecycleconfig' for Notebook Instance 'arn:aws:sagemaker:us-xxxx-x:xxxxxx:notebook-instance/mynotebook' took longer than 5 minutes. Please check your CloudWatch logs for more details if your Notebook Instance has Internet access."

해결 방법

이 오류는 AWS Glue 개발 엔드포인트의 Apache Livy 서비스가 노트북이 실행되는 서버와 통신할 수 없음을 의미할 수 있습니다. 이 문제의 가장 일반적인 이유는 노트북에 연결된 수명 주기 구성이 존재하지 않는 개발 엔드포인트를 참조할 수 있기 때문입니다. SageMaker 수명 주기 스크립트는 개발 엔드포인트에서 실행되는 Livy 서버에 대해 REST API를 호출하도록 SparkMagic 플러그인을 구성하는 데 사용됩니다. 이러한 구성 요소가 함께 작동하는 방법에 대한 자세한 내용은 AWS Glue 개발 엔드포인트가 SageMaker 노트북에서 작동하는 방식을 참조하세요.

이 문제를 해결하려면 다음 문제 해결 옵션을 시도해 보십시오.

새로운 개발 엔드포인트 생성

사용 중인 엔드포인트와 동일한 이름 및 구성을 통해 새 AWS Glue 개발 엔드포인트를 생성합니다. 자세한 내용은 개발 엔드포인트 추가를 참조하세요.

노트북 인스턴스의 수명 주기 구성 업데이트

다음 조건 중 하나에 해당하는 경우 실패한 노트북 인스턴스의 수명 주기 구성을 업데이트해야 합니다.

  • 다른 이름으로 개발 엔드포인트를 생성했습니다.
  • 이전에 생성한 개발 엔드포인트를 사용하려고 합니다.

노트북의 수명 주기 구성을 업데이트하려면 다음을 수행합니다.

1.    SageMaker 콘솔을엽니다.

2.    탐색 창의 **노트북(Notebook)**에서 **수명 주기 구성(Lifecycle configurations)**을 선택합니다.

3.    실패한 노트북 인스턴스의 수명 주기 구성을 선택합니다.

4.    **편집(Edit)**을 선택합니다.

5.    스크립트(Script) 섹션에서 노트북 시작노트북 생성 스크립트 모두에 대하여 다음 명령의 개발 엔드포인트 이름을 생성한 엔드포인트(example_new_dev_endpoint)의 이름으로 변경합니다.

AWS Glue 개발 엔드포인트의 리전을 사용하여 명령에서 us-east-1을 업데이트해야 합니다.

aws glue get-dev-endpoint --endpoint-name example_new_dev_endpoint --endpoint https://glue.us-east-1.amazonaws.com

참고: 개발 엔드포인트 액세스에 필요한 권한이 SageMaker 노트북에 있는지 확인하십시오.

노트북 데이터 복구

SageMaker에 액세스할 수 있는 경우 노트북 복구를 고려할 수 있지만 새 개발 엔드포인트를 생성할 수는 없습니다.

노트북 데이터를 복구하려면 다음 단계를 수행하십시오.

  1. SageMaker 콘솔을 엽니다.
  2. 탐색 창의 **노트북(Notebook)**에서 **노트북 인스턴스(Notebook instances)**를 선택합니다.
  3. 복구할 노트북을 선택합니다.
  4. 노트북 상태가 중지됨(Stopped) 이 아닌 경우 작업(Actions) 을 선택한 다음 **중지(Stop)**를 선택하여 노트북 인스턴스를 중지합니다.
    노트북 인스턴스 상태가 **중지 중(Stopping)**으로 변경되는 것을 확인할 수 있습니다. 상태가 **중지됨(Stopped)**으로 변경될 때까지 기다렸다가 나머지 단계를 완료합니다.
  5. **작업(Actions)**를 선택한 후 **업데이트 설정(Update settings)**을 선택합니다.
  6. 노트북 인스턴스 편집(Edit notebook instance) 페이지의 **추가 구성(Additional Configuration)**에서 **수명 주기 구성(Lifecycle configuration)**에 대해 **구성 없음(No configuration)**을 선택합니다.
  7. **노트북 인스턴스 업데이트(Update Notebook Instance)**를 선택합니다.

노트북 인스턴스 상태가 **업데이트 중(Updating)**으로 변경됩니다. 노트북 인스턴스 업데이트가 완료되면 상태가 **중지됨(Stopped)**으로 변경됩니다. 인스턴스를 시작하려면 **시작(Start)**을 선택합니다. 인스턴스가 시작된 후 Jupyter 및 JupyterLab에 액세스하여 스크립트와 데이터를 로컬로 다운로드할 수 있습니다. 하지만 AWS Glue 개발 엔드포인트에는 계속 연결할 수 없습니다.

중요: 나중에 데이터가 손실되지 않도록 스크립트를 GitHub 리포지토리에 연결할 수 있습니다.

참고: 라이브러리를 설치하려고 할 때 수명 주기 구성 시간이 초과되면 라이브러리를 설치하려 할 때 수명 주기 구성이 시간 초과된 경우, 수동으로 설치한 라이브러리가 Amazon SageMaker에서 유지되도록 하려면 어떻게 해야 합니까?를 참조하세요.


관련 정보

자습서: 개발 엔드포인트와 함께 SageMaker 노트북 사용

AWS Glue 콘솔의 SageMaker 노트북

AWS Glue 콘솔에서 노트북 작업

SageMaker 노트북에 대한 IAM 정책 만들기

AWS 공식
AWS 공식업데이트됨 2년 전