Jupyter를 열 수 없는 Amazon SageMaker AI 노트북 인스턴스 문제를 해결하려고 합니다.
해결 방법
Jupyter를 열 수 없는 SageMaker AI 노트북 인스턴스 문제를 해결하려면 다음 작업을 수행하십시오.
- SageMaker AI 콘솔에서 노트북 인스턴스 상태가 서비스 중인지 확인합니다. 상태가 보류 중이면 노트북 인스턴스가 아직 준비되지 않은 것입니다.
- 브라우저 캐시를 지웁니다. 또는 다른 브라우저를 사용하여 Jupyter 노트북에 액세스합니다.
- 브라우저 확장 프로그램 없이 Jupyter 노트북에 액세스합니다. 프록시 구성으로 인해 Jupyter 노트북이 열리지 않을 수 있습니다.
- 다른 네트워크 환경으로 전환합니다. 조직의 네트워크에서 Jupyter를 열려고 한 경우에는 홈 네트워크를 사용해 보십시오.
- 액세스를 차단하는 방화벽이 있는지 확인합니다. 로컬 시스템의 프록시 또는 바이러스 백신 소프트웨어가 WebSocket 연결을 차단할 수 있습니다.
- 브라우저의 네트워크 로그에서 WebSocket 연결 오류를 확인합니다. 로그를 보려면 브라우저 개발자 모드를 사용하십시오.
- 오류가 있는지 Jupyter 로그를 확인합니다.
여전히 Jupyter 노트북을 열 수 없는 경우 노트북 인스턴스를 다시 시작하십시오. 이 작업을 수행하면 SageMaker AI 노트북 인스턴스가 기본 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 대체합니다. 노트북 인스턴스를 정기적으로 다시 시작하여 소프트웨어를 업데이트하는 것이 좋습니다. 또한 노트북 인스턴스는 HTTP 503 및 504 브라우저 오류를 해결하는 데 도움이 될 수 있는 새 호스트로 전환됩니다.
참고: /home/ec2-user/SageMaker 파일 시스템은 노트북 인스턴스의 유일한 영구 스토리지입니다. 인스턴스를 다시 시작하면 다른 모든 데이터가 손실됩니다.
SageMaker AI 노트북 인스턴스를 다시 시작하려면 다음 단계를 완료하십시오.
- SageMaker AI 콘솔을 엽니다.
- 탐색 창에서 노트북 인스턴스를 선택합니다.
- 다시 시작하려는 노트북 인스턴스를 선택합니다.
- 작업 드롭다운 목록에서 중지를 선택합니다.
- 노트북 인스턴스가 중지됨 상태에 도달하면 작업 드롭다운 목록에서 시작을 선택합니다.
- 노트북 인스턴스 URL을 엽니다.
과부하가 발생한 노트북 인스턴스 문제 해결
다음 작업을 수행하여 과부하가 발생한 노트북 인스턴스를 해결하십시오.
열린 세션이 너무 많음
활성 세션 및 노트북이 너무 많으면 노트북을 로드하는 데 시간이 오래 걸리고 브라우저에서 시간 초과가 발생할 수 있습니다. 열린 세션을 보려면 Jupyter 대시보드에서 실행 중 탭을 확인합니다. 그런 다음, 불필요한 노트북 또는 열린 터미널 세션을 닫습니다.
높은 CPU 또는 메모리 사용률
CPU 또는 메모리 사용률을 확인하려면 다음 단계를 완료하십시오.
-
Jupyter 대시보드를 연 다음, 파일 탭을 선택합니다.
-
새로 만들기를 선택한 다음, 터미널을 선택합니다.
-
메모리 사용률을 확인합니다.
$ free -h
-
CPU 사용률을 확인합니다.
$ top
CPU 또는 메모리 사용률이 높고 추가 리소스를 확보할 수 없는 경우 다음 단계를 완료하여 더 큰 노트북 인스턴스로 전환하십시오.
- 노트북 인스턴스를 중지합니다.
- 작업 드롭다운 목록을 선택하고 설정 업데이트를 선택합니다.
- 새 노트북 인스턴스 유형을 선택한 다음, 저장을 선택합니다.
참고: 각 AWS 리전에서 사용 가능한 인스턴스 유형 목록은 Amazon SageMaker AI 요금을 참조하십시오.
- 작업 드롭다운 목록에서 시작을 선택합니다.
- 노트북 인스턴스 URL을 엽니다.
높은 디스크 사용률
디스크 사용률을 확인하려면 다음 단계를 완료하십시오.
-
Jupyter 대시보드를 연 다음, 파일 탭을 선택합니다.
-
새로 만들기를 선택한 다음, 터미널을 선택합니다.
-
SSH 세션을 시작한 다음, 디스크 사용률을 확인합니다.
$ df -h
-
파일 시스템 /home/ec2-user/SageMaker의 디스크 사용률을 확인합니다.
디스크 사용률이 높으면 /home/ec2-user/SageMaker 디렉터리에서 임시 파일을 제거하십시오.
또는 다음 단계를 완료하여 Amazon Elastic Block Store(Amazon EBS) 볼륨 크기를 늘리십시오.
- 노트북 인스턴스를 중지합니다.
- 작업 드롭다운 목록에서 설정 업데이트를 선택합니다.
- 새 볼륨 크기를 입력한 다음, 저장을 선택합니다.
참고: 기본 Amazon EBS 볼륨 크기는 5GB입니다. 볼륨 크기는 최대 16TB까지 늘릴 수 있습니다.
- 작업 드롭다운 목록에서 시작을 선택합니다.
- 노트북 인스턴스 URL을 엽니다.
수명 주기 스크립트를 연결한 후 오류 발생
다음 시나리오는 수명 주기 스크립트 문제를 일으킬 수 있습니다.
수명 주기 스크립트를 실행하는 데 5분 이상 소요
수명 주기 구성 스크립트가 실행되기 전에 노트북은 최대 5분 동안 대기합니다. 노트북을 시작할 때 패키지를 설치하는 경우 설치 프로세스가 5분 이상 걸릴 수 있습니다. 이 문제를 해결하려면 nohup 명령을 실행하여 수명 주기 스크립트가 백그라운드에서 실행되도록 하십시오.
명령 예시:
===
#!/bin/bash
set -e
nohup pip install xgboost &
=====
참고: 라이브러리를 설치하면 스크립트 실행이 중지됩니다. 스크립트가 아직 실행 중인지 확인하려면 ps 명령을 실행하십시오.
수명 주기 스크립트가 127 오류 코드와 함께 실패
이 오류는 Windows에서 스크립트를 편집하고 추가 Windows 줄바꿈 문자(CRLF) 을 편집할 때 발생합니다. 또한 이 오류는 Windows에서 스크립트를 생성한 다음, 해당 스크립트를 Unix 환경에 복사할 때도 발생합니다. Windows 및 Unix 시스템에서는 서로 다른 기호를 사용하여 줄바꿈 문자를 나타냅니다. 이 문제를 해결하려면 Unix 형식의 파일을 생성하도록 텍스트 편집기를 설정하십시오.
예를 들어 Notepad++에서는 화면 오른쪽 하단에서 문서 형식을 찾을 수 있습니다. 기본적으로 형식은 Dos\Windows로 설정되어 있습니다. Notepad++ 설정에서 형식을 Unix로 변경할 수 있습니다. 또는 편집 메뉴에서 EOL 문자를 Unix 형식으로 변환할 수 있습니다.