クロスアカウント IAMロールの権限
この記事では、クロスアカウントIAMロールの権限と各ロールの目的を示します。
権限は、VPCの設定方法によって異なります。
Databricks マネージド VPC の IAM アクセス許可
Databricks では、クラスターを効果的に操作および管理するために、次の IAM アクセス許可の一覧が必要です。 この構成は、デフォルト (Databricks で管理されている) VPC を使用するワークスペースにのみ適用されます。 AWSデフォルトDatabricks -managed で使用する cross-アカウントVPC IAMロール ポリシーを作成するには、「 ワークスペース デプロイの ロールを作成する 」を参照してください。
次の表に、デフォルト構成でのDatabricks IAMクロスアカウント・ロールの権限、それらが制御するリソース、および各権限の目的を示します。
AWS IAM権限 | AWSリソース | 目的 |
---|---|---|
| Elastic IPアドレス | セキュアなクラスター接続で使用されるNATゲートウェイに関連付けられたElastic IPを割り当てます。 |
| ネットワークインターフェース | プライベートIPをEC2インスタンスに割り当てます。 |
| DHCP | DHCPオプションのセット(またはDHCPオプションなし)をVPCに関連付けます。 |
| InstanceProfile | インスタンスプロファイルを実行中のEC2インスタンスに関連付けます。これにより、Databricksプール・インスタンスは、プール内での存続期間中、異なるインスタンス・プロファイルを持つクラスターで使用できるようになります。 |
| RouteTable | サブネットをルートテーブルに関連付けます。 |
| InternetGateway | インターネットゲートウェイをVPCにアタッチし、インターネットとVPC間の接続を有効にします。これは現在、S3バケットに接続し、ワーカーコンテナとSparkコンテナのコードを更新するために必要です。 |
| EBS Volume | EBSオートスケーリング用のボリュームをアタッチします。 |
| SecurityGroup | 必要に応じて、エグレスルールをセキュリティグループに追加します。 |
| SecurityGroup | セキュリティグループにイングレスルールを追加します。 |
| SpotInstance | スポットインスタンスをキャンセルします。 |
| DHCP | DHCPオプションを作成します。 |
| EC2 Fleet | EC2フリートを作成します(Databricksフリートクラスターで使用)。 |
| InternetGateway | インターネットゲートウェイを作成します。 |
| Launch Template | 起動テンプレートを作成します(Databricksフリートクラスターで使用)。 |
| Launch Template | 起動テンプレート・バージョンを作成します(Databricksフリートクラスターで使用)。 |
| NatGateway | NATゲートウェイを作成します。 |
| Route | ワークスペースのセットアップ中にルートを作成します。 |
| RouteTable | ワークスペースのセットアップ中にルートを作成します。 |
| SecurityGroup | 初期セットアップ中にセキュリティグループを作成します。 |
| Subnet | ワークスペースのセットアップ中にVPCのサブネットを作成します。 |
| Tags | Databricksリソースにタグを追加します。 |
| EBS Volume | ボリュームを作成します。 |
| VPC | Databricks管理のVPCを作成します。 |
| VPCEndpoint | VPCの構成の一環としてVPCエンドポイントを作成します。 |
| DHCPOptions | DHCPオプションを削除します。 |
| EC2 Fleet | EC2フリートを削除します(Databricksフリートクラスターで使用) |
| InternetGateway | ワークスペースの削除中にインターネットゲートウェイを削除します。 |
| Launch Template | 起動テンプレートとそのすべてのバージョンを削除します。 |
| Launch Template | 起動テンプレート(Databricksフリートクラスターで使用)からバージョンを削除します。 |
| NatGateway | セキュアなクラスター接続リレーをセットアップするために、必要に応じてNATゲートウェイを削除します。 |
| Route | ルートを削除します。 |
| RouteTable | ルートテーブルを削除します。 |
| SecurityGroup | ワークスペースの削除時にセキュリティグループを削除します。 |
| Subnet | サブネットを削除します。 |
| Tags | クラスターリソースからタグを削除し、異なるタグを持つクラスターでDatabricksプールインスタンスを再利用できるようにします。 |
| EBS Volume | EBSオートスケーリング用のボリュームを削除します。このページを参照してください。 |
| VPC | ワークスペースの削除時に顧客がVPCを削除します。 |
| VPCEndpoints | ワークスペースの削除中にVPCエンドポイントを削除します。 |
| AvailabilityZones | リージョン内のアベイラビリティゾーンの一覧を取得し、 Databricksがそのゾーンにリソースをデプロイできるようにします。 |
| EC2 Fleet | EC2フリート内のイベントを一覧表示します(Databricksフリートクラスターで使用)。 |
| EC2 Fleet | EC2フリート内のインスタンスを一覧表示します(Databricksフリートクラスターで使用)。 |
| EC2 Fleet | EC2フリート(Databricksフリートクラスターで使用)の詳細について説明します。 |
| InstanceProfile | EC2インスタンスに設定されている現在のインスタンスプロファイルを確認し、クラスターで再利用する前に、Databricksプールインスタンスに適切なプロファイルが設定されるようにします。 |
| インスタンス | Databricks AWSインスタンスが正常であることを確認します。 |
| インスタンス | Databricks AWSインスタンスが正常であることを確認します。 |
| InternetGateway | DatabricksのAWSインスタンスがインターネットへのルートを持っていることを確認するためのInternetGatewayについて説明します。 |
| Launch Template | 起動テンプレート(Databricksフリートクラスターで使用)を削除します。 |
| Launch Template | 起動テンプレートのバージョン(Databricksフリートクラスターで使用)の詳細について説明します。 |
| NatGateway | Databricks AWSインスタンスにセキュアなクラスター接続アーキテクチャでインターネットへのルートがあることを確認するNATゲートウェイについて説明します。 |
| PrefixList | DatabricksがゲートウェイVPCエンドポイントを経由してAWSサービスにアクセスできるように、VPCからのトラフィックを許可する送信セキュリティグループルールを作成するためのプレフィックスリストIDを作成します。 |
| インスタンス | AWSスポットインスタンスの料金をサポートするリザーブドインスタンスの料金について説明します。 |
| RouteTable | Databricksで管理されるVPCでルートテーブルが正しく設定されていることを確認します。 |
| SecurityGroup | AWSセキュリティグループが正しく設定されていることを確認します。 |
| インスタンス | スポットインスタンスについて説明します。 |
| SpotInstance | スポットインスタンスについて説明します。 |
| Subnet | Databricks VPCでサブネットが正しく設定されていることを確認します。 |
| VOLUME | ボリュームを一覧表示します。 |
| VPC | ワークスペースのVPCが正しく設定されていることを確認します。 |
| InternetGateway | ワークスペースの削除中に、Databricksで作成されたインターネットゲートウェイを接続解除します。 |
| InstanceProfile | EC2インスタンスからインスタンスプロファイルの関連付けを解除し、異なるインスタンスプロファイルを持つクラスターでxDatabricksプールインスタンスを使用できるようにします。 |
| RouteTable | ワークスペースの削除時に、Databricksで作成されたルートテーブルをデタッチします。 |
| 起動テンプレート | 起動テンプレートの構成を取得します(Databricksフリートクラスターで使用されます)。 |
| アベイラビリティゾーン | 指定されたインスタンスタイプに最適なスポット容量を持つAZのリストを取得します。 |
| EC2 Fleet | EC2フリートを変更します(Databricksフリートクラスターで使用)。 |
| 起動テンプレート | 既存の起動テンプレートを変更します(Databricksフリートクラスターで使用)。 |
| VPCAttribute | Databricks管理のVPCを設定します。 |
| Address | ワークスペースの削除中に、Databricksで作成されたアドレスをデタッチします。 |
| InstanceProfile | EC2インスタンス上で1つのインスタンスプロファイルを別のインスタンスプロファイルと交換し、異なるインスタンスプロファイルを持つクラスターでDatabricksプールインスタンスを使用できるようにします。 |
| SpotInstance | スポットインスタンスをリクエストします。 |
| SecurityGroup | 必要に応じて、Databricksで管理されるセキュリティグループを更新します。 |
| SecurityGroup | セキュリティグループを更新します。 |
| インスタンス | AWSインスタンスを起動し、Sparkクラスターを作成します。既存のSparkクラスターをスケールアップする際にも使用できます。 |
| インスタンス | クラスターのスケールダウン時や、指定したSparkクラスターの終了時に、Spark EC2ノードを終了します。 |
| ServiceLinkedRole | スポットインスタンスのサポートを設定します。 |
| RolePolicy | スポットインスタンスを使用するようにDatabricksを構成します。 |
IAM顧客管理 の 権限VPC
顧客管理VPCを使用する場合、クロスアカウント IAMロールに必要な権限のセットは少なくなります。この機能を利用するには 、プレミアムプラン以上が必要です。
顧客管理 で使用する cross-account role ポリシーを作成するには、「AWSVPC オプション 2: 顧客管理VPC with デフォルト restrictions ポリシー 」を参照してください。
必要に応じて、権限をさらに絞り込むことができます。 AWS クロスアカウント ロール ポリシー を、リソースに対する追加のカスタム制限を持つ顧客管理VPCで使用するには、「オプション 3: カスタム ポリシー制限を持つ顧客管理 ポリシーVPC」を参照してください。
次の表に、顧客管理VPCのDatabricks IAMクロスアカウントロール権限、それらが制御するリソース、および各権限の目的を示します。
AWS IAM権限 | AWSリソース | 目的 |
---|---|---|
| InstanceProfile | インスタンスプロファイルを実行中のEC2インスタンスに関連付けて、プール内の存続期間中、異なるインスタンスプロファイルを持つクラスターでDatabricksプールインスタンスを使用できるようにします。 |
| VOLUME | ボリュームをアタッチします。 |
| SecurityGroup | 必要に応じて、イグレスルールをセキュリティグループに追加します。 |
| SecurityGroup | セキュリティグループにイングレスルールを追加します。 |
| SpotInstance | スポットインスタンスをキャンセルします。 |
| EC2 Fleet | EC2フリートを作成します(Databricksフリートクラスターで使用)。 |
| Launch Template | 起動テンプレートを作成します(Databricksフリートクラスターで使用)。 |
| Tags | Databricksリソースにタグを追加します。 |
| VOLUME | ボリュームを作成します。 |
| EC2 Fleet | EC2フリートを削除します(Databricksフリートクラスターで使用) |
| Launch Template | 起動テンプレートとそのすべてのバージョンを削除します。 |
| Launch Template | 起動テンプレート(Databricksフリートクラスターで使用)からバージョンを削除します。 |
| Tags | クラスターリソースからタグを削除して、Databricksプールインスタンスを異なるタグを持つクラスターで再利用できるようにします。 |
| VOLUME | ボリュームを削除します。 |
| AvailabilityZones | Databricksがそのゾーンにリソースをデプロイできるように、リージョン内のアベイラビリティゾーンのリストを取得します。 |
| InstanceProfile | EC2インスタンスに設定されている現在のインスタンスプロファイルをチェックして、クラスターで再利用する前に、Databricksプールインスタンスに正しいプロファイルが設定されていることを確認します。 |
| インスタンス | Databricks AWSインスタンスが正常であることを確認します。 |
| インスタンス | Databricks AWSインスタンスが正常であることを確認します。 |
| InternetGateway | DatabricksのAWSインスタンスがインターネットへのルートを持っていることを確認するためのInternetGatewayについて説明します。 |
| EC2 Fleet | EC2フリート内のイベントを一覧表示します(Databricksフリートクラスターで使用)。 |
| EC2 Fleet | EC2フリート内のインスタンスを一覧表示します(Databricksフリートクラスターで使用)。 |
| EC2 Fleet | EC2フリート(Databricksフリートクラスターで使用)の詳細について説明します。 |
| Launch Template | 起動テンプレート(Databricksフリートクラスターで使用)を削除します。 |
| Launch Template | 起動テンプレートのバージョン(Databricksフリートクラスターで使用)の詳細について説明します。 |
| NatGateway | Databricks AWSインスタンスがセキュアなクラスター接続アーキテクチャでインターネットへのルートを持っていることを確認するためのNatGatewayについて説明します。 |
| NetworkAcl | ネットワークACLが正しく設定されていることを確認します。 |
| PrefixList | VPCからのトラフィックがゲートウェイVPCエンドポイントを経由してAWSサービスにアクセスすることを許可する送信セキュリティグループルールを作成するための、プレフィックスリストIDのリストを取得します。 |
| インスタンス | AWSスポットインスタンスの価格設定の開始点として、リザーブドインスタンスの価格を取得します。 |
| RouteTable | VPC内でルートテーブルが正しく設定されていることを確認します。 |
| SecurityGroup | AWSセキュリティグループが正しく設定されていることを確認します。 |
| インスタンス | スポットインスタンスについて説明します。 |
| SpotInstance | スポットインスタンスについて説明します。 |
| Subnet | VPC内にサブネットが正しく設定されていることを確認します。 |
| VOLUME | ボリュームを一覧表示します。 |
| VPC |
|
| VPC | DatabricksワークスペースVPCが作成されたことを確認します。 |
| VOLUME | クラスターのシャットダウン中にEC2インスタンスからEBSボリュームをデタッチします。 |
| InstanceProfile | インスタンスプロファイルとEC2インスタンスの関連付けを解除し、異なるインスタンスプロファイルを持つクラスターでプールインスタンスを使用できるようにします。 |
| 起動テンプレート | 起動テンプレートの構成を取得します(Databricksフリートクラスターで使用されます)。 |
| EC2 Fleet | EC2フリートを変更します(Databricksフリートクラスターで使用)。 |
| 起動テンプレート | 既存の起動テンプレートを変更します(Databricksフリートクラスターで使用)。 |
| InstanceProfile | EC2インスタンス上で1つのインスタンスプロファイルを別のインスタンスプロファイルと交換し、異なるインスタンスプロファイルを持つクラスターでプールインスタンスを使用できるようにします。 |
| SpotInstance | スポットインスタンスをリクエストします。 |
| SecurityGroup | 必要に応じて、Databricksで管理するセキュリティグループを更新します。 |
| SecurityGroup | セキュリティグループを更新します。 |
| インスタンス | AWSインスタンスを起動し、Sparkクラスターを作成します。既存のSparkクラスターをスケールアップするためにも使用されます。 |
| インスタンス | クラスターのスケールダウン時やSparkクラスタの終了時にSpark EC2ノードを終了します。 |
| ServiceLinkedRole | スポットインスタンスのサポートを設定します。 |
| RolePolicy | スポットインスタンスを使用するようにDatabricksを構成します。 |