コンピューティング ポリシーの作成と管理

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

Note

ポリシーを使用するには、Premium プランが必要です。

コンピューティング ポリシーとは

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

ポリシーを使用すると以下のメリットが得られます。

  • 指定された設定でユーザーがクラスターを作成するように制限します。
  • ユーザーが特定の数のクラスターを作成するように制限します。
  • ユーザー インターフェイスを単純化し、いくつかの値を修正したり非表示にしたりすることで、より多くのユーザーが独自のクラスターを作成できるようにします。
  • クラスターあたりの最大コストを制限して (値が時間単位の価格に影響する属性に制限を設定して) コストを制御します。
  • クラスタースコープのライブラリのインストールを適用します。

ポリシーの作成

ポリシーを作成するための基本的な手順は以下のとおりです。 ポリシーを定義する方法については、「コンピューティング ポリシーのリファレンスを参照してください。

  1. サイド バーで compute icon [コンピューティング] をクリックします。
  2. [ポリシー] タブをクリックします。
  3. [Create policy](ポリシーの作成) をクリックします。
  4. ポリシーに名前を付けます。 ポリシー名は大文字と小文字が区別されます。
  5. 必要な場合、[ファミリ] ドロップダウンからポリシー ファミリ を選択します。 これにより、ポリシーの作成元となるテンプレートが決まります。
  6. ポリシーの [説明] を入力します。 これは、他のユーザーがポリシーの目的を知るのに役立ちます。
  7. [定義] タブで、ポリシー定義を入力します。
  8. [ライブラリ] タブで、ポリシーでコンピューティングにインストールするコンピューティングスコープのライブラリを追加します。 「ライブラリをポリシーに追加する」を参照してください。
  9. [アクセス許可] タブで、ポリシーのアクセス許可を割り当てます。必要な場合、1 人のユーザーがそのポリシーを使用して作成できるリソースの最大数も設定できます。
  10. Create をクリックしてください。

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

ポリシーを作成する際には、必要に応じてポリシー ファミリの使用を選択できます。 ポリシー ファミリとは、Azure Databricks に用意されている、一般的なコンピューティング ユース ケース向けの、事前設定済みルール付きポリシー テンプレート群です。

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

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

ポリシーにライブラリを追加することで、コンピューティング リソースにライブラリを自動的にインストールできます。 ポリシーには最大 500 個のライブラリを追加できます。

