カスタム プラグイン
Note
Azure HDInsight on AKS は 2025 年 1 月 31 日に廃止されます。 2025 年 1 月 31 日より前に、ワークロードを Microsoft Fabric または同等の Azure 製品に移行することで、ワークロードの突然の終了を回避する必要があります。 サブスクリプション上に残っているクラスターは停止され、ホストから削除されることになります。
提供終了日までは基本サポートのみが利用できます。
重要
現在、この機能はプレビュー段階にあります。 ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用されるその他の法律条項については、「Microsoft Azure プレビューの追加の使用条件」に記載されています。 この特定のプレビューについては、「Microsoft HDInsight on AKS のプレビュー情報」を参照してください。 質問や機能の提案については、詳細を記載した要求を AskHDInsight で送信してください。また、その他の更新情報については、Azure HDInsight コミュニティをフォローしてください。
この記事では、Trino クラスターを使用した HDInsight on AKS にカスタム プラグインをデプロイする方法について詳しく説明します。
Trino に用意されている豊富なインターフェイスを使用すると、ユーザーがイベント リスナー、カスタム SQL 関数などの独自のプラグインを記述することができます。この記事で説明する構成を追加し、ARM テンプレートを使用して、Trino クラスターでカスタム プラグインを使用できるようにします。
前提条件
- 操作可能な HDInsight on AKS を使用した Trino クラスター。
- クラスター用の ARM テンプレートを作成する。
- クラスターの ARM テンプレートの完全なサンプルを確認する。
- ARM テンプレートの作成とデプロイに関する知識。
カスタム プラグインを追加する
ARM テンプレートのリソース [*].properties.clusterProfile.trinoProfile
セクションで作成された userPluginsSpec.plugins
構成を使用すると、クラスターのデプロイ中にダウンロードする必要があるプラグインを指定することができます。
userPluginsSpec.plugins
では、次のフィールドで説明するように、どのプラグインを、どの場所からインストールする必要があるかを記述するリストが定義されます。
プロパティ | 内容 |
---|---|
name | このフィールドは、ここで説明するように、パス フィールドのすべてのプラグインを含む trino plugins ディレクトリのサブディレクトリにマップされます。 |
path | プラグインに必要なすべての jar ファイルを含むディレクトリへの完全修飾パス。 これらの jar を保存するためにサポートされているストレージは、Azure Data Lake Storage Gen2 です。 |
有効 | クラスターへのこのプラグインのダウンロードを有効または無効にするブール型プロパティ。 |
Note
カスタム プラグインのデプロイでは、クラスターに関連付けられているユーザー割り当てマネージド ID (MSI) を使用して、ストレージ アカウントに対する認証を行います。 プラグインを保持しているストレージ アカウントに、クラスターに関連付けられているマネージド ID に対する適切なアクセス権が付与されていることを確認します。
次の例は、サンプル プラグインを Trino クラスターで使用できるようにする方法を示しています。 ARM テンプレートの [*].properties.clusterProfile
の下に、このサンプル json を追加します。
"trinoProfile": {
"userPluginsSpec": {
"plugins": [
{
"name": "exampleplugin",
"path": "https://examplestorageaccount.blob.core.windows.net/plugins/myplugins/",
"enabled": true
}
]
}
}
更新した ARM テンプレートをデプロイして、クラスターに変更を反映します。 ARM テンプレートをデプロイする方法を確認してください。
Note
既存のクラスター上のプラグインを更新するには、新しい変更が取り込まれるようにデプロイが必要です。