View a markdown version of this page

ユーザーバックグラウンドセッション - Amazon EMR

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

ユーザーバックグラウンドセッション

ユーザーのバックグラウンドセッションにより、ユーザーがノートブックのインターフェイスからログオフした後でも、長時間実行される分析と機械学習のワークロードを続行できます。EC2 リリース 7.11 の EMR 以降、この機能は EMR-EC2 の信頼できる ID 伝達機能を通じて利用できます。以下のセクションでは、ユーザーバックグラウンドセッションの設定オプションと動作について説明します。

注記

ユーザーバックグラウンドセッション設定は、SageMaker Unified Studio を介して起動される Spark ワークロードにのみ影響します。この設定の変更は新しい Livy セッションに適用されます。既存のアクティブなセッションは影響を受けません。

ユーザーバックグラウンドセッションを設定する

適切に機能させるには、ユーザーバックグラウンドセッションを 2 つのレベルで有効にする必要があります。

  1. IAM Identity Center インスタンスレベル (IdC 管理者が設定)

  2. EMR クラスターレベル (EMR クラスター管理者が設定)

Amazon EMR のユーザーバックグラウンドセッションを有効にする

のユーザーバックグラウンドセッションを有効にするには、EMR セキュリティ設定を作成するidentityCenterConfigurationときに、 trueuserBackgroundSessionsEnabledパラメータを に設定する必要があります。

前提条件:

  • EMR セキュリティ設定の作成または更新に使用される IAM ロールには、 アクセスsso:PutApplicationSessionConfiguration許可が必要です。このアクセス許可により、Amazon EMR マネージド IAM アイデンティティセンターアプリケーションのユーザーバックグラウンドセッションが有効になります。

  • IAM Identity Center の IAM ロールを作成する

  • リリース 7.11 以降で EMR クラスターを起動し、Trusted-Identity Propagation を有効にします。

ステップ 1 - Identity Center UserBackgroundSession 対応 EMR セキュリティ設定を作成する

ユーザーは EnableUserBackgroundSessionフラグを true に設定する必要があります。これにより、EMR サービスは EMR マネージド IDC アプリケーションレベルで UserBackgourndSession を有効にすることができます。このフラグが に設定されているfalseかどうかにかかわらず、EMR はデフォルトで IDC UserBackgroundSession を無効にします。

の使用例 AWS CLI:

aws emr create-security-configuration --name "idc-userBackgroundSession-enabled-secConfig" \ --region AWS_REGION \ --security-configuration ' \ { "AuthenticationConfiguration":{ "IdentityCenterConfiguration":{ "EnableIdentityCenter":true, "IdentityCenterInstanceARN": "arn:aws:sso:::instance/ssoins-123xxxxxxxxxx789", "IdentityCenterApplicationAssigmentRequired": false, "EnableUserBackgroundSession": true, "IAMRoleForEMRIdentityCenterApplicationARN": "arn:aws:iam::12345678912:role/YOUR_ROLE" } },\ "AuthorizationConfiguration": { "IAMConfiguration": { "EnableApplicationScopedIAMRole": true, "ApplicationScopedIAMRoleConfiguration": { "PropagateSourceIdentity": true } },\ "LakeFormationConfiguration": { "AuthorizedSessionTagValue": "Amazon EMR" } },\ "EncryptionConfiguration": { "EnableInTransitEncryption": true, "EnableAtRestEncryption": false, "InTransitEncryptionConfiguration": { "TLSCertificateConfiguration": { "CertificateProviderType": "PEM", "S3Object": "s3://amzn-s3-demo-bucket/cert/my-certs.zip" } } } }'

ステップ 2 - Identity Center 対応クラスターを作成して起動する

ここまでで、Identity Center で認証する IAM ロールを設定し、Identity Center を有効にする Amazon EMR セキュリティ設定を作成できたので、Identify Center 対応クラスターを作成して起動できます。必要なセキュリティ設定でクラスターを起動する手順については、「Amazon EMR クラスターのセキュリティ設定を指定する」を参照してください。

