次の方法で共有


リソースの前提条件

重要

AKS 上の Azure HDInsight は、2025 年 1 月 31 日に廃止されました。 お知らせ についてさらに学びましょう。

ワークロードの突然の終了を回避するには、ワークロードを Microsoft Fabric または同等の Azure 製品 に移行する必要があります。

大事な

この機能は現在プレビュー段階です。 Microsoft Azure プレビューの 追加使用条件 には、ベータ版、プレビュー版、または一般公開されていない Azure 機能に適用される、より多くの法的条件が含まれています。 この特定のプレビューの詳細については、AKS プレビュー情報 Azure HDInsightを参照してください。 ご質問や機能の提案については、AskHDInsight に詳細を記載した要求を送信し、最新情報を得るために Azure HDInsight Communityをフォローしてください。

この記事では、AKS での HDInsight の使用を開始するために必要なリソースについて詳しく説明します。 必要なリソースとオプションのリソースとその作成方法について説明します。

必要なリソース

次の表は、クラスターの種類に基づいてクラスターを作成するために必要なリソースを示しています。

ワークロード マネージド サービス ID (MSI) 貯蔵 SQL Server - SQLデータベース 鍵保管室
Trino
Flink
火花
Hive メタストア (HMS) を使用した Trino、Flink、または Spark

手記

MSI は、SQL Database を除くリソース間の認証と承認のセキュリティ標準として使用されます。 ロールの割り当ては、MSI をストレージに承認するためにデプロイする前に行われ、シークレットは SQL Database の Key Vault に格納されます。 ストレージのサポートは ADLS Gen2 を使用しており、コンピューティング エンジンのデータ ストアとして使用され、HIVE メタストアでのテーブル管理には SQL Database が使用されます。

省略可能なリソース

手記

  • VNet には、既存のルート テーブルが関連付けられていないサブネットが必要です。
  • AKS 上の HDInsight を使用すると、独自の VNet とサブネットを使用して、企業のニーズに合わせて ネットワーク要件をカスタマイズできます。
  • Log Analytics ワークスペースは省略可能であり、Azure Log Analytics などの Azure Monitor 機能使用する場合は、事前に作成する必要があります。

必要なリソースは、次の 2 つの方法で作成できます。

  • すぐに使用できる ARM テンプレート する
  • Azure portal を使用した

ARM テンプレートの使用

次の ARM テンプレートを使用すると、リソース プレフィックスと必要に応じて詳細を使用して、指定された必要なリソースを 1 回のクリックで作成できます。

たとえば、リソース プレフィックスを "demo" として指定すると、選択したテンプレートに応じて次のリソースがリソース グループに作成されます。

  • MSI は、demoMSIとして名前で作成されます。
  • ストレージはdemostoreという名前で作成され、democontainerのコンテナーと共にあります。
  • キー コンテナーは、テンプレートでパラメーターとして指定されたシークレットと共に demoKeyVault 名前で作成されます。
  • Azure SQL データベースは、名前が demoSqlDB で、名前が demoSqlServerの SQL サーバーと共に作成されます。
ワークロード 前提 条件
Trino 次のように説明するリソースを作成します。
1. マネージド サービス ID (MSI): ユーザー割り当てマネージド ID。

Trino を Azure
Flink 次のように説明するリソースを作成します。
1. マネージド サービス ID (MSI): ユーザー割り当てマネージド ID。
2. ADLS Gen2 ストレージ アカウントとコンテナー。

ロールの割り当て:
1. ユーザー割り当て MSI に「ストレージ BLOB データ所有者」ロールをストレージ アカウント上で割り当てます。

Azure への Apache Flink のデプロイ
火花 次のように説明するリソースを作成します。
1. マネージド サービス ID (MSI): ユーザー割り当てマネージド ID。
2. ADLS Gen2 ストレージ アカウントとコンテナー。

ロールの割り当て:
1. ストレージ アカウントに対して、ユーザー割り当てMSIに「ストレージ BLOB データ所有者」ロールを付与します。

Azure
Hive メタストアを使用した Trino、Flink、または Spark (HMS) 次のように説明するリソースを作成します。
1. マネージド サービス ID (MSI): ユーザー割り当てマネージド ID。
2. ADLS Gen2 ストレージ アカウントとコンテナー。
3. Azure SQL Server と SQL Database。
4. Azure Key Vault と SQL Server 管理者の資格情報を格納するためのシークレット。

ロールの割り当て:
1. ストレージ アカウントのユーザー割り当て MSI に "ストレージ BLOB データ所有者" ロールを割り当てます。
Key Vault のユーザー割り当て MSI に対し、「Key Vault シークレット ユーザー」ロールを付与します。

Trino HMS を Azure

手記

これらの ARM テンプレートを使用するには、ユーザーが新しいリソースを作成し、サブスクリプション内のリソースにロールを割り当てるアクセス許可を持っている必要があります。

Azure portal の使用

ユーザー割り当てマネージド ID (MSI) を作成する

マネージド ID は、Azure によって管理される資格情報を持つ Microsoft Entra ID (Microsoft Entra ID) に登録された ID です。 マネージド ID では、証明書などの資格情報を保持するために、Microsoft Entra ID にサービス プリンシパルを登録する必要はありません。

AKS 上の HDInsight は、さまざまなコンポーネント間の通信にユーザー割り当て MSI に依存しています。

ストレージ アカウントの作成 – ADLS Gen 2

ストレージ アカウントは、クラスター ログやその他の出力の既定の場所として使用されます。 ストレージ アカウントの作成時に階層型名前空間を有効にして、ADLS Gen2 ストレージとして使用します。

  1. ロールを割り当てる: このストレージ アカウントに作成されたユーザー割り当てのMSIに「Storage Blob Data Owner」ロールを割り当てます。

  2. コンテナーを作成する: ストレージ アカウントを作成した後、ストレージ アカウントにコンテナーを作成します。

手記

クラスターの作成時にコンテナーを作成するオプションも使用できます。

Azure SQL Database の作成

クラスターの作成時に外部メタストアとして使用する Azure SQL Database を作成するか、既存の SQL Database を使用できます。 ただし、次のプロパティが設定されていることを確認します。

SQL Server および SQL Database- で有効にするために必要なプロパティ

リソースの種類 財産 説明
SQL Server 認証方法 SQL Server を作成するときに、次のように "認証方法" を使用します。
認証方法を選択する方法を示すスクリーンショット。
SQLデータベース Azure サービスとリソースにこのサーバーへのアクセスを許可する Azure portal の SQL データベースの [ネットワーク] ブレードで、このプロパティを有効にします。

手記

  • 現時点では、組み込みのメタストアとして Azure SQL Database のみがサポートされています。
  • Hive の制限により、メタストア データベース名の "-" (ハイフン) 文字はサポートされていません。
  • Azure SQL Database は、クラスターと同じリージョンに存在する必要があります。
  • クラスターの作成時に SQL Database を作成するオプションも使用できます。 ただし、新しく作成されたデータベースがドロップダウン リストに表示されるようにするには、クラスター作成ページを更新する必要があります。

Azure Key Vault の作成

Key Vault を使用すると、SQL Database の作成時に設定された SQL Server 管理者パスワードを格納できます。 AKS プラットフォーム上の HDInsight では、資格情報は直接処理されません。 そのため、重要な資格情報を Key Vault に格納する必要があります。

  1. ロールを割り当てる: この Key Vault に必要なリソースの一部として作成されたユーザー割り当て MSI に "Key Vault シークレット ユーザー" ロールを割り当てます。

  2. シークレットを作成する: この手順では、SQL Server 管理者パスワードをシークレットとして Azure Key Vault に保持できます。 シークレットの作成時に、[値] フィールドにパスワードを追加します。

手記

  • クラスターの作成時に必要であるため、シークレット名を必ず書き留めます。
  • Azure portal を使用して Key Vault にシークレットを追加するには、ID またはアカウントに "Key Vault 管理者" ロールが割り当てられている必要があります。 Key Vault に移動し、手順 に従って、ロールを割り当てます。