

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon SageMaker Studio Classic での JupyterLab のバージョニング
<a name="studio-jl"></a>

**重要**  
Amazon SageMaker Studio または Amazon SageMaker Studio Classic に Amazon SageMaker リソースの作成を許可するカスタム IAM ポリシーでは、これらのリソースにタグを追加するアクセス許可も付与する必要があります。Studio と Studio Classic は、作成したリソースに自動的にタグ付けするため、リソースにタグを追加するアクセス許可が必要になります。IAM ポリシーで Studio と Studio Classic によるリソースの作成が許可されていても、タグ付けが許可されていない場合は、リソースを作成しようとしたときに「AccessDenied」エラーが発生する可能性があります。詳細については、「[SageMaker AI リソースにタグ付けのアクセス許可を付与する](security_iam_id-based-policy-examples.md#grant-tagging-permissions)」を参照してください。  
SageMaker リソースを作成するためのアクセス許可を付与する [AWS Amazon SageMaker AI の マネージドポリシー](security-iam-awsmanpol.md) には、それらのリソースの作成中にタグを追加するためのアクセス許可もあらかじめ含まれています。

**重要**  
2023 年 11 月 30 日以降、従来の Amazon SageMaker Studio のエクスペリエンスは Amazon SageMaker Studio Classic と名前が変更されました。以下のセクションは、Studio Classic アプリケーションの使用を前提とした内容です。更新後の Studio エクスペリエンスを使用する場合は、「[Amazon SageMaker Studio](studio-updated.md)」を参照してください。  
Studio Classic は既存のワークロードでも維持されていますが、オンボーディングに利用できなくなりました。既存の Studio Classic アプリケーションのみを停止または削除でき、新しいアプリケーションを作成することはできません。[ワークロードを新しい Studio エクスペリエンスに移行](studio-updated-migrate.md)することをお勧めします。

Amazon SageMaker Studio Classic のインターフェイスは、JupyterLab に基づいています。JupyterLab は、ノートブック、コード、データ用のウェブベースのインタラクティブな開発環境です。Studio Classic は JupyterLab 3 の使用のみをサポートしています。

 AWS マネジメントコンソール より前の または 08/31/2022 AWS Command Line Interface より前の を使用してドメインとユーザープロファイルを作成した場合02/22/23、Studio Classic インスタンスはデフォルトで JupyterLab 1 になります。2024 年 7 月 1 日以降は、JupyterLab 1 を実行する Studio Classic アプリケーションは作成できません。

## JupyterLab 3
<a name="jl3"></a>

JupyterLab 3 には、過去のバージョンで利用できない次の機能が含まれています。これらの機能の詳細については、「[JupyterLab 3.0 is released\$1](https://blog.jupyter.org/jupyterlab-3-0-is-out-4f58385e25bb)」を参照してください。
+ Base Python 2.0 カーネルおよびデータサイエンス 2.0 カーネルを使用する際のビジュアルデバッガー
+ ファイルブラウザのフィルター 
+ 目次 (TOC) 
+ 多言語サポート 
+ シンプルモード 
+ シングルインターフェイスモード 

### JupyterLab 3 の重要な変更点
<a name="jl3-changes"></a>

 JupyterLab 3 を使用する際は、次の点を考慮してください。
+ を使用して JupyterLab バージョンを設定する場合は AWS CLI、 のイメージリストからリージョンと JupyterLab バージョンに対応するイメージを選択します[から AWS CLI](#studio-jl-set-cli)。
+ JupyterLab 3 では、拡張機能をインストールする前に `studio` conda 環境を有効化する必要があります。詳細については、「[JupyterLab および Jupyter Server の拡張機能をインストールする](#studio-jl-install)」を参照してください。
+ Debugger は、次のイメージを使用する場合にのみサポートされます。
  + Base Python 2.0
  + Data Science 2.0
  + Base Python 3.0
  + Data Science 3.0

## IAM ポリシーの条件キーを使用してデフォルトの JupyterLab バージョンを制限する
<a name="iam-policy"></a>

IAM ポリシーの条件キーを使用して、ユーザーが起動できる JupyterLab のバージョンを制限できます。

次のポリシーは、JupyterLab のバージョンをドメインレベルで制限する方法を示しています。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "BlockJupyterLab3DomainLevelAppCreation",
            "Effect": "Deny",
            "Action": [
                "sagemaker:CreateDomain",
                "sagemaker:UpdateDomain"
            ],
            "Resource": "*",
            "Condition": {
                "ForAnyValue:ArnLike": {
                    "sagemaker:ImageArns": "arn:aws:sagemaker:us-east-1:111122223333:image/jupyter-server-3"
                }
            }
        }
    ]
}
```

------

次のポリシーは、JupyterLab のバージョンをユーザープロファイルレベルで制限する方法を示しています。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "BlockUsersFromCreatingJupyterLab3Apps",
            "Effect": "Deny",
            "Action": [
                "sagemaker:CreateUserProfile",
                "sagemaker:UpdateUserProfile"
            ],
            "Resource": "*",
            "Condition": {
                "ForAnyValue:ArnLike": {
                    "sagemaker:ImageArns": "arn:aws:sagemaker:us-east-1:111122223333:image/jupyter-server-3"
                }
            }
        }
    ]
}
```

------

次のポリシーは、JupyterLab のバージョンをアプリケーションレベルで制限する方法を示しています。このポリシーを適用するには、`CreateApp` リクエストにイメージ ARN を含める必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "BlockJupyterLab3AppLevelAppCreation",
            "Effect": "Deny",
            "Action": "sagemaker:CreateApp",
            "Resource": "*",
            "Condition": {
                "ForAnyValue:ArnLike": {
                    "sagemaker:ImageArns": "arn:aws:sagemaker:us-east-1:111122223333:image/jupyter-server-3"
                }
            }
        }
    ]
}
```

------

## JupyterLab のデフォルトバージョンを設定する
<a name="studio-jl-set"></a>

以下のセクションでは、コンソールまたは AWS CLIを使用して、Studio Classic の JupyterLab のデフォルトバージョンを設定する方法を説明します。  

### コンソールから
<a name="studio-jl-set-console"></a>

 リソースの作成中に、使用するデフォルトの JupyterLab バージョンをドメインレベルまたはユーザープロファイルレベルで選択できます。コンソールを使用してデフォルトの JupyterLab のバージョンを設定するには、「[Amazon SageMaker AI ドメインの概要](gs-studio-onboard.md)」を参照してください。  

### から AWS CLI
<a name="studio-jl-set-cli"></a>

 AWS CLIを使用して、使用するデフォルトの JupyterLab バージョンをドメインレベルまたはユーザープロファイルレベルで選択できます。  

 を使用してデフォルトの JupyterLab バージョンを設定するには AWS CLI、 AWS CLI コマンドの一部として目的のデフォルトの JupyterLab バージョンの ARN を含める必要があります。この ARN は、SageMaker AI ドメインのバージョンとリージョンによって異なります。  

次の表に、各リージョンで利用可能な JupyterLab バージョンの ARN を示します。


|  リージョン  |  JL3  | 
| --- | --- | 
|  us–east–1  |  arn:aws:sagemaker:us-east-1:081325390199:image/jupyter-server-3  | 
|  us-east-2  |  arn:aws:sagemaker:us-east-2:429704687514:image/jupyter-server-3  | 
|  us-west-1  |  arn:aws:sagemaker:us-west-1:742091327244:image/jupyter-server-3  | 
|  us-west-2  |  arn:aws:sagemaker:us-west-2:236514542706:image/jupyter-server-3  | 
|  af-south-1  |  arn:aws:sagemaker:af-south-1:559312083959:image/jupyter-server-3  | 
|  ap-east-1  |  arn:aws:sagemaker:ap-east-1:493642496378:image/jupyter-server-3  | 
|  ap-south-1  |  arn:aws:sagemaker:ap-south-1:394103062818:image/jupyter-server-3  | 
|  ap-northeast-2  |  arn:aws:sagemaker:ap-northeast-2:806072073708:image/jupyter-server-3  | 
|  ap-southeast-1  |  arn:aws:sagemaker:ap-southeast-1:492261229750:image/jupyter-server-3  | 
|  ap-southeast-2  |  arn:aws:sagemaker:ap-southeast-2:452832661640:image/jupyter-server-3  | 
|  ap-northeast-1  |  arn:aws:sagemaker:ap-northeast-1:102112518831:image/jupyter-server-3  | 
|  ca-central-1  |  arn:aws:sagemaker:ca-central-1:310906938811:image/jupyter-server-3  | 
|  eu-central-1  |  arn:aws:sagemaker:eu-central-1:936697816551:image/jupyter-server-3  | 
|  eu-west-1  |  arn:aws:sagemaker:eu-west-1:470317259841:image/jupyter-server-3  | 
|  eu-west-2  |  arn:aws:sagemaker:eu-west-2:712779665605:image/jupyter-server-3  | 
|  eu-west-3  |  arn:aws:sagemaker:eu-west-3:615547856133:image/jupyter-server-3  | 
|  eu-north-1  |  arn:aws:sagemaker:eu-north-1:243637512696:image/jupyter-server-3  | 
|  eu-south-1  |  arn:aws:sagemaker:eu-south-1:592751261982:image/jupyter-server-3  | 
|  eu-south-2  |  arn:aws:sagemaker:eu-south-2:127363102723:image/jupyter-server-3  | 
|  sa-east-1  |  arn:aws:sagemaker:sa-east-1:782484402741:image/jupyter-server-3  | 
|  cn-north-1  |  arn:aws-cn:sagemaker:cn-north-1:390048526115:image/jupyter-server-3  | 
|  cn-northwest-1  |  arn:aws-cn:sagemaker:cn-northwest-1:390780980154:image/jupyter-server-3  | 

#### ドメインの作成または更新
<a name="studio-jl-set-cli-domain"></a>

 [CreateDomain](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateDomain.html) または [UpdateDomain](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateDomain.html) を呼び出して `UserSettings.JupyterServerAppSettings.DefaultResourceSpec.SageMakerImageArn` フィールドを渡すことで、デフォルトの JupyterServer バージョンをドメインレベルで設定できます。

 AWS CLIを使用した、JupyterLab 3 をデフォルトとするドメインの作成方法は次のとおりです。

```
aws --region <REGION> \
sagemaker create-domain \
--domain-name <NEW_DOMAIN_NAME> \
--auth-mode <AUTHENTICATION_MODE> \
--subnet-ids <SUBNET-IDS> \
--vpc-id <VPC-ID> \
--default-user-settings '{
  "JupyterServerAppSettings": {
    "DefaultResourceSpec": {
      "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3",
      "InstanceType": "system"
    }
  }
}'
```

 AWS CLIを使用した、JupyterLab 3 をデフォルトとするドメインの更新方法は次のとおりです。

```
aws --region <REGION> \
sagemaker update-domain \
--domain-id <YOUR_DOMAIN_ID> \
--default-user-settings '{
  "JupyterServerAppSettings": {
    "DefaultResourceSpec": {
      "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3",
      "InstanceType": "system"
    }
  }
}'
```

#### ユーザープロファイルの作成または更新
<a name="studio-jl-set-cli-user"></a>

 [CreateUserProfile](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateUserProfile.html) または [UpdateUserProfile](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateUserProfile.html) を呼び出して `UserSettings.JupyterServerAppSettings.DefaultResourceSpec.SageMakerImageArn` フィールドを渡すことで、デフォルトの JupyterServer バージョンをユーザープロファイルレベルで設定できます。

 AWS CLIを使用した、JupyterLab 3 をデフォルトとする既存のドメインでのユーザープロファイルの作成方法は次のとおりです。

```
aws --region <REGION> \
sagemaker create-user-profile \
--domain-id <YOUR_DOMAIN_ID> \
--user-profile-name <NEW_USERPROFILE_NAME> \
--query UserProfileArn --output text \
--user-settings '{
  "JupyterServerAppSettings": {
    "DefaultResourceSpec": {
      "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3",
      "InstanceType": "system"
    }
  }
}'
```

 AWS CLIを使用した JupyterLab 3 をデフォルトとするユーザープロファイルの更新方法は、次のとおりです。

```
aws --region <REGION> \
sagemaker update-user-profile \
 --domain-id <YOUR_DOMAIN_ID> \
 --user-profile-name <EXISTING_USERPROFILE_NAME> \
