Amazon EMR Studio の仕組み - Amazon EMR

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

Amazon EMR Studio の仕組み

Amazon EMR Studio は、ユーザーのチーム用に作成する Amazon EMR リソースです。EMR Studio は、Amazon EMR クラスターで実行される、Jupyter Notebook 用のウェブベースの自己完結型統合開発環境です。ユーザーは、企業の認証情報を使用して Studio にログインします。

作成する各 EMR Studio では、次の AWS リソースが使用されます。

  • サブネットを使用する Amazon Virtual Private Cloud (VPC) - ユーザーは、指定された VPC 内の Amazon EMR および Amazon EMR on EKS クラスターで Studio カーネルとアプリケーションを実行します。EMR Studio は、Studio の作成時に指定したサブネット内の任意のクラスターに接続できます。

  • IAM ロールとアクセス許可ポリシー - ユーザーアクセス許可を管理するには、ユーザーの IAM ID またはユーザーロールにアタッチする IAM アクセス許可ポリシーを作成します。EMR Studio は IAM サービスロールとセキュリティグループを使用して、他の AWS のサービスとの相互運用も行います。詳細については、アクセスコントロール および EMR Studio ネットワークトラフィックを制御するセキュリティグループを定義する を参照してください。

  • セキュリティグループ - EMR Studio は、セキュリティグループを使用して Studio と EMR クラスターの間に安全なネットワークチャネルを確立します。

  • Amazon S3 バックアップの場所 - EMR Studio は Amazon S3 の場所にノートブック作業を保存します。

次の手順は、EMR Studio を作成して管理する方法の概要です。

  1. IAM または IAM Identity Center 認証を使用して AWS アカウントで Studio を作成します。手順については、「Amazon EMR Studio のセットアップ」を参照してください。

  2. Studio にユーザーまたはグループを割り当てます。アクセス許可ポリシーを使用して、各ユーザーにきめ細かいアクセス許可を設定します。詳細については、「EMR Studio ユーザーの割り当てと管理」のトピックを参照してください。

  3. AWS CloudTrail イベントを使用した EMR Studio アクションのモニタリングを開始します。詳細については、「Amazon EMR Studio アクションのモニタリング」を参照してください。

  4. クラスターテンプレートと Amazon EMR on EKS マネージドエンドポイントで Studio ユーザーにより多くのクラスターオプションを提供します。

認証とユーザーログイン

Amazon EMR Studio は、IAM 認証モードと IAM Identity Center 認証モードという 2 つの認証モードをサポートしています。IAM モードは AWS Identity and Access Management (IAM) を使用し、IAM Identity Center モードは AWS IAM Identity Center を使用します。EMR Studio を作成するときは、その Studio のすべてのユーザーの認証モードを選択します。

IAM 認証モード

IAM 認証モードでは、IAM 認証または IAM フェデレーションを使用できます。

IAM 認証では、IAM のユーザー、グループ、ロールなどの IAM ID を管理できます。IAM アクセス許可ポリシーおよび属性ベースのアクセスコントロール (ABAC) を使用して Studio へのアクセス権をユーザーに付与します。

IAM フェデレーションにより、サードパーティーの ID プロバイダー (IdP) と AWS との間の信頼を確立できます。これにより、IdP を通じてユーザー ID を管理できます。

IAM Identity Center 認証モード

IAM Identity Center 認証モードでは、ユーザーに EMR Studio へのフェデレーションアクセス権を付与できます。IAM Identity Center を使用して、IAM Identity Center ディレクトリ、既存の企業ディレクトリ、または外部 IdP (Azure Active Directory (AD) など) からのユーザーおよびグループを認証できます。次に、ID プロバイダー (IdP) を使用してユーザーを管理します。

EMR Studio では、IAM Identity Center の次の ID プロバイダーの使用をサポートしています。

認証がログインとユーザーの割り当てに与える影響

EMR Studio で選択する認証モードは、ユーザーが Studio にログインする方法、ユーザーを Studio に割り当てる方法、および新しい Amazon EMR クラスターの作成などのアクションを実行できるようにするためにユーザーを許可する (アクセス許可を与える) 方法に影響します。

次の表に、認証モードによる EMR Studio のログイン方法をまとめます。

認証モードによる EMR Studio ログインオプション
認証モード ログイン方法 説明
  • IAM (認証とフェデレーション)

  • IAM Identity Center