設定マトリックス

ユーザーバックグラウンドセッションの動作は、EMR-EC2 設定と IAM Identity Center インスタンスレベルの設定の両方によって異なります。

ユーザーバックグラウンドセッション設定マトリックス
IAM アイデンティティセンター userBackgroundSession 有効 Amazon EMR userBackgroundSessionsEnabled 動作
はい TRUE ユーザーバックグラウンドセッションが有効
はい ユーザーログアウトでセッションの有効期限が切れる
なし TRUE ユーザーログアウトでセッションの有効期限が切れる
いいえ ユーザーログアウトでセッションの有効期限が切れる

デフォルトのユーザーバックグラウンドセッション期間

デフォルトでは、IAM Identity Center のすべてのユーザーバックグラウンドセッションの期間制限は 7 日間です。管理者は、IAM Identity Center コンソールでこの期間を変更できます。この設定は IAM Identity Center インスタンスレベルで適用され、そのインスタンス内でサポートされているすべての IAM Identity Center アプリケーションに影響します。

  • 期間は 15 分から 90 日までの任意の値に設定できます。

  • この設定は、IAM Identity Center コンソールの設定 → 認証設定で設定されます (「非インタラクティブジョブ」セクションを参照)。

ユーザーのバックグラウンドセッションを無効にした場合の影響

IAM Identity Center でユーザー背景セッションが無効になっている場合:

既存の Livy セッション
  • ユーザーバックグラウンドセッションを有効にして開始した場合は、中断することなく実行を続行します。これらのセッションは、自然に終了するか明示的に停止されるまで、既存のバックグラウンドセッショントークンを使用し続けます。

新しい Livy セッション
  • 標準の信頼できる ID 伝達フローを使用し、ユーザーがログアウトするか、インタラクティブセッションの有効期限が切れると終了します (Amazon SageMaker Unified Studio JupyterLab ノートブックを閉じる場合など)。

ユーザーバックグラウンドセッションの期間の変更

IAM Identity Center でユーザーバックグラウンドセッションの期間設定が変更された場合:

既存の Livy セッション
  • 開始したのと同じバックグラウンドセッション期間で実行を続行します。

新しい Livy セッション
  • バックグラウンドセッションに新しいセッション期間を使用します。

考慮事項

機能を利用できるリージョン

Amazon EMR のユーザーバックグラウンドセッションは、以下に使用できます。

  • Spark エンジンのみ (Hive エンジンはサポートされていません)

  • Livy インタラクティブセッションのみ (バッチジョブとストリーミングジョブはサポートされていません)

  • Amazon EMR リリースラベル 7.11 以降。EMR リリース 7.11 では、ブートストラップアクションスクリプトをインストールして、クラスターの作成時にユーザーバックグラウンドセッションを有効にする必要があります。詳細については、 AWS サポートにお問い合わせください。

    注記

    SageMaker Unified Studio プロビジョンドクラスターを使用している場合、この機能を使用するにはブートストラップアクションスクリプトは必要ありません。

コストへの影響

  • ジョブは、ユーザーが Amazon SageMaker Unified Studio JupyterLab セッションを終了した後も完了まで実行され続け、完了した実行の全期間に対して料金が発生します。

  • アクティブなバックグラウンドセッションをモニタリングして、セッションを忘れたり中止したりする不要なコストを回避します。

Livy セッションの終了条件

ユーザーバックグラウンドセッションを使用する場合、Livy セッションは次のいずれかが発生するまで実行され続けます。

  • ユーザーバックグラウンドセッションの有効期限が切れます (IdC 設定に基づき、最大 90 日間)。

  • ユーザーバックグラウンドセッションは、管理者によって手動で取り消されます。

  • Livy セッションはアイドルタイムアウト (デフォルト: 最後に実行されたステートメントから 8 時間後) に達します。

  • ユーザーはノートブックカーネルを明示的に停止または再起動します。