--user-settings '{
  "JupyterServerAppSettings": {
    "DefaultResourceSpec": {
      "SageMakerImageArn": "arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:image/jupyter-server-3",
      "InstanceType": "system"
    }
  }
}'
```

## コンソールからアプリケーションの JupyterLab のバージョンを表示および更新する
<a name="studio-jl-view"></a>

 アプリケーションの JupyterLab バージョンを表示および更新する方法は、次のとおりです。

1.  SageMaker AI の **[ドメイン]** ページに移動します。

1.  ユーザープロファイルを表示するドメインを選択します。

1.  アプリケーションを表示するユーザーを選択します。

1.  アプリケーションの JupyterLab バージョンを表示するには、アプリケーション名を選択します。

1.  JupyterLab のバージョンを更新するには、**[アクション]** を選択します。

1.  ドロップダウンメニューで、**[JupyterLab のバージョンを変更]** を選択します。

1.  **[Studio Classic の設定]** ページで、ドロップダウンメニューから JupyterLab バージョンを選択します。

1.  ユーザープロファイルの JupyterLab バージョンが正常に更新されたら、JupyterServer アプリケーションを再起動してバージョンの変更を有効にします。JupyterServer アプリケーションの再起動の詳細については、「[Amazon SageMaker Studio Classic をシャットダウンして更新する](studio-tasks-update-studio.md)」を参照してください。

## JupyterLab および Jupyter Server の拡張機能をインストールする
<a name="studio-jl-install"></a>

JupyterLab 3 では、拡張機能をインストールする前に `studio` conda 環境を有効化する必要があります。インストール方法は、Studio Classic 内で拡張機能をインストールするか、ライフサイクル設定スクリプトを使用するかによって異なります。

### Studio Classic 内で拡張機能をインストールする
<a name="studio-jl-install-studio"></a>

Studio Classic 内から拡張機能をインストールするには、拡張機能をインストールする前に `studio` 環境を有効化する必要があります。

```
# Before installing extensions
conda activate studio