EMR Studio URL

ユーザーは、Studio アクセス URL を使用して Studio にログインします。例えば、https://xxxxxxxxxxxxxxxxxxxxxxx.emrstudio-prod.us-east-1.amazonaws.com です。

IAM 認証を使用した場合、ユーザーは IAM 認証情報を入力します。IAM フェデレーションまたは IAM Identity Center を使用する場合、EMR Studio は、認証情報を入力するための ID プロバイダーのサインイン URL にユーザーをリダイレクトします。

ID フェデレーションのコンテキストでは、このログインオプションは、サービスプロバイダー (SP) 開始サインインと呼ばれます。

  • IAM (フェデレーション)

  • IAM Identity Center

ID プロバイダー (IdP) ポータル

ユーザーは Azure ポータルなどの ID プロバイダーのポータルにログインし、Amazon EMR コンソールを起動します。Amazon EMR コンソールを起動した後、ユーザーは、[Studios list] (Studio リスト) から Studio を開きます。

また、ユーザーが ID プロバイダーのポータルから特定の Studio にログインできるように、EMR Studio を SAML アプリケーションとして構成することもできます。手順については「IdP ポータルの SAML アプリケーションとして EMR Studio を設定するには」を参照してください。

ID フェデレーションのコンテキストでは、このログインオプションは、ID プロバイダー (IdP) 開始サインインと呼ばれます。

  • IAM (認証)

AWS Management Console ユーザーは、IAM 認証情報を使用して AWS Management Console にサインインし、Amazon EMR コンソールで [Studios list] (Studio リスト) から Studio を開きます。

次の表に、認証モード別の EMR Studio のユーザー割り当てと認可の概要を示します。

認証モード別の EMR Studio ユーザー割り当てと認可
[Authentication mode] (認証モード) ユーザー割り当て ユーザー認可

IAM (認証とフェデレーション)

IAM ID (ユーザー、グループ、ロール) にアタッチされた IAM アクセス許可ポリシーで CreateStudioPresignedUrl アクションを許可します。

フェデレーティッドユーザーの場合、フェデレーションに使用する IAM ロールに設定するアクセス許可ポリシーで IAM での CreateStudioPresignedUrl アクションを許可します。

属性ベースのアクセスコントロール (ABAC) を使用して、ユーザーがアクセスできる 1 つ以上の Studio を指定します。

手順については、「ユーザーまたはグループを EMR Studio に割り当てる」を参照してください。

特定の EMR Studio アクションを許可する IAM アクセス許可ポリシーを定義します。

ネイティブユーザーの場合、IAM ID (ユーザー、グループ、ロール) に IAM アクセス許可ポリシーをアタッチします。フェデレーティッドユーザーの場合、フェデレーションに使用する IAM ロールに設定するアクセス許可ポリシーで Studio アクションを許可します。

詳細については、「Amazon EC2または Amazon の EMR Studio ユーザーアクセス許可を設定する EKS」を参照してください。

IAM Identity Center

IdCUserAssignmentREQUIRED に設定して作成した Studio では、特定のセッションポリシーでユーザーを Studio にマッピングします。詳細については、「ユーザーまたはグループを EMR Studio に割り当てる」を参照してください。

IdCUserAssignmentOPTIONAL に設定して作成した Studio では、Identity Center のユーザーまたはグループなら誰でも Studio にアクセスできます。

オプション: 特定の EMR Studio アクションを許可する IAM セッションポリシーを定義します。ユーザーを Studio に割り当てるときに、セッションポリシーをユーザーにマッピングします。

詳細については、「IAM Identity Center 認証モードのユーザーアクセス許可」を参照してください。

アクセスコントロール

Amazon EMR Studio では、AWS Identity and Access Management (IAM) ID ベースのポリシーを使用してユーザー認可 (アクセス許可) を設定します。これらのポリシーでは、許可するアクションとリソース、およびアクションを許可する条件を指定します。

IAM 認証モードのユーザーアクセス許可

EMR Studio で IAM 認証を使用するときにユーザーアクセス許可を設定するには、IAM アクセス許可ポリシーで elasticmapreduce:RunJobFlow のようなアクションを許可します。使用するアクセス許可ポリシーを 1 つ以上作成できます。例えば、ユーザーが新しい Amazon EMR クラスターを作成することを許可しない基本ポリシーと、クラスターの作成を許可する別のポリシーを作成できます。Studio のすべてのアクションのリストについては、「AWS Identity and Access Management EMR Studio ユーザーの アクセス許可」を参照してください。

