내용으로 건너뛰기

SageMaker Studio를 VPC 전용 모드에서 사용할 때 JupyterLab 및 코드 편집기의 연결 문제를 해결하려면 어떻게 해야 합니까?

4분 분량
0

Amazon SageMaker Studio 환경을 VPC 전용 모드에서 사용할 때 JupyterLab 및 코드 편집기 스페이스에서 연결 문제가 발생합니다.

간략한 설명

가상 프라이빗 클라우드(VPC)를 올바르게 구성하지 않으면 SageMaker Studio에서 다음과 같은 문제가 발생할 수 있습니다.

  • 스페이스의 로드 화면이 응답하지 않고 Amazon CloudWatch Logs에 "Connect timeout on endpoint URL: 'https://api.sagemaker.us-east-1.amazonaws.com/'"과 유사한 오류 메시지가 표시됩니다.
  • JupyterLab 또는 코드 편집기 애플리케이션이 로드되지 않습니다.
  • 인터넷에 연결되지 않아 명령 제한 시간이 초과됩니다.
  • JupyterLab 또는 코드 편집기 확장이 예상대로 작동하지 않습니다.

해결 방법

참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.

SageMaker Studio의 보안 그룹 구성

SageMaker Studio에는 기본 기능을 위한 특정 포트 규칙이 필요하지 않지만 Amazon SageMaker AI의 아웃바운드 트래픽에 대한 규칙을 추가해야 합니다. 기본적으로 SageMaker AI는 API 통신에 HTTPS(포트 443)를 사용합니다.

SageMaker Studio에서 AWS API로 전달되는 아웃바운드 트래픽에 대한 규칙을 추가하려면 다음 단계를 완료하십시오.

  1. Amazon Virtual Private Cloud(Amazon VPC) 콘솔을 엽니다.
  2. 탐색 창에서 보안 그룹을 선택합니다.
  3. 도메인에 연결된 보안 그룹을 선택합니다.
  4. 작업을 선택한 다음, 아웃바운드 규칙 편집을 선택합니다.
  5. 규칙 추가를 선택합니다.
    유형에서 HTTPS를 선택합니다.
    대상0.0.0.0을 입력합니다.
  6. 규칙 저장을 선택합니다.

SageMaker Studio에서 액세스하려는 리소스에 따라 추가 포트 및 규칙이 필요할 수 있습니다. 예를 들어, 보안 그룹이 다음 리소스를 사용하려면 네트워크 파일 시스템(NFS) 프로토콜의 포트 2049에서 인바운드 및 아웃바운드 연결을 허용해야 합니다.

SageMaker Studio 노트북에서 VPC의 리소스에 액세스하면 서비스 계정 트래픽이 탄력적 네트워크 인터페이스를 통해 이동합니다. 도메인에서 생성한 모든 앱은 SageMaker AI 서비스 계정 VPC 내에 있습니다. 앱은 VPC에 연결된 네트워크 인터페이스를 통해 서로 통신합니다. 앱은 SageMaker Studio 도메인 서비스 계정에 속하지만 다른 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에서 실행됩니다.

새 보안 그룹을 사용하도록 SageMaker Studio 도메인의 DefaultUserSettingsDefaultSpaceSettings를 업데이트하려면 update-domain AWS CLI 명령을 실행합니다.

aws sagemaker update-domain --domain-id d-12345abcde \
--default-user-settings '{
    "SecurityGroups": ["sg-0000"]
  }' \
--default-space-settings '{
    "ExecutionRole": "arn:aws:iam::111111111:role/SageMakerRole",
    "SecurityGroups": ["sg-0000"]
  }'

참고: 위 명령을 실행하기 전에 사용자 프로필에서 InService 상태인 모든 앱을 삭제해야 합니다.

그런 다음, 필요한 보안 그룹에 연결된 도메인을 다시 생성합니다. SecurityGroups 파라미터에 대한 출력에는 SageMaker Studio가 통신에 사용하는 VPC의 모든 보안 그룹이 나열됩니다.

보안 그룹이 업데이트되었는지 확인하려면 describe-domain 명령을 실행합니다.