# Install your extensions
pip install <JUPYTER_EXTENSION>

# After installing extensions
conda deactivate
```

### ライフサイクル設定スクリプトを使用して拡張機能をインストールする
<a name="studio-jl-install-lcc"></a>

ライフサイクル設定スクリプトに JupyterLab と Jupyter Server の拡張機能をインストールする場合、JupyterLab 3 で動作するようにスクリプトを変更する必要があります。以下のセクションでは、既存および新規のライフサイクル設定スクリプトで必要なコードについて説明します。

#### 既存のライフサイクル設定スクリプト
<a name="studio-jl-install-lcc-existing"></a>

JupyterLab の両方のバージョンで動作する既存のライフサイクル設定スクリプトを再利用する場合、次のコードをスクリプトで使用します。

```
# Before installing extension
export AWS_SAGEMAKER_JUPYTERSERVER_IMAGE="${AWS_SAGEMAKER_JUPYTERSERVER_IMAGE:-'jupyter-server'}"
if [ "$AWS_SAGEMAKER_JUPYTERSERVER_IMAGE" = "jupyter-server-3" ] ; then
   eval "$(conda shell.bash hook)"
   conda activate studio
fi;

# Install your extensions
pip install <JUPYTER_EXTENSION>


# After installing extension
if [ "$AWS_SAGEMAKER_JUPYTERSERVER_IMAGE" = "jupyter-server-3" ]; then
   conda deactivate
fi;
```

#### 新しいライフサイクル設定スクリプト
<a name="studio-jl-install-lcc-new"></a>

JupyterLab 3 のみを使用する新しいライフサイクル設定スクリプトを作成する場合、次のコードをスクリプトで使用します。

```
# Before installing extension
eval "$(conda shell.bash hook)"
conda activate studio


# Install your extensions
pip install <JUPYTER_EXTENSION>


conda deactivate
```