コンピューティング ポリシーの作成と管理
この記事では、ワークスペース内でポリシーを作成および管理する方法について説明します。 ポリシー定義の書き方については、「コンピューティング ポリシーのリファレンス」を参照してください。
Note
ポリシーを使用するには、Premium プランが必要です。
コンピューティング ポリシーとは
ポリシーはワークスペース管理者向けのツールです。ユーザーまたはグループのコンピューティング作成アクセス許可を、一連のポリシー ルールに基づいて制限することができます。
ポリシーを使用すると以下のメリットが得られます。
- 指定された設定でユーザーがクラスターを作成するように制限します。
- ユーザーが特定の数のクラスターを作成するように制限します。
- ユーザー インターフェイスを単純化し、いくつかの値を修正したり非表示にしたりすることで、より多くのユーザーが独自のクラスターを作成できるようにします。
- クラスターあたりの最大コストを制限して (値が時間単位の価格に影響する属性に制限を設定して) コストを制御します。
- クラスタースコープのライブラリのインストールを適用します。
ポリシーの作成
ポリシーを作成するための基本的な手順は以下のとおりです。 ポリシーを定義する方法については、「コンピューティング ポリシーのリファレンスを参照してください。
- サイド バーで
[コンピューティング] をクリックします。
- [ポリシー] タブをクリックします。
- [Create policy](ポリシーの作成) をクリックします。
- ポリシーに名前を付けます。 ポリシー名は大文字と小文字が区別されます。
- 必要な場合、[ファミリ] ドロップダウンからポリシー ファミリ を選択します。 これにより、ポリシーの作成元となるテンプレートが決まります。
- ポリシーの [説明] を入力します。 これは、他のユーザーがポリシーの目的を知るのに役立ちます。
- [定義] タブで、ポリシー定義を入力します。
- [ライブラリ] タブで、ポリシーでコンピューティングにインストールするコンピューティングスコープのライブラリを追加します。 「ライブラリをポリシーに追加する」を参照してください。
- [アクセス許可] タブで、ポリシーのアクセス許可を割り当てます。必要な場合、1 人のユーザーがそのポリシーを使用して作成できるリソースの最大数も設定できます。
- Create をクリックしてください。
ポリシー ファミリを使用する
ポリシーを作成する際には、必要に応じてポリシー ファミリの使用を選択できます。 ポリシー ファミリとは、Azure Databricks に用意されている、一般的なコンピューティング ユース ケース向けの、事前設定済みルール付きポリシー テンプレート群です。
ポリシー ファミリを使用する場合、ポリシーのルールはポリシー ファミリから継承されます。 ポリシー ファミリを選択したら、そのままポリシーを作成することも、ルールの追加または特定のルールのオーバーライドを選択することもできます。 ポリシー ファミリの詳細については、「既定のポリシーとポリシー ファミリ」を参照してください。
ライブラリをポリシーに追加する
ポリシーにライブラリを追加することで、コンピューティング リソースにライブラリを自動的にインストールできます。 ポリシーには最大 500 個のライブラリを追加できます。
Note
以前に init スクリプトを使って、コンピューティングスコープのライブラリを追加している可能性があります。 Databricks では、init スクリプトではなくコンピューティング ポリシーを使ってライブラリをインストールすることをお勧めします。
ポリシーにライブラリを追加するには:
[ポリシーの作成] ページの下部にある [ライブラリ] タブをクリックします。
[ライブラリの追加] をクリックします。
[ライブラリ ソース] オプションのいずれかを選び、以下の手順を実行します。
ライブラリ ソース 手順 ワークスペース ワークスペース ファイルを選ぶか、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 に保存されているファイルはどのワークスペース ユーザーでも変更できるため、これはお勧めしません。 [追加] をクリックします。
ポリシーにライブラリを追加した場合の影響
ライブラリをポリシーに追加した場合:
- ユーザーは、このポリシーを使うコンピューティングにコンピューティングスコープのライブラリをインストールまたはアンインストールすることはできません。
- 既存のコンピューティング上で UI、REST API、または CLI を介して構成されたライブラリは、コンピューティングが次に再起動されたときに削除されます。
- ジョブ コンピューティング リソースでこのポリシーを使うタスクの依存ライブラリは無効になります。
ポリシーのアクセス許可
既定では、ワークスペース管理者はすべてのポリシーへのアクセス許可を持っています。 管理者以外のユーザーは、ポリシーにアクセスするには、ポリシーへのアクセス許可を得る必要があります。
無制限のクラスター作成アクセス許可を持っているユーザーは、無制限ポリシーにもアクセスでき、 したがって、完全に構成可能なコンピューティング リソースを作成できます。
ポリシーに一切アクセスできないユーザーに対しては、UI のポリシー ドロップダウンは表示されません。
ユーザー 1 人あたりのコンピューティング リソースの数を制限する
ポリシーのアクセス許可を使用すると、ユーザー 1 人あたりコンピューティング リソース数の上限を設定できます。 これにより、そのポリシーを使用してユーザーが作成できるリソースの数が決まります。 ユーザーがこの制限を超えると、操作は失敗します。
1 つのポリシーを使用して 1 人のユーザーが作成できるリソースの数を制限するには、ポリシー UI の [アクセス許可] タブで、[ユーザーあたりの最大コンピューティング リソース数] に設定値を入力します。
Note
Azure Databricks は、制限を維持するためにリソースを積極的に終了させることはしません。 ユーザーがポリシーの下で 3 個つのコンピューティング リソースを実行しているとき、ワークスペース管理者がその制限を 1 個に減らしても、既にある 3 個のリソースの実行は続きます。 制限に準拠するには、超過分のリソースを手動で終了する必要があります。
ポリシーを管理する
ポリシーを作成した後は、そのポリシーを編集、複製、および削除できます。
また、特定のポリシーを使用しているコンピューティング リソースの一覧を表示することで、ポリシーの採用状況を監視できます。 [ポリシー] ページで、表示したいポリシーをクリックします。 [コンピューティング] タブまたは [ジョブ] タブをクリックすると、そのポリシーを使用しているリソースの一覧が表示されます。
ポリシーを編集する
必要な場合は、ここでポリシーを編集してアクセス許可や定義を変更できます。 ポリシーを編集するには、[ポリシー] ページからポリシーを選択し、[編集] をクリックします。 [編集] をクリックした後、[アクセス許可] タブをクリックすると、ポリシーのアクセス許可を変更できます。 その後、ポリシーの定義を変更することもできます。
ポリシーの定義を更新した後、そのポリシーを使用して作成されたコンピューティング リソースは、新しいポリシー定義では自動的に更新されません。 ポリシー コンプライアンスの適用により、これらのコンピューティング リソースのすべてまたは一部を更新することができます。 「ポリシーへの準拠を適用する」を参照してください。
ポリシーを複製する
複製機能を使用すると、既存のポリシーを基にして新しいポリシーを作成できます。 複製元となるポリシーを開き、[複製] ボタンをクリックします。 次に、変更が必要なフィールドの値を変更し、[作成] をクリックします。
ポリシーの削除
[ポリシー] ページで、ポリシーを選択し、[削除] をクリックします。 ポリシーを削除するかどうか確認するメッセージが表示されたら、もう一度 [削除] をクリックします。
削除されたポリシーに基づくコンピューティングはその後も実行可能ですが、編集することはできません (ユーザーが無制限のクラスター作成アクセス許可を持っていない限り)。
ポリシーへの準拠を適用する
ポリシーを編集した後、そのポリシーを使用して作成されたコンピューティング リソースは、自動的には新しいポリシー規則に従って更新されません。 ポリシーによって管理されるコンピューティング リソースの一覧を表示するには、UI でポリシーをクリックした後、[コンピューティング] タブをクリックして関連する汎用コンピューティングの一覧を表示するか、[ジョブ] タブをクリックしてそのポリシーが管理するコンピューティングで実行されるジョブの一覧を表示します。
これらの一覧では、コンピューティング リソースが現在のポリシー定義に違反しているかどうかも把握できます。
コンピューティング リソースを更新し、ポリシーに準拠させる方法
- [ポリシー] ページで、更新したポリシーをクリックします。
- [コンピューティング] タブまたは [ジョブ] タブをクリックすると、そのポリシーを使用しているリソースの一覧が表示されます。 [準拠] 列には、現在のポリシー定義に準拠しているリソースが表示されます。
- [すべて修正] をクリックすると、リスト内のコンプライアンスに違反しているすべてのコンピューティング リソースを更新します。 リソースの行にある [修正] ボタンをクリックして、コンピューティング リソースを個別に更新することもできます。
- (省略可能) 現在実行中のコンピューティングにポリシーを適用する場合は、[実行中のクラスターに適用] チェックボックスをオンにします。 この場合、実行中のコンピューティング リソースが直ちに再起動されます。
- [適用] をクリックして更新を行います。 適用操作が完了すると、行われた変更の概要が表示されます。
- [Done] をクリックします。
また、コンプライアンスに違反している汎用コンピューティング リソースの場合、コンピューティング詳細 UI で [コンプライアンス違反] ラベルが付与されます。 そのコンピューティング リソースに対する CAN MANAGE アクセス許可を持つユーザーの場合、このページで [その他]、[コンプライアンスの修正] の順番にクリックするとコンプライアンスを適用できます。