기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
VPC 인터페이스 엔드포인트를 통해 노트북 인스턴스에 연결
퍼블릭 인터넷을 통해 연결하는 대신 Virtual Private Cloud(VPC)의 인터페이스 엔드포인트를 통해 VPC에서 노트북 인스턴스에 연결할 수 있습니다. VPC 인터페이스 엔드포인트를 사용하는 경우 VPC와 노트북 인스턴스 간의 통신은 모두 AWS 네트워크에서 안전하게 수행됩니다.
SageMaker 노트북 인스턴스는 AWS PrivateLink로 구동되는 Amazon Virtual Private Cloud(VPC) 인터페이스 엔드포인트를 지원합니다. 각 VPC 엔드포인트는 하나 이상의 탄력적 네트워크 인터페이스 및 VPC 서브넷의 프라이빗 IP 주소로 표현됩니다.
참고
노트북 인스턴스에 연결할 인터페이스 VPC 엔드포인트를 생성하려면 SageMaker API에 연결할 인터페이스 VPC 엔드포인트를 생성합니다. 이러한 방식으로 사용자가 CreatePresignedNotebookInstanceUrl을 호출하여 노트북 인스턴스에 연결하기 위한 URL을 얻으면 해당 호출 역시 인터페이스 VPC 엔드포인트를 통과합니다. 자세한 내용은 VPC 내에서 SageMaker AI에 연결을 참조하세요.
인터페이스 엔드포인트를 생성하여 AWS Management Console 또는 AWS Command Line Interface (AWS CLI) 명령을 사용하여 노트북 인스턴스에 연결할 수 있습니다. 자세한 내용은 인터페이스 엔드포인트 생성을 참조하세요. 노트북 인스턴스에 연결하려는 VPC에 있는 모든 서브넷에 대해 인터페이스 엔드포인트를 생성해야 합니다.
인터페이스 엔드포인트를 생성할 때 서비스 이름으로 aws.sagemaker.Region
.notebook을 지정합니다. VPC 엔드포인트를 만든 후에는 VPC 엔드포인트에 대해 프라이빗 DNS를 사용하도록 설정합니다. SageMaker API, AWS CLI또는 콘솔을 사용하여 VPC 내에서 노트북 인스턴스에 연결하는 사람은 누구나 퍼블릭 인터넷 대신 VPC 엔드포인트를 통해 노트북 인스턴스에 연결합니다.
SageMaker 노트북 인스턴스는 Amazon VPC와 SageMaker AI를 모두 사용할 수 AWS 리전 있는 모든에서 VPC 엔드포인트를 지원합니다. https://docs.aws.amazon.com/general/latest/gr/rande.html#vpc_region
VPC에 프라이빗 네트워크 연결
VPC를 통해 노트북 인스턴스에 연결하려면 VPC 내에 있는 인스턴스에서 연결하거나 AWS Virtual Private Network (AWS VPN) 또는를 사용하여 프라이빗 네트워크를 VPC에 연결해야 합니다 AWS Direct Connect. 에 대한 자세한 내용은 Amazon Virtual Private Cloud 사용 설명서의 VPN 연결을 AWS VPN참조하세요. https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html 에 대한 자세한 내용은 AWS Direct Connect 사용 설명서의 연결 생성을 AWS Direct Connect참조하세요. https://docs.aws.amazon.com/directconnect/latest/UserGuide/create-connection.html
SageMaker AI 노트북 인스턴스에 대한 VPC 엔드포인트 정책 생성
SageMaker 노트북 인스턴스에 대해 Amazon VPC 엔드포인트 정책을 생성하여 다음을 지정할 수 있습니다.
-
작업을 수행할 수 있는 보안 주체.
-
수행할 수 있는 작업.
-
작업을 수행할 수 있는 리소스.
자세한 내용은 Amazon VPC 사용 설명서의 VPC 엔드포인트를 통해 서비스에 대한 액세스 제어를 참조하세요.
다음 VPC 엔드포인트 정책 예제에서는 엔드포인트에 대한 액세스 권한이 있는 모든 사용자가 myNotebookInstance
이름의 노트북 인스턴스에 액세스할 수 있도록 지정합니다.
{ "Statement": [ { "Action": "sagemaker:CreatePresignedNotebookInstanceUrl", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:123456789012:notebook-instance/myNotebookInstance", "Principal": "*" } ] }
다른 노트북 인스턴스에 대한 액세스가 거부되었습니다.
VPC 내에서 연결에 대한 액세스 제한
VPC 내에서 인터페이스 엔드포인트를 설정했더라도 VPC 외부 사용자가 인터넷을 통해 노트북 인스턴스에 연결할 수 있습니다.
중요
다음 중 하나와 유사한 IAM 정책을 적용하면 콘솔을 통해 지정된 SageMaker API 또는 노트북 인스턴스에 액세스할 수 없습니다.
VPC 내에서 생성된 연결에 대해서만 액세스를 제한하려면 VPC 내에서 생성된 호출로만 액세스를 제한하는 AWS Identity and Access Management 정책을 생성합니다. 그런 다음 노트북 인스턴스에 액세스하는 데 사용되는 모든 AWS Identity and Access Management 사용자, 그룹 또는 역할에 해당 정책을 추가합니다.
참고
이 정책으로는 인터페이스 엔드포인트를 생성한 서브넷의 호출자에만 연결할 수 있습니다.
{ "Id": "notebook-example-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable Notebook Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedNotebookInstanceUrl", "sagemaker:DescribeNotebookInstance" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceVpc": "vpc-111bbaaa" } } } ] }
인터페이스 엔드포인트를 사용하여 수행된 연결로만 노트북 인스턴스에 대한 액세스를 제한하려면 aws:SourceVpc:
대신 aws:SourceVpce
조건 키를 사용합니다.
{ "Id": "notebook-example-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Enable Notebook Access", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedNotebookInstanceUrl", "sagemaker:DescribeNotebookInstance" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:sourceVpce": [ "vpce-111bbccc", "vpce-111bbddd" ] } } } ] }
다음 두 가지 정책 예제에서는 SageMaker API에 대한 인터페이스 엔드포인트도 생성했다고 가정합니다. 자세한 내용은 VPC 내에서 SageMaker AI에 연결섹션을 참조하세요. 두 번째 예제에서 aws:SourceVpce
에 대한 값 중 하나는 노트북 인스턴스에 대한 인터페이스 엔드포인트의 ID입니다. 다른 값은 SageMaker API에 대한 인터페이스 엔드포인트의 ID입니다.
일반적으로 연결을 시도하기 전에 NotebookInstanceStatus
가 InService
인지 확인하기 위해 DescribeNotebookInstance
를 호출하기 때문에 다음 정책 예제에는
DescribeNotebookInstance가 포함되어 있습니다. 예시:
aws sagemaker describe-notebook-instance \ --notebook-instance-name myNotebookInstance { "NotebookInstanceArn": "arn:aws:sagemaker:us-west-2:1234567890ab:notebook-instance/mynotebookinstance", "NotebookInstanceName": "myNotebookInstance", "NotebookInstanceStatus": "InService", "Url": "mynotebookinstance.notebook.us-west-2.sagemaker.aws", "InstanceType": "ml.m4.xlarge", "RoleArn": "arn:aws:iam::1234567890ab:role/service-role/AmazonSageMaker-ExecutionRole-12345678T123456", "LastModifiedTime": 1540334777.501, "CreationTime": 1523050674.078, "DirectInternetAccess": "Disabled" } aws sagemaker create-presigned-notebook-instance-url --notebook-instance-name myNotebookInstance { "AuthorizedUrl": "https://mynotebookinstance.notebook.us-west-2.sagemaker.aws?authToken=
AuthToken
}
참고
생성된 presigned-notebook-instance-url
, AuthorizedUrl
는 인터넷의 어느 곳에서나 사용할 수 있습니다.
두 호출 모두 VPC 엔드포인트에 대해 프라이빗 DNS 호스트 이름을 활성화하지 않았거나 2018년 8월 13일 이전에 릴리스된 AWS SDK 버전을 사용하는 경우 호출에 엔드포인트 URL을 지정해야 합니다. 예를 들어 create-presigned-notebook-instance-url
에 대한 호출은 다음과 같습니다.
aws sagemaker create-presigned-notebook-instance-url --notebook-instance-name
myNotebookInstance
--endpoint-urlVPC_Endpoint_ID
.api.sagemaker.Region
.vpce.amazonaws.com