Note

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

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

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

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

  3. [ライブラリ ソース] オプションのいずれかを選び、以下の手順を実行します。

    ライブラリ ソース 手順
    ワークスペース ワークスペース ファイルを選ぶか、Whl、zip 形式の wheelhouse、JAR、ZIP、tar、または requirements.txt ファイルをアップロードします。 「ワークスペース ファイルからライブラリをインストールする」を参照してください
    Volumes ボリュームから Whl、JAR、またはrequirements.txt ファイルを選択します。 「ボリュームからライブラリをインストールする」を参照してください。
    File Path/ADLS (ファイル パス/ADLS) ライブラリの種類を選び、ライブラリ オブジェクトへの完全な URI を指定します (例: abfss://container-name@storage-account-name.dfs.core.windows.net/path/to/library.whl)。 「オブジェクト ストレージからライブラリをインストールする」を参照してください。
    PyPI PyPI パッケージ名を入力します。 「PyPi パッケージ」をご覧ください。
    Maven Maven 座標を指定します。 「Maven または Spark パッケージ」をご覧ください。
    CRAN パッケージの名前を入力します。 「CRAN パッケージ」をご覧ください。
    DBFS (非推奨) JAR または Whl ファイルを DBFS ルートに読み込みます。 DBFS に保存されているファイルはどのワークスペース ユーザーでも変更できるため、これはお勧めしません。
  4. [追加] をクリックします。

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

ライブラリをポリシーに追加した場合:

  • ユーザーは、このポリシーを使うコンピューティングにコンピューティングスコープのライブラリをインストールまたはアンインストールすることはできません。
  • 既存のコンピューティング上で UI、REST API、または CLI を介して構成されたライブラリは、コンピューティングが次に再起動されたときに削除されます。
  • ジョブ コンピューティング リソースでこのポリシーを使うタスクの依存ライブラリは無効になります。

ポリシーのアクセス許可

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

無制限のクラスター作成アクセス許可を持っているユーザーは、無制限ポリシーにもアクセスでき、 したがって、完全に構成可能なコンピューティング リソースを作成できます。

ポリシーに一切アクセスできないユーザーに対しては、UI のポリシー ドロップダウンは表示されません。

ユーザー 1 人あたりのコンピューティング リソースの数を制限する

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

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

Note

Azure Databricks は、制限を維持するためにリソースを積極的に終了させることはしません。 ユーザーがポリシーの下で 3 個つのコンピューティング リソースを実行しているとき、ワークスペース管理者がその制限を 1 個に減らしても、既にある 3 個のリソースの実行は続きます。 制限に準拠するには、超過分のリソースを手動で終了する必要があります。

ポリシーを管理する

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

また、特定のポリシーを使用しているコンピューティング リソースの一覧を表示することで、ポリシーの採用状況を監視できます。 [ポリシー] ページで、表示したいポリシーをクリックします。 [コンピューティング] タブまたは [ジョブ] タブをクリックすると、そのポリシーを使用しているリソースの一覧が表示されます。

ポリシーを編集する

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

ポリシーの定義を更新した後、そのポリシーを使用して作成されたコンピューティング リソースは、新しいポリシー定義では自動的に更新されません。 ポリシー コンプライアンスの適用により、これらのコンピューティング リソースのすべてまたは一部を更新することができます。 「ポリシーへの準拠を適用する」を参照してください。

ポリシーを複製する

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

ポリシーの削除

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

削除されたポリシーに基づくコンピューティングはその後も実行可能ですが、編集することはできません (ユーザーが無制限のクラスター作成アクセス許可を持っていない限り)。

ポリシーへの準拠を適用する

ポリシーを編集した後、そのポリシーを使用して作成されたコンピューティング リソースは、自動的には新しいポリシー規則に従って更新されません。 ポリシーによって管理されるコンピューティング リソースの一覧を表示するには、UI でポリシーをクリックした後、[コンピューティング] タブをクリックして関連する汎用コンピューティングの一覧を表示するか、[ジョブ] タブをクリックしてそのポリシーが管理するコンピューティングで実行されるジョブの一覧を表示します。

これらの一覧では、コンピューティング リソースが現在のポリシー定義に違反しているかどうかも把握できます。

ポリシー コンプライアンス共有コンピューティング UI

コンピューティング リソースを更新し、ポリシーに準拠させる方法

  1. [ポリシー] ページで、更新したポリシーをクリックします。
  2. [コンピューティング] タブまたは [ジョブ] タブをクリックすると、そのポリシーを使用しているリソースの一覧が表示されます。 [準拠] 列には、現在のポリシー定義に準拠しているリソースが表示されます。
  3. [すべて修正] をクリックすると、リスト内のコンプライアンスに違反しているすべてのコンピューティング リソースを更新します。 リソースの行にある [修正] ボタンをクリックして、コンピューティング リソースを個別に更新することもできます。
  4. (省略可能) 現在実行中のコンピューティングにポリシーを適用する場合は、[実行中のクラスターに適用] チェックボックスをオンにします。 この場合、実行中のコンピューティング リソースが直ちに再起動されます。
  5. [適用] をクリックして更新を行います。 適用操作が完了すると、行われた変更の概要が表示されます。
  6. [Done] をクリックします。

また、コンプライアンスに違反している汎用コンピューティング リソースの場合、コンピューティング詳細 UI で [コンプライアンス違反] ラベルが付与されます。 そのコンピューティング リソースに対する CAN MANAGE アクセス許可を持つユーザーの場合、このページで [その他][コンプライアンスの修正] の順番にクリックするとコンプライアンスを適用できます。

ポリシーコンプライアンス違反のUI