IAM Identity Center 認証モードのユーザーアクセス許可

IAM Identity Center 認証を使用する場合、単一の EMR Studio ユーザーロールを作成します。ユーザーロールは、ユーザーがログインしたときに Studio が担う専用の IAM ロールです。

IAM セッションポリシーを EMR Studio ユーザーロールにアタッチします。セッションポリシーは、Studio ログインセッション中にフェデレーティッドユーザーが実行できる操作を制限する特別な種類の IAM アクセス許可ポリシーです。セッションポリシーを使用すると、EMR Studio の複数のユーザーロールを作成せずに、ユーザーまたはグループの特定のアクセス許可を設定できます。

Studio にユーザーとグループを割り当てるときに、セッションポリシーをそのユーザーまたはグループにマッピングして、きめ細かいアクセス許可を適用します。また、ユーザーまたはグループのセッションポリシーは、いつでも更新できます。Amazon EMR では、作成した各セッションポリシーマッピングが保存されます。

セッションポリシーの詳細については、「AWS Identity and Access Management ユーザーガイド」の「Policies and permissions」を参照してください。

ワークスペース

Workspace は Amazon EMR Studio の主要な構成要素です。ノートブックを整理するには、ユーザーは Studio に 1 つ以上の Workspace を作成します。詳細については、「Workspace の基本の説明」を参照してください。

JupyterLab の Workspace と同様に、Workspace はノートブックの作業の状態を保持します。ただし、Workspace ユーザーインターフェイスは、EMR クラスターの作成とアタッチ、ジョブの実行、サンプルノートブックの探索、Git リポジトリへのリンクを可能にする追加ツールでオープンソースの JupyterLab インターフェイスを拡張します。

次のリストには、EMR Studio Workspace の主な機能が含まれています。

  • Workspace の可視性は Studio ベースです。ある Studio で作成した Workspace は、他の Studio では表示されません。

  • デフォルトでは、Workspace は共有され、すべての Studio ユーザーが表示できます。ただし、Workspace を開いて作業できるのは一度に 1 人のユーザーのみです。他のユーザーと同時に作業する場合は、「Workspace コラボレーションを設定する」を参照してください。

  • Workspace コラボレーションを有効にすると、Workspace 内の他のユーザーと同時にコラボレーションできます。詳細については、「Workspace コラボレーションを設定する」を参照してください。

  • Workspace 内のノートブックは、コマンドを実行するために同じ EMR クラスターを共有します。Workspace は、Amazon EC2 で実行されている Amazon EMR クラスター、または Amazon EMR on EKS 仮想クラスターおよびマネージドエンドポイントにアタッチできます。

  • Workspace は、Studio のサブネットに関連付けた別のアベイラビリティーゾーンに切り替えることができます。Workspace を停止して再起動して、フェイルオーバープロセスを促すことができます。Workspace を再起動すると、Studio が複数のアベイラビリティーゾーンにアクセスできるように設定されている場合、EMR Studio は Studio の VPC 内の別のアベイラビリティーゾーンで Workspace を起動します。Studio にアベイラビリティーゾーンが 1 つしかない場合、EMR Studio は異なるサブネットで Workspace を起動しようとします。詳細については、「Workspace の接続の問題を解決する」を参照してください。

  • Workspace は、Studio に関連付けられているいずれかのサブネット内のクラスターに接続できます。

EMR Studio Workspace の作成と設定の詳細については、「Workspace の基本の説明」を参照してください。

Amazon EMR Studio でのノートブックストレージ

Workspace を使用している場合、EMR Studio は、Studio に関連付けられた Amazon S3 の場所にあるノートブックファイルにセルを定期的に自動保存します。このバックアッププロセスでは、セッション間の作業が保持されるため、Git リポジトリに変更をコミットせずに後で戻ることができます。詳細については、「Workspace コンテンツの保存」を参照してください。

Workspace からノートブックファイルを削除すると、EMR Studio によって Amazon S3 からバックアップバージョンが削除されます。ただし、最初にノートブックファイルを削除せずに Workspace を削除すると、ノートブックファイルは Amazon S3 に残り、ストレージ料金が引き続き課金されます。詳細については、「Workspace およびノートブックファイルを削除する」を参照してください。