Aracılığıyla paylaş


Trino yapılandırma yönetimi

Önemli

Bu özellik şu anda önizlemededir. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları, beta, önizleme aşamasında olan veya henüz genel kullanıma sunulmamış Azure özellikleri için geçerli olan daha fazla yasal hüküm içerir. Bu belirli önizleme hakkında bilgi için bkz . AKS üzerinde Azure HDInsight önizleme bilgileri. Sorular veya özellik önerileri için lütfen AskHDInsight'ta ayrıntıları içeren bir istek gönderin ve Azure HDInsight Topluluğu hakkında daha fazla güncelleştirme için bizi takip edin.

AKS üzerinde HDInsight ile Trino kümesi, açık kaynak Trino'nun varsayılan yapılandırmalarının çoğuyla birlikte gelir. Bu makalede, yapılandırma dosyalarının nasıl güncelleştirildiği açıklanır ve kümeye kendi ek yapılandırma dosyalarınızı ekler.

Yapılandırmaları iki yolla ekleyebilir/güncelleştirebilirsiniz:

Not

AKS üzerinde HDInsight ile Trino belirli yapılandırmaları zorunlu kılıp bazı dosyaların ve/veya özelliklerin değiştirilmesini yasaklar. Bu, yapılandırma aracılığıyla düzgün güvenlik/bağlantı sağlamak için yapılır. Yasaklanmış dosya/özelliklere örnek olarak şunlar dahildir ancak bunlarla sınırlı değildir:

  • Yığın boyutu ayarları dışında jvm.config dosyası.
  • Node.properties: node.id, node.data-dir, log.path vb.
  • Config.properties: http-server.authentication.*, http-server.https.* etc.

Azure portalı kullanarak

Azure portalında üç standart Trino yapılandırması kümesini değiştirebilirsiniz:

  • log.properties
  • config.properties
  • node.properties

Yapılandırmaları değiştirmek için adımları izleyin:

  1. Azure portalda oturum açın.

  2. Azure portalı arama çubuğuna "AKS kümesinde HDInsight" yazın ve açılan listeden "AKS kümelerinde Azure HDInsight" öğesini seçin.

    AKS Kümesinde HDInsight kullanmaya başlamaya yönelik arama seçeneğini gösteren ekran görüntüsü.

  3. Liste sayfasından kümenizin adını seçin.

    Listeden ihtiyacınız olan AKS Kümesinde HDInsight'ı seçmeyi gösteren ekran görüntüsü.

  4. "Yapılandırma Yönetimi" dikey penceresine gidin.

    Azure portalı yapılandırma yönetimini gösteren ekran görüntüsü.

  5. Değiştirmek istediğiniz yapılandırmalar için yeni değer ekleyin veya mevcut anahtar değer çiftlerini güncelleştirin. Örneğin, config.properties -> Özel yapılandırmalar -> Yeni yapılandırma ayarı eklemek için "Ekle"ye ve ardından Tamam'a tıklayın.

    Özel yapılandırmayı gösteren ekran görüntüsü.

  6. Yapılandırmaları kaydetmek için "Kaydet"e tıklayın.

    Yapılandırmanın nasıl kaydedileceklerini gösteren ekran görüntüsü.

ARM şablonunu kullanma

Önkoşullar

Küme Yönetimi

Tüm Trino yapılandırmaları altında properties.clusterProfilebelirtilebilirserviceConfigsProfiles.serviceName[“trino”].

Aşağıdaki örnek üzerinde coordinator/worker/miscfilesdurmaktadır. Kataloglar için bkz . Var olan bir kümeye katalog ekleme:

"serviceConfigsProfiles": [
    {
        "serviceName": "trino",
        "configs": [
            {
                "component": "catalogs",
                "files": [<file-spec>,…]
            },
            {
                "component": "coordinator",
                "files": [<file-spec>,…]
            },
            {
                "component": "worker",
                "files": [<file-spec>,…]
            },
            {
                "component": " miscfiles",
                "files": [<file-spec>,…]
            },
        ]
    }
]

Farklı yapılandırma yönlerini denetleyebilen birkaç bileşen vardır:

Component name Her dosya belirtimi için gerekli/izin verilen özellikler Açıklama
ortak filename, values Hem koordinatör hem de çalışan için yapılandırma dosyalarını içerir.
Koordinatörü filename, values Yalnızca düzenleyici için yapılandırma dosyalarını içerir, varsa ortak geçersiz kılar.
Işçi filename, values Yalnızca çalışanlar için yapılandırma dosyalarını içerir, varsa ortak geçersiz kılar.
miscfiles filename, content Tüm küme için kullanıcı tarafından sağlanan çeşitli yapılandırma dosyalarını içerir.
Katalog filename, içerik veya değerler Kümenin tamamı için katalog dosyalarını içerir.

Aşağıdaki örnekte şunlar gösterilir:

  • Küme için varsayılan node.environment geçersiz kılın (Trino kullanıcı arabiriminde görüntülenir).
  • Düzenleyici ve çalışan için varsayılan config.properties değerlerini geçersiz kılın.
  • Örnek kaynak grupları json ekleyin ve bunu kullanmak için düzenleyiciyi yapılandırın.
"serviceConfigsProfiles": [
    {
        "serviceName": "trino",
        "configs": [
            {
                "component": "common",
                "files": [
                    {
                        "fileName": "node.properties",
                        "values": {
                            "node.environment": "preview"
                        }
                    },
                    {
                        "fileName": "config.properties",
                        "values": {
                            "join-distribution-type": "AUTOMATIC",
                            "query.max-execution-time": "5d",
                            "shutdown.grace-period": "5m"
                        }
                    }
                ]                
            },
            {
                "component": "coordinator",
                "files": [
                    {
                        "fileName": "resource-groups.properties",
                        "values": {
                            "resource-groups.configuration-manager": "file",
                            "resource-groups.config-file": "${MISC:resource-groups}"
                        }                                            
                    }
                ]
            },
            {
                "component": "miscfiles",
                "files": [
                    {
                        "fileName": "resource-groups",
                        "path": "/customDir/resource-groups.json",
                        "content": "{\"rootGroups\":[{\"name\":\"global\",\"softMemoryLimit\":\"80%\",\"hardConcurrencyLimit\":100,\"maxQueued\":1000,\"schedulingPolicy\":\"weighted\",\"jmxExport\":true,\"subGroups\":[{\"name\":\"data_definition\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":5,\"maxQueued\":100,\"schedulingWeight\":1},{\"name\":\"adhoc\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":50,\"maxQueued\":1,\"schedulingWeight\":10,\"subGroups\":[{\"name\":\"other\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":2,\"maxQueued\":1,\"schedulingWeight\":10,\"schedulingPolicy\":\"weighted_fair\",\"subGroups\":[{\"name\":\"${USER}\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":1,\"maxQueued\":100}]}]}]},{\"name\":\"admin\",\"softMemoryLimit\":\"100%\",\"hardConcurrencyLimit\":50,\"maxQueued\":100,\"schedulingPolicy\":\"query_priority\",\"jmxExport\":true}],\"selectors\":[{\"group\":\"global.adhoc.other.${USER}\"}],\"cpuQuotaPeriod\":\"1h\"}"
                    }
                ]
            }
        ]
    }

Güncelleştirilmiş ARM şablonunu kümenizdeki değişiklikleri yansıtacak şekilde dağıtın. ARM şablonu dağıtmayı öğrenin.