0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Terraformで管理しているAWS SageMaker Notebookインスタンスを、JupyterLab 4へバージョンアップする

Last updated at Posted at 2025-01-10

先日、AWSからこのようなメールが来ました。

お客様の AWS アカウントに JupyterLab 1 (プラットフォーム識別子 notebook-al2-v1) または JupyterLab 3 (プラットフォーム識別子 notebook-al2-v2) で実行されている Amazon SageMaker ノートブックインスタンスが 1 つ以上あることをお知らせしております。これらのインスタンスのリストは、AWS ヘルスダッシュボードの「影響を受けるリソース」タブにあります。

2025 年 6 月 30 日に、Amazon SageMakerは JupyterLab 1 および JupyterLab 3 プラットフォームで実行されているノートブックインスタンスの提供を非推奨にする予定です。この日付をもって、お客様は新しい JupyterLab 1 および JupyterLab 3 ノートブックインスタンスを作成することも、停止したインスタンスを再度起動することもできなくなります。

既存の稼働中の JupyterLab 1 および JupyterLab 3 ノートブックインスタンスは引き続き機能する可能性がありますが、セキュリティアップデートや重大なバグ修正は受けられなくなります。これらのインスタンスのセキュリティを管理する責任はお客様にあります。既存の JupyterLab 1 または JupyterLab 3 ノートブックインスタンスで問題が発生した場合、Amazon SageMaker は、お客様がワークロードを新しい JupyterLab 4 ノートブックインスタンスに移行しない限り、それらの継続的な可用性を保証できません。

安全でサポートされている環境を確保するため、2025 年 6 月 30 日よりも前にワークロードを新しい JupyterLab 4ノートブックインスタンス (プラットフォーム識別子 notebook-al2-v3) に移行することを強くお勧めします[1][2]。これにより、最新バージョンの Jupyter Notebooks、JupyterLab、その他の ML ライブラリを活用できるようになります。

SageMaker Notebookのバージョンを上げるように、という案内のようです。
対象のインスタンスはTerraformで管理しているので、Terraformでの修正方法をご紹介します。

手順

既存のTerraformコードでは、プラットフォームバージョンを指定していませんでした。
ドキュメントを確認したところ、aws_sagemaker_notebook_instanceリソースのplatform_identifierで指定できるようです。

platform_identifierに、メール本文に記載されているnotebook-al2-v3を指定してあげれば良いようです。

resource "aws_sagemaker_notebook_instance" "notebook" {
  platform_identifier = "notebook-al2-v3"
}

ここでplanを実行すると、バリデーションエラーが発生してしまいました。

Error: expected value of platform_identifier to match regular expression "^(notebook-al1-v1|notebook-al2-v1|notebook-al2-v2)$", got notebook-al2-v3

確認してみたところ、notebook-al2-v3という値は、AWSプロバイダーのバージョン5.81.0から対応しています。

5.54.1を使用していたため、AWSプロバイダーのバージョンも上げる必要がありました。

@@ -2,7 +2,7 @@ terraform {
   required_providers {
     aws = {
       source  = "hashicorp/aws"
-      version = "5.54.1"
+      version = "5.82.2"
     }
   }
 }

これでplanおよびapplyが実行可能になりました。

注意点

上記で新しいバージョンのNotebookを作成することはできますが、既存のリソースのバージョンを上げることはできません。
もし既存リソースのplatform_identifierの値を変更した場合は、そのNotebookインスタンスが再生成されます。

-/+ resource "aws_sagemaker_notebook_instance" "notebook" {
      ~ platform_identifier          = "notebook-al2-v2" -> "notebook-al2-v3" # forces replacement
    }

plan実行時にforces replacementと出てきますので、見落とさないようにご注意ください。

まとめ

AWSプロバイダーの対応バージョンのリリースは2024/12と、記事作成時点でまだ1ヶ月程度です。
そのため、まだバージョンアップが済んでいない方も多いのではないでしょうか。
既存のNotebookインスタンスの非推奨化は2025/06/30で、時間的猶予はそんなにあるとは言えません。
SageMaker Notebookを使用中の方は、AWSプロバイダーのバージョンアップの検証が必要な場合もあると思いますので、早めに対応を進めることをお勧めします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?