コンピュートポリシーの作成と管理

この記事では、ワークスペースでポリシーを作成および管理する方法について説明します。 ポリシー定義の記述に関する情報については、「 コンピュート ポリシー リファレンス」を参照してください。

ポリシーには Premium プランが必要です。

コンピュート ポリシーとは何ですか?

ポリシーは、ワークスペース管理者が一連のポリシー ルールに基づいてユーザーまたはグループのコンピュート作成アクセス許可を制限するために使用できるツールです。

ポリシーには、次の利点があります。

  • ユーザーによるクラスターの作成を所定の設定に制限します。

  • ユーザーによるクラスターの作成を特定の数に制限します。

  • (一部の値を修正および非表示にすることによって)ユーザーインターフェースを簡素化し、より多くのユーザーが独自のクラスターを作成できるようにします。

  • クラスターごとの最大コストを制限してコストを制御します(時間単位の価格に寄与する値を持つ属性に制限を設定します)。

  • クラスター スコープのライブラリのインストールを強制します。

ポリシーを作成する

これらは、ポリシーを作成するための基本的な手順です。 ポリシーを定義する方法については、「 コンピュート ポリシー リファレンス」を参照してください。

  1. サイドバーの [コンピュートアイコン コンピュート] をクリックします。

  2. [ポリシー] タブをクリックします。

  3. ポリシーの作成」をクリックします。

  4. ポリシーに名前を付けます。ポリシー名では大文字と小文字が区別されません。

  5. 必要に応じて、[ ファミリ ] ドロップダウンからポリシー ファミリを選択します。 これにより、ポリシーの作成元となるテンプレートが決まります。

  6. ポリシーの [説明] を入力します。これは、他のユーザーがポリシーの目的を知るのに役立ちます。

  7. [ 定義] タブで、 ポリシー定義を入力します。

  8. [ ライブラリ ] タブで、ポリシーでコンピュートにインストールするコンピュート スコープのライブラリを追加します。 「ポリシーへのライブラリの追加」を参照してください。

  9. [ アクセス許可] タブで、ポリシーのアクセス許可を割り当て、必要に応じて、ユーザーがそのポリシーを使用して作成できるリソースの最大数を設定します。

  10. [作成]をクリックします。

ポリシー ファミリを使用する

ポリシーを作成するときに、ポリシー ファミリの使用を選択できます。 ポリシー ファミリは、一般的なコンピュート ユース ケースに対応するように設計された、事前に設定されたルールを持つ Databricks が提供するポリシー テンプレートです。

ポリシーファミリーを使用する場合、ポリシーのルールはポリシーファミリーから継承されます。 ポリシー ファミリを選択した後、ポリシーをそのまま作成することも、ルールを追加するか、特定のルールを上書きするかを選択できます。 ポリシーファミリーの詳細については、「 デフォルトのポリシーとポリシーファミリー」を参照してください。

ポリシーへのライブラリの追加

ライブラリをポリシーに追加して、 ライブラリ がコンピュートリソースに自動的にインストールされるようにすることができます。 最大 500 個のライブラリをポリシーに追加できます。

以前に initScript を使用してコンピュートスコープのライブラリを追加している可能性があります。 Databricks では、initスクリプトの代わりにコンピュート ポリシーを使用してライブラリをインストールすることをお勧めします。

