AWS Glue のインタラクティブセッションの開始方法
これらのセクションでは、AWS Glue の対話型セッションをローカルで実行する方法について説明します。
ローカルでインタラクティブセッションを設定するための前提条件
インタラクティブセッションをインストールするための前提条件は次のとおりです。
-
サポートされている Python バージョンは 3.6~3.10 以降です。
-
MacOS/Linux および Windows の手順については、以下のセクションを参照してください。
Jupyter と AWS Glue インタラクティブセッション Jupyter カーネルのインストール
次を使用してカーネルをローカルにインストールします。
install-glue-kernels
コマンドは、pyspark カーネルと Spark カーネルの両方に jupyter kernelspec をインストールし、また適切なディレクトリにロゴをインストールします。
pip3 install --upgrade jupyter boto3 aws-glue-sessions
install-glue-kernels
Jupyter の実行
Jupyter Notebook を実行するには、以下の手順に従います。
-
次のコマンドを実行して Jupyter Notebook をインストールします。
jupyter notebook
-
[New] (新規) を選択して、次の AWS Glue カーネルのいずれかを選択して AWS Glue に対するコーディングを開始します。
セッション認証情報とリージョンの設定
MacOS/Linux の手順
AWS Glue インタラクティブセッションには、AWS Glue ジョブおよび開発エンドポイントと同じ IAM アクセス許可が必要です。インタラクティブセッションで使用するロールは、次のいずれかの方法で指定します。
-
%iam_role
と%region
マジックを使用 -
~/.aws/config
の追加行を使用
マジックを使用したセッションロールの設定
最初のセルで、実行された最初のセルに「%iam_role <YourGlueServiceRole>
」と入力します。
~/.aws/config
を使用したセッションロールの設定
インタラクティブセッションの AWS Glue サービスロールは、ノートブック自体で指定することも、AWS CLI 設定と一緒に保存することもできます。AWS Glue ジョブで通常使用するロールがある場合、これがロールになります。AWS Glue ジョブに使用するロールがない場合は、「AWS Glue 用の IAM アクセス許可の設定」のガイドに従ってセットアップしてください。
このロールをインタラクティブセッションのデフォルトのロールとして設定するには、以下の手順を実施します。
-
テキストエディタで
~/.aws/config
を開きます。 -
AWS Glue に使用するプロファイルを探します。いずれのプロファイルも使わない場合は、
[Default]
プロファイルを使用します。 -
glue_role_arn=<AWSGlueServiceRole>
に示すように、使用するロールのプロファイルに 1 行を追加します。 -
[オプション]: プロファイルにデフォルトのリージョンセットがない場合は、
region=us-east-1
でリージョンを追加し、us-east-1
を対象リージョンに置き換えることをお勧めします。 -
設定を保存します。
詳細については、「IAM を使用したインタラクティブセッション」を参照してください。
Windows の手順
AWS Glue インタラクティブセッションには、AWS Glue ジョブおよび開発エンドポイントと同じ IAM アクセス許可が必要です。インタラクティブセッションで使用するロールは、次のいずれかの方法で指定します。
-
%iam_role
と%region
マジックを使用 -
~/.aws/config
の追加行を使用
マジックを使用したセッションロールの設定
最初のセルで、実行された最初のセルに「%iam_role <YourGlueServiceRole>
」と入力します。
~/.aws/config
を使用したセッションロールの設定
インタラクティブセッションの AWS Glue サービスロールは、ノートブック自体で指定することも、AWS CLI 設定と一緒に保存することもできます。AWS Glue ジョブで通常使用するロールがある場合、これがロールになります。AWS Glue ジョブに使用するロールがない場合は、「AWS Glue での IAM アクセス許可のセットアップ」 のガイドに従って、設定してください。
このロールをインタラクティブセッションのデフォルトのロールとして設定するには、以下の手順を実施します。
-
テキストエディタで
~/.aws/config
を開きます。 -
AWS Glue に使用するプロファイルを探します。いずれのプロファイルも使わない場合は、
[Default]
プロファイルを使用します。 -
glue_role_arn=<AWSGlueServiceRole>
に示すように、使用するロールのプロファイルに 1 行を追加します。 -
[オプション]: プロファイルにデフォルトのリージョンセットがない場合は、
region=us-east-1
でリージョンを追加し、us-east-1
を対象リージョンに置き換えることをお勧めします。 -
設定を保存します。
詳細については、「IAM を使用したインタラクティブセッション」を参照してください。
インタラクティブセッションプレビューからのアップグレード
カーネルがバージョン 0.27 でリリースされたときに、新しい名前でアップグレードされました。カーネルのプレビューバージョンをクリーンアップするには、ターミナルまたは PowerShell から次のコマンドを実行します。
注記
カスタムサービスモデルを必要とする他の AWS Glue プレビューに参加している場合は、このカーネルを削除することで、対象のカスタムサービスモデルも削除されます。
# Remove Old Glue Kernels jupyter kernelspec remove glue_python_kernel jupyter kernelspec remove glue_scala_kernel # Remove Custom Model cd ~/.aws/models rm -rf glue/