aws sagemaker describe-domain --domain-id d-12345abcde

그런 다음, SageMaker Studio를 시작하고 애플리케이션이 제대로 실행되는지 확인합니다. 인터넷 연결을 테스트하려면 노트북 셀에서 다음 명령을 실행합니다.

!curl amazon.com

자세한 내용은 VPC의 Studio 노트북을 외부 리소스에 연결을 참조하십시오.

서브넷에 올바른 VPC 엔드포인트가 있는지 확인

SageMaker Studio 리소스에 인터넷 액세스가 필요하지 않은 경우 NAT 게이트웨이를 추가할 필요가 없습니다. 하지만 Studio 노트북을 실행하고 기본 작업을 수행하려면 다음과 같은 엔드포인트가 필요합니다.

  • SageMaker API: com.amazonaws.your-aws-region.sagemaker.api
  • SageMaker 런타임: com.amazonaws.your-aws-region.sagemaker.runtime

참고: your-aws-region을 해당 AWS 리전으로 바꾸십시오.

Amazon Simple Storage Service(Amazon S3) 및 Amazon SageMaker 프로젝트 템플릿에 액세스하려면 다음 엔드포인트를 생성합니다.

  • Amazon S3의 경우: com.amazonaws.your-aws-region.s3
  • SageMaker 프로젝트 템플릿의 경우: com.amazonaws.your-aws-region.servicecatalog

참고: your-aws-region을 해당 리전으로 바꾸십시오.

보안 그룹을 VPC 엔드포인트와 연결하려면 다음 단계를 완료하십시오.

  1. Amazon VPC 콘솔을 엽니다.
  2. 탐색 창에서 엔드포인트를 선택합니다.
  3. 업데이트하려는 엔드포인트를 선택합니다.
  4. 작업을 선택한 다음, 보안 그룹 관리를 선택합니다.
  5. 보안 그룹을 선택합니다.
  6. 저장을 선택합니다.

자세한 내용은 SageMaker AI 훈련 작업에 Amazon VPC의 리소스에 대한 액세스 권한 부여VPC 전용 인터넷 통신을 참조하십시오.

도메인을 프라이빗 서브넷 및 활성 NAT 게이트웨이에 연결

SageMaker Studio 리소스에 인터넷 액세스가 필요한 경우 프라이빗 서브넷에 연결하도록 도메인을 구성합니다. 그런 다음, NAT 게이트웨이를 생성하고 프라이빗 서브넷의 라우팅 테이블을 통해 NAT 게이트웨이의 트래픽을 허용합니다. 자세한 내용은 Amazon VPC에서 프라이빗 서브넷용 NAT 게이트웨이를 설정하려면 어떻게 해야 합니까?를 참조하십시오.

참고: 퍼블릭 서브넷에 연결된 SageMaker Studio 도메인에서는 인터넷에 연결할 수 없습니다.

VPC가 요구 사항을 충족하는지 확인

SageMaker Studio를 VPC 전용 모드에서 시작하는 경우 VPC는 다음 요구 사항을 충족해야 합니다.

  • 서브넷에는 인스턴스에 사용할 수 있는 충분한 IP 주소가 있어야 합니다.
  • VPC 엔드포인트를 사용하여 SageMaker API를 실행하는 경우 VPC에 대해 DNS 호스트 이름 활성화DNS 지원 활성화true로 설정합니다. SageMaker AI 기능을 사용할 때 VPC는 SageMaker AI API 엔드포인트에 연결하기 위한 속성을 필요로 합니다.

구성 문제 해결

VPC 구성을 업데이트한 후에도 문제가 계속되면 애플리케이션을 다시 시작하십시오.

SageMaker Studio 사용자를 다른 실행 역할로 구성한 경우 연결 문제가 발생할 수 있습니다.

사용자의 실행 역할 권한에 해당 역할이 다음 작업을 수행할 수 있도록 하는 데 필요한 정책이 포함되어 있는지 확인하십시오.

  • CreateNetworkInterface
  • CreatePresignedDomainUrl
  • CreateSpace
  • CreateApp
  • DescribeApp
AWS 공식업데이트됨 6달 전