ポリシーにライブラリを追加するには:

  1. [ ポリシーの作成 ] ページの下部にある [ ライブラリ] タブをクリックします。

  2. [ ライブラリの追加] をクリックします。

  3. 「ライブラリソース」オプションの 1 つを選択し、以下の手順に従います。

    ライブラリのソース

    手順

    ワークスペース

    ワークスペース ファイルを選択するか、Whl、zip 形式のホイールハウス、JAR、ZIP、tar、またはrequirements.txt ファイルをアップロードします。 「ワークスペース ファイルからライブラリをインストールする」を参照してください。

    ボリューム

    ボリュームからWhl、JAR、またはrequirements.txtファイルを選択します。 「ボリュームからライブラリをインストールする」を参照してください。

    ファイルパス/GCS

    ライブラリのタイプを選択し、ライブラリ オブジェクトに完全な URI を指定します (例: gs://bucket-name/path/to/library.whl )。 「オブジェクト ストレージからライブラリをインストールする」を参照してください。

    PyPI

    PyPI パッケージ名を入力します。 PyPI パッケージを参照してください。

    Maven

    Maven 座標を指定します。 「Maven または Spark パッケージ」を参照してください。

    CRAN

    パッケージの名前を入力します。 「CRAN パッケージ」を参照してください。

    DBFS (推奨されません)

    JAR または Whl ファイルを DBFS ルートにロードします。 DBFS に保存されているファイルはどのワークスペース ユーザーでも変更できるため、これは推奨されません。

  4. [追加] をクリックします。

ポリシーにライブラリを追加した場合の影響

ポリシーにライブラリを追加する場合:

  • ユーザーは、このポリシーを使用するコンピュートでコンピュートスコープのライブラリをインストールまたはアンインストールすることはできません。

  • 既存のコンピュートで UI、REST API、または CLI を使用して構成されたライブラリは、次回コンピュートを再起動したときに削除されます。

  • ジョブコンピュートリソースでこのポリシーを使用するタスクの依存関係ライブラリは無効になります。

ポリシーのアクセス許可

既定では、ワークスペース管理者はすべてのポリシーに対するアクセス許可を持っています。 管理者以外のユーザーがポリシーにアクセスするには、ポリシーに対するアクセス許可を付与する必要があります。

ユーザーが無制限のクラスター作成アクセス許可を持っている場合は、 無制限 ポリシーにもアクセスできます。 これにより、完全に構成可能なコンピュートリソースを作成できます。

ユーザーがどのポリシーにもアクセスできない場合、ポリシーのドロップダウンは UI に表示されません。

ユーザーあたりのコンピュートリソースの数を制限する

ポリシーのアクセス許可を使用すると、ユーザーあたりのコンピュート リソースの最大数を設定できます。 これにより、ユーザーがそのポリシーを使用して作成できるリソースの数が決まります。 ユーザーが制限を超えると、操作は失敗します。

ユーザーがポリシーを使用して作成できるリソースの数を制限するには、ポリシー UI の [アクセス許可] タブにある [ユーザーあたりの最大コンピュートリソース数] 設定に値を入力します。

Databricks では、制限を維持するためにリソースを事前に終了することはありません。 ユーザーがポリシーで実行している 3 つのコンピュート リソースを持っていて、ワークスペース管理者が制限を 1 つに減らした場合、3 つのリソースは引き続き実行されます。 余分なリソースは、制限に準拠するために手動で終了する必要があります。

ポリシーを管理する

ポリシーを作成したら、そのポリシーを編集、複製、および削除できます。

また、ポリシーを使用するコンピュート リソースを表示して、ポリシーの採用を監視することもできます。 [ ポリシー] ページで、表示するポリシーをクリックします。 次に、[ コンピュート ] タブまたは [ジョブ ] タブをクリックして、ポリシーを使用するリソースの一覧を表示します。

ポリシーの編集

ポリシーを編集して、そのアクセス許可または定義を更新できます。 ポリシーを編集するには、[ポリシー] ページからポリシーを選択し、[ 編集] をクリックします。 [ 編集 ] をクリックした後、[アクセス許可] タブをクリックしてポリシーの アクセス許可 を更新できます。 その後、ポリシーの定義を更新することもできます。

ポリシーの定義を更新した後、そのポリシーを使用するコンピュートは、新しいポリシー ルールに準拠するように自動的に更新されませんが、ユーザーがコンピュート リソースを編集しようとすると、ポリシー ルールが有効になります。

ポリシーの複製

複製機能を使用して、既存のポリシーから新しいポリシーを作成することもできます。 複製するポリシーを開き、[ 複製 ] ボタンをクリックします。 次に、変更するフィールドの値を変更し、[ 作成] をクリックします。

ポリシーを削除する

[ポリシー] ページからポリシーを選択し、[ 削除] をクリックします。 ポリシーを削除するかどうかを確認するメッセージが表示されたら、もう一度 [ 削除 ] をクリックします。

削除されたポリシーによって管理されるコンピュートは引き続き実行できますが、ユーザーが無制限のクラスター作成アクセス許可を持っていない限り、編集することはできません。