翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
カスタム SageMaker AI イメージをアタッチする
重要
Amazon SageMaker Studio または Amazon SageMaker Studio Classic に Amazon SageMaker リソースの作成を許可するカスタム IAM ポリシーでは、これらのリソースにタグを追加するアクセス許可も付与する必要があります。Studio と Studio Classic は、作成したリソースに自動的にタグ付けするため、リソースにタグを追加するアクセス許可が必要になります。IAM ポリシーで Studio と Studio Classic によるリソースの作成が許可されていても、タグ付けが許可されていない場合は、リソースを作成しようとしたときに「AccessDenied」エラーが発生する可能性があります。詳細については、「SageMaker AI リソースにタグ付けするためのアクセス許可を提供する」を参照してください。
SageMaker リソースを作成するためのアクセス許可を付与する AWS Amazon SageMaker AI の マネージドポリシー には、それらのリソースの作成中にタグを追加するためのアクセス許可もあらかじめ含まれています。
重要
2023 年 11 月 30 日以降、従来の Amazon SageMaker Studio のエクスペリエンスは Amazon SageMaker Studio Classic と名前が変更されました。以下のセクションは、Studio Classic アプリケーションの使用を前提とした内容です。更新後の Studio エクスペリエンスを使用する場合は、「Amazon SageMaker Studio」を参照してください。
カスタム SageMaker AI イメージを使用するには、イメージのバージョンをドメインまたは共有スペースにアタッチする必要があります。イメージのバージョンをアタッチすると、イメージは SageMaker Studio Classic ランチャーに表示され、[イメージの選択] ドロップダウンリストで使用できるようになります。このドロップダウンリストは、アクティビティの起動やノートブックで使用されるイメージの変更に使用します。
ドメイン内のすべてのユーザーがカスタム SageMaker AI イメージを使用できるようにするには、そのイメージをドメインにアタッチします。共有スペース内のすべてのユーザーがイメージを利用できるようにするには、イメージを共有スペースにアタッチします。単一のユーザーがイメージを使用できるようにするには、そのユーザーのプロファイルにイメージをアタッチします。イメージをアタッチすると、SageMaker AI はデフォルトで最新バージョンのイメージを使用します。特定のイメージバージョンをアタッチすることもできます。バージョンをアタッチしたら、ノートブックの起動時に SageMaker AI Launcher またはイメージセレクタからバージョンを選択できます。
所定の時間にアタッチできるイメージバージョンの数には制限があります。制限に達した場合、別のイメージバージョンをアタッチするには、バージョンをデタッチする必要があります。
以下のセクションでは、SageMaker AI コンソールまたは を使用して、カスタム SageMaker AI イメージをドメインにアタッチする方法を示します AWS CLI。共有スペースへのカスタムイメージのアタッチは、 AWS CLIからのみ行えます。
SageMaker AI イメージをドメインにアタッチする
コンソールを使用して SageMaker AI イメージをアタッチする
このトピックでは、SageMaker AI コントロールパネルを使用して、既存のカスタム SageMaker AI イメージバージョンをドメインにアタッチする方法について説明します。カスタム SageMaker AI イメージとイメージバージョンを作成し、そのバージョンをドメインにアタッチすることもできます。イメージおよびイメージバージョンを作成する手順については、「カスタム SageMaker AI イメージを作成する」を参照してください。
既存のイメージをアタッチするには
-
https://console.aws.amazon.com/sagemaker/
で Amazon SageMaker AI コンソールを開きます。 -
左のナビゲーションペインで、[管理設定] を選択します。
-
[管理設定] で、[ドメイン] を選択します。
-
[ドメイン] ページで、イメージをアタッチするドメインを選択します。
-
[ドメインの詳細] ページで、[環境] タブを選択します。
-
[環境] タブの [ドメインにアタッチされているカスタム SageMaker Studio Classic イメージ] で、[イメージをアタッチ] を選択します。
-
[イメージソース] で、[既存のイメージ] を選択します。
-
リストから既存のイメージを 1 つ選択します。
-
リストからイメージバージョンを選択します。
-
[Next (次へ)] を選択します。
-
[イメージ名]、[イメージ表示名]、[説明] の値を確認します。
-
IAM ロールを選択します。詳細については、「カスタム SageMaker AI イメージを作成する」を参照してください。
-
(オプション) イメージにタグを追加します。
-
EFS マウントパスを指定します。これは、ユーザーの Amazon Elastic File System (EFS) ホームディレクトリにマウントするためのイメージ内のパスです。
-
[イメージタイプ] で、[SageMaker Studio イメージ] を選択します。
-
[カーネル名] にイメージ内の既存のカーネルの名前を入力します。イメージからカーネル情報を取得する方法については、SageMaker Studio Classic カスタムイメージサンプルリポジトリの「DEVELOPMENT
」を参照してください。詳細については、「カスタム SageMaker AI イメージ仕様」の「Kernel discovery」セクションと「User data」セクションを参照してください。 -
(オプション) [カーネル表示名] にカーネルの表示名を入力します。
-
[カーネルの追加] を選択します。
-
[送信] を選択します。
イメージバージョンがドメインにアタッチされるのを待ちます。アタッチが完了すると、そのバージョンは [カスタムイメージ] リストで一時的に強調表示されます。
を使用して SageMaker AI イメージをアタッチする AWS CLI
以下のセクションでは、 を使用して新しいドメインを作成したり、既存のドメインを更新したりするときに、カスタム SageMaker AI イメージをアタッチする方法を示します AWS CLI。
SageMaker AI イメージを新しいドメインにアタッチする
次のセクションでは、バージョンをアタッチした新しいドメインを作成する方法を説明します。これらの手順では、ドメインの作成に必要な Amazon Virtual Private Cloud (VPC) 情報と実行ロールを指定する必要があります。次の手順を実行してドメインを作成し、カスタム SageMaker AI イメージをアタッチします。
デフォルトの VPC ID とサブネット ID を取得します。
イメージを指定するドメインの設定ファイルを作成します。
設定ファイルを使ってドメインを作成します。
カスタム SageMaker AI イメージをドメインに追加するには
-
デフォルトの VPC ID を取得します。
aws ec2 describe-vpcs \ --filters Name=isDefault,Values=true \ --query "Vpcs[0].VpcId" --output text
レスポンスは次のようになります。
vpc-xxxxxxxx
-
前の手順で取得した VPC ID を使用して、デフォルトのサブネット ID を取得します。
aws ec2 describe-subnets \ --filters Name=vpc-id,Values=
<vpc-id>
\ --query "Subnets[*].SubnetId" --output jsonレスポンスは次のようになります。
[ "subnet-b55171dd", "subnet-8a5f99c6", "subnet-e88d1392" ]
-
create-domain-input.json
という名前の設定ファイルを作成します。前のステップで取得した VPC ID、サブネット ID、ImageName
、AppImageConfigName
を挿入します。ImageVersionNumber
が指定されていないため、イメージの最新バージョンが使用されます (今回は、これが唯一存在するバージョンです)。{ "DomainName": "domain-with-custom-image", "VpcId": "
<vpc-id>
", "SubnetIds": [ "<subnet-ids>
" ], "DefaultUserSettings": { "ExecutionRole": "<execution-role>
", "KernelGatewayAppSettings": { "CustomImages": [ { "ImageName": "custom-image", "AppImageConfigName": "custom-image-config" } ] } }, "AuthMode": "IAM" } -
カスタム SageMaker AI イメージがアタッチされたドメインを作成します。
aws sagemaker create-domain \ --cli-input-json file://create-domain-input.json
レスポンスは次のようになります。
{ "DomainArn": "arn:aws:sagemaker:us-east-2:acct-id:domain/d-xxxxxxxxxxxx", "Url": "https://d-xxxxxxxxxxxx.studio.us-east-2.sagemaker.aws/..." }
SageMaker AI イメージを現在のドメインにアタッチする
SageMaker AI ドメインにオンボードしている場合は、カスタムイメージを現在のドメインにアタッチできます。SageMaker AI ドメインへのオンボーディングの詳細については、「」を参照してくださいAmazon SageMaker AI ドメインの概要。現在のドメインにカスタムイメージをアタッチする際は、VPC 情報と実行ロールを指定する必要はありません。バージョンのアタッチ後は、ドメイン内のすべてのアプリケーションを削除し、Studio Classic を再度開く必要があります。アプリケーションの削除については、「Amazon SageMaker AI ドメインを削除する」を参照してください。
SageMaker AI イメージを現在のドメインに追加するには、次の手順を実行します。
SageMaker AI コントロールパネル
DomainID
から を取得します。DomainID
を使ってドメインのDefaultUserSettings
を取得します。ImageName
とAppImageConfig
をCustomImage
としてDefaultUserSettings
に追加します。ドメインを更新して、カスタムイメージを含めます。
カスタム SageMaker AI イメージをドメインに追加するには
-
https://console.aws.amazon.com/sagemaker/
で Amazon SageMaker AI コンソールを開きます。 -
左のナビゲーションペインで、[管理設定] を選択します。
-
[管理設定] で、[ドメイン] を選択します。
-
[ドメイン] ページで、イメージをアタッチするドメインを選択します。
-
[ドメインの詳細] ページで、[ドメインの設定] タブを選択します。
-
[ドメインの設定] タブの [全般設定] で
DomainId
を探します。ID の形式はd-xxxxxxxxxxxx
です。 -
このドメイン ID を使って、ドメインの説明を取得します。
aws sagemaker describe-domain \ --domain-id
<d-xxxxxxxxxxxx>
レスポンスは次のようになります。
{ "DomainId": "d-xxxxxxxxxxxx", "DefaultUserSettings": { "KernelGatewayAppSettings": { "CustomImages": [ ], ... } } }
-
default-user-settings.json
という名前のファイルに、レスポンスのデフォルトのユーザー設定セクションを保存します。 -
前の手順で取得した
ImageName
とAppImageConfigName
をカスタムイメージとして挿入します。ImageVersionNumber
が指定されていないため、イメージの最新バージョンが使用されます (今回は、これが唯一存在するバージョンです)。{ "DefaultUserSettings": { "KernelGatewayAppSettings": { "CustomImages": [ { "ImageName": "string", "AppImageConfigName": "string" } ], ... } } }
-
ドメイン ID とデフォルトのユーザー設定ファイルを使って、ドメインを更新します。
aws sagemaker update-domain \ --domain-id
<d-xxxxxxxxxxxx>
\ --cli-input-json file://default-user-settings.jsonレスポンスは次のようになります。
{ "DomainArn": "arn:aws:sagemaker:us-east-2:acct-id:domain/d-xxxxxxxxxxxx" }
SageMaker AI イメージを共有スペースにアタッチする
SageMaker AI イメージは、 を使用して共有スペースにのみアタッチできます AWS CLI。バージョンのアタッチ後は、共有スペース内のすべてのアプリケーションを削除し、Studio Classic を再度開く必要があります。アプリケーションの削除については、「Amazon SageMaker AI ドメインを削除する」を参照してください。
SageMaker AI イメージを共有スペースに追加するには、次の手順を実行します。
SageMaker AI コントロールパネル
DomainID
から を取得します。DomainID
を使ってドメインのDefaultSpaceSettings
を取得します。ImageName
とAppImageConfig
をCustomImage
としてDefaultSpaceSettings
に追加します。ドメインを更新して、共有スペースのカスタムイメージを含めます。
カスタム SageMaker AI イメージを共有スペースに追加するには
-
https://console.aws.amazon.com/sagemaker/
で Amazon SageMaker AI コンソールを開きます。 -
左のナビゲーションペインで、[管理設定] を選択します。
-
[管理設定] で、[ドメイン] を選択します。
-
[ドメイン] ページで、イメージをアタッチするドメインを選択します。
-
[ドメインの詳細] ページで、[ドメインの設定] タブを選択します。
-
[ドメインの設定] タブの [全般設定] で
DomainId
を探します。ID の形式はd-xxxxxxxxxxxx
です。 -
このドメイン ID を使って、ドメインの説明を取得します。
aws sagemaker describe-domain \ --domain-id
<d-xxxxxxxxxxxx>
レスポンスは次のようになります。
{ "DomainId": "d-xxxxxxxxxxxx", ... "DefaultSpaceSettings": { "KernelGatewayAppSettings": { "CustomImages": [ ], ... } } }
-
default-space-settings.json
という名前のファイルに、レスポンスのデフォルトのスペース設定セクションを保存します。 -
前の手順で取得した
ImageName
とAppImageConfigName
をカスタムイメージとして挿入します。ImageVersionNumber
が指定されていないため、イメージの最新バージョンが使用されます (今回は、これが唯一存在するバージョンです)。{ "DefaultSpaceSettings": { "KernelGatewayAppSettings": { "CustomImages": [ { "ImageName": "string", "AppImageConfigName": "string" } ], ... } } }
-
ドメイン ID とデフォルトのスペース設定ファイルを使用して、ドメインを更新します。
aws sagemaker update-domain \ --domain-id
<d-xxxxxxxxxxxx>
\ --cli-input-json file://default-space-settings.jsonレスポンスは次のようになります。
{ "DomainArn": "arn:aws:sagemaker:us-east-2:acct-id:domain/d-xxxxxxxxxxxx" }
SageMaker AI でアタッチされたイメージを表示する
カスタム SageMaker AI イメージを作成してドメインにアタッチすると、そのイメージがドメインの環境タブに表示されます。共有スペースのアタッチされたイメージは、次のコマンドを使用して AWS CLI を使用してのみ表示できます。
aws sagemaker describe-domain \ --domain-id
<d-xxxxxxxxxxxx>