共用方式為


設定目錄

重要

此功能目前為預覽功能。 適用於 Microsoft Azure 預覽版的補充使用規定包含適用於 Beta 版、預覽版或尚未發行至正式運作之 Azure 功能的更合法條款。 如需此特定預覽的相關信息,請參閱 AKS 預覽資訊的 Azure HDInsight。 如需問題或功能建議,請在 AskHDInsight提交要求,並提供詳細數據,並遵循我們在 Azure HDInsight 社群取得更多更新。

每個 Trino 叢集預設都會隨附幾個目錄 - 系統、tpcds、 tpch。 您可以使用 OSS Trino 相同的方式新增自己的目錄。 此外,在 AKS 上使用 HDInsight 的 Trino 允許將秘密儲存在 金鑰保存庫,因此您不需要在 ARM 範本中明確指定秘密。

您可以藉由更新叢集 ARM 範本來新增目錄,但 hive 目錄除外,您可以在 Azure 入口網站 中建立 Trino 叢集期間新增此類別目錄。

本文示範如何使用 ARM 範本,將新的目錄新增至叢集。 本文中的範例說明新增 SQL Server 和記憶體目錄的步驟。

必要條件

在 ARM 範本中新增目錄的步驟

  1. 附加 金鑰保存庫 並將秘密新增至 secretsProfile 屬性底下clusterProfile

    在此步驟中,您必須確定已針對 Trino 叢集設定 金鑰保存庫 和秘密。 在下列範例中,SQL Server 認證會儲存在這些秘密中:trinotest-admin-user、trinotest-admin-pwd。

    "secretsProfile": {
        "keyVaultResourceId": "/subscriptions/{USER_SUBSCRIPTION_ID}/resourceGroups/{USER_RESOURCE_GROUP}/providers/Microsoft.KeyVault/vaults/{USER_KEYVAULT_NAME}",
        "secrets": [
            {
                "referenceName": "trinotest-admin-user",
                "keyVaultObjectName": "trinotest-admin-user",
                "type": "secret"
            },
            {
                "referenceName": "trinotest-admin-pwd",
                "keyVaultObjectName": "trinotest-admin-pwd",
                "type": "secret"
            }
        ]
    },
    
  2. 將目錄新增至 serviceConfigsProfiles 屬性底下 clusterProfile

    在此步驟中,您必須將 Trino 特定的目錄組態新增至叢集。 下列範例會使用記憶體和 SQL Server 連接器來設定兩個目錄。 目錄組態可以透過兩種不同的方式指定:

    • values 區段中的索引鍵/值組。
    • content 屬性中的單一字串。

    記憶體目錄是使用索引鍵/值組來定義,而 SQL Server 目錄是使用單一字串選項來定義。

     "serviceConfigsProfiles": [
         {
             "serviceName": "trino",
             "configs": [
                 {
                     "component": "catalogs",
                     "files": [
                             {
                             "fileName": "memory.properties",
                             "values": {
                                 "connector.name": "memory",
                                 "memory.max-data-per-node": "128MB"
                             }
                         },
                         {
                             "fileName": "trinotestdb1.properties",
                             "content":"connector.name=sqlserver\nconnection-url=jdbc:sqlserver://server-name.database.windows.net:1433;database=db1;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;\nconnection-user=${SECRET_REF:trinotest-admin-user}\nconnection-password=${SECRET_REF:trinotest-admin-pwd}\n"
                         },
                     ]
                 }
             ]
         }
     ],
    

    屬性

    屬性 說明
    serviceName trino
    component 識別該區段設定目錄,必須是「目錄」。
    files 要新增至叢集的 Trino 目錄檔案清單。
    filename 要新增至叢集的 Trino 目錄檔案清單。
    content json 要放入 Trino 目錄檔案的逸出字串。 此字串應包含所有三個特定類別目錄屬性,視使用的連接器類型而定。 如需詳細資訊,請參閱 OSS Trino 檔。
    ${SECRET_REF:<referenceName>} 從 secretsProfile 參考秘密的特殊標記。 運行時間的 Trino 會從 金鑰保存庫 擷取秘密,並在類別目錄組態中取代它。
    您可以使用內容屬性做為單一字串來指定目錄組態,並針對每個個別的 Trino 目錄屬性使用個別的索引鍵/值組,如記憶體目錄所示。

部署更新的 ARM 範本,以反映叢集中的變更。 瞭解如何 部署ARM範本