إدارة تكوين نظام المجموعة

هام

هذه الميزة في وضع المعاينة حاليًا. تتضمن شروط الاستخدام التكميلية لمعاينات Microsoft Azure المزيد من الشروط القانونية التي تنطبق على ميزات Azure الموجودة في الإصدار التجريبي أو قيد المعاينة أو التي لم يتم إصدارها بعد في التوفر العام. للحصول على معلومات حول هذه المعاينة المحددة، راجع معلومات معاينة Azure HDInsight على AKS. للأسئلة أو اقتراحات الميزات، يرجى إرسال طلب على AskHDInsight مع التفاصيل ومتابعتنا لمزيد من التحديثات على مجتمع Azure HDInsight.

يسمح لك HDInsight على AKS بتعديل خصائص التكوين لتحسين أداء نظام المجموعة الخاص بك مع إعدادات معينة. على سبيل المثال، إعدادات الاستخدام أو الذاكرة. يمكنك القيام بالإجراءات التالية:

  • تحديث التكوينات الموجودة أو إضافة تكوينات جديدة.
  • تصدير التكوينات باستخدام واجهة برمجة تطبيقات REST.

تخصيص التكوينات

يمكنك تخصيص التكوينات باستخدام الخيارات التالية:

استخدام مدخل Microsoft Azure

  1. تسجيل الدخول إلى مدخل Azure.

  2. في شريط البحث في مدخل Microsoft Azure، اكتب "HDInsight on AKS cluster" وحدد "Azure HDInsight on AKS clusters" من القائمة المنسدلة.

    لقطة شاشة تعرض خيار البحث لبدء استخدام HDInsight على نظام مجموعة AKS.

  3. حدد اسم نظام المجموعة من صفحة القائمة.

    لقطة شاشة تظهر تحديد HDInsight على نظام مجموعة AKS الذي تحتاجه من القائمة.

  4. انتقل إلى شفرة "Configuration management" في القائمة اليسرى.

    لقطة شاشة تعرض علامة التبويب Configuration Management.

  5. اعتمادا على نوع نظام المجموعة، يتم سرد ملفات التكوينات. لمزيد من المعلومات، راجع تكوينات Trino وFlink وSpark.

  6. أضف زوج قيم المفاتيح الموجود أو حدثه للتكوينات التي تريد تعديلها.

  7. حدد موافق ثم انقر فوق حفظ.

إشعار

قد تحتاج بعض تغييرات التكوين إلى إعادة تشغيل الخدمة لتعكس التغييرات.

استخدام قالب ARM

المتطلبات الأساسية

في قالب ARM، يمكنك تحرير serviceConfigsProfiles وتحديد اسم ملف تكوين OSS بالقيمة التي ترغب في الكتابة فوقها.

إذا كان ملف تكوين OSS بتنسيق JSON/XML/YAML، يمكنك توفير اسم ملف تكوين OSS عبر fileName. قم بتوفير أزواج قيم المفاتيح التي تريد الكتابة فوقها في "القيم".

فيما يلي بعض العينات لكل حمل عمل:

مثال تكوين Flink:

 "serviceConfigsProfiles": [
                {
                    "serviceName": "flink-operator",
                    "configs": [
                        {
                            "component": "flink-configs",
                            "files": [
                                {
                                    "fileName": "flink-conf.yaml",
                                    "values": {
                                        "taskmanager.memory.process.size": "4096mb",
                                        "classloader.check-leaked-classloader": "false",
                                        "jobmanager.memory.process.size": "4096mb",
                                        "classloader.parent-first-patterns.additional": "org.apache.parquet"
                                    }
                                }
                            ]
                        }
                    ]
                }
            ]

مثال تكوين Spark:

  "serviceConfigsProfiles": [
                {
                    "serviceName": "spark-service",
                    "configs": [
                        {
                            "component": "livy-config",
                            "files": [
                                {
                                    "fileName": "livy-client.conf",
                                    "values": {
                                        "livy.client.http.connection.timeout": "11s"
                                    }
                                }
                            ]
                        },
                        {
                            "component": "spark-config",
                            "files": [
                                {
                                    "fileName": "spark-env.sh",
                                    "content": "# - SPARK_HISTORY_OPTS, to set config properties only for the history server (e.g. \"-Dx=y\")\nexport HDP_VERSION=3.3.3.5.2-83515052\n"
                                }
                            ]
                        }
                    ]
                }
          ]

مثال تكوين Trino:

 "serviceConfigsProfiles": [
                {
                    "serviceName": "trino",
                    "configs": [
                        {
                            "component": "coordinator",
                            "files": [
                                {
                                    "fileName": "config.properties",
                                    "values": {
                                        "query.cache.enabled": "true",
                                        "query.cache.ttl": "1h",
                                        "query.enable-multi-statement-set-session": "true",
                                        "query.max-memory": "301GB"
                                    }
                                },
                                {
                                    "fileName": "log.properties",
                                    "values": {
                                        "io.trino": "INFO"
                                    }
                                }
                            ]
                        }
          ]

لمزيد من المعلومات حول خيارات تكوين Trino، راجع نموذج قوالب ARM.

تصدير التكوينات باستخدام واجهة برمجة تطبيقات REST

يمكنك أيضا تصدير تكوينات نظام المجموعة للتحقق من القيم الافتراضية والمحدثة. في هذا الوقت، يمكنك فقط تصدير التكوينات عبر واجهة برمجة تطبيقات REST.

الحصول على تكوينات نظام المجموعة:

GET Request: /subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}

إذا لم تكن على دراية بكيفية إرسال استدعاء REST API، يمكن أن تساعدك الخطوات التالية.

  1. انقر فوق الزر التالي في أعلى اليمين في مدخل Microsoft Azure لتشغيل Azure Cloud Shell.

    لقطة شاشة تعرض أيقونة Cloud Shell.

  2. تأكد من تعيين Cloud Shell إلى PowerShell في أعلى اليسار. قم بتشغيل الأمر التالي للحصول على الرمز المميز وتعيين عناوين طلب HTTP.

    $azContext = Get-AzContext
    $azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
    
    $profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile)
    $token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId)
    $authHeader = @{
        'Content-Type'='application/json'
        'Authorization'='Bearer ' + $token.AccessToken
    }
    
  3. قم بتعيين متغير $restUri إلى Get request URL.

    $restUri = 
    'https://management.azure.com/subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}'
    

    على سبيل المثال: $restUri = 'https://management.azure.com/subscriptions/xxx-yyyy-zzz-00000/resourceGroups/contosoRG/providers/Microsoft.HDInsight/clusterpools/contosopool/clusters/contosocluster/serviceConfigs?api-version=2021-09-15-preview

    إشعار

    يمكنك الحصول على معرف المورد وإصدار واجهة برمجة التطبيقات المحدث من "JSON View" لنظام المجموعة في مدخل Microsoft Azure.

    أزرار تكلفة طريقة عرض JSON لعرض لقطة الشاشة.

  4. إرسال طلب GET عن طريق تنفيذ الأمر التالي.

    Invoke-RestMethod -Uri $restUri -Method Get -Headers $authHeader | ConvertTo-Json -Depth 10