تثبيت & استخدام ملحق CLI ل Azure التعلم الآلي
APPLY TO: Azure CLI ml extension
ع1
v2 (معاينة)
هام
تتطلب أوامر Azure CLI في هذه المقالة الامتداد azure-cli-ml، أو v1 ، ل Azure التعلم الآلي. يتوفر الآن الإصدار 2 CLI المحسن (المعاينة) باستخدام الإضافة ml ويوصى به. الملحقات غير متوافقة، لذلك لن تعمل أوامر v2 CLI للخطوات الواردة في هذه المقالة. ومع ذلك ، يمكن التفاعل مع مساحات عمل التعلم الآلي وجميع الموارد الأساسية من أي منهما ، مما يعني أنه يمكن لمستخدم واحد إنشاء مساحة عمل باستخدام الإصدار 1 CLI ويمكن لمستخدم آخر إرسال الوظائف إلى نفس مساحة العمل باستخدام الإصدار 2 CLI.
للعثور على الإضافات التي قمت بتثبيتها، استخدم az extension list. إذا كانت قائمة الملحقات تحتوي على azure-cli-ml، لديك الامتداد الصحيح للخطوات الواردة في هذه المقالة.
لمزيد من المعلومات حول تثبيت الملحقات المختلفة واستخدامها، راجع المقالات التالية:
azure-cli-ml- تثبيت CLI (الإصدار 1) وإعداده واستخدامهml- تثبيت CLI (الإصدار 2) وإعداده
يعد Azure التعلم الآلي CLI امتدادا ل Azure CLI، وهي واجهة سطر أوامر عبر الأنظمة الأساسية للنظام الأساسي Azure. يوفر هذا الملحق أوامر للعمل مع Azure التعلم الآلي. يسمح لك بأتمتة أنشطة التعلم الآلي الخاصة بك. توفر القائمة التالية بعض الأمثلة على الإجراءات التي يمكنك القيام بها باستخدام ملحق CLI:
إجراء تجارب لإنشاء نماذج التعلم الآلي
تسجيل نماذج التعلم الآلي لاستخدام العملاء
حزم ونشر وتتبع دورة حياة نماذج التعلم الآلي الخاصة بك
CLI ليس بديلا عن Azure التعلم الآلي SDK. إنها أداة تكميلية تم تحسينها للتعامل مع المهام ذات المعلمات العالية التي تناسب نفسها بشكل جيد مع الأتمتة.
المتطلبات الأساسية
لاستخدام CLI، يجب أن يكون لديك اشتراك Azure. إذا لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانياً قبل أن تبدأ. جرب الإصدار المجاني أو المدفوع الخاص بـ Azure Machine Learning اليوم.
لاستخدام أوامر CLI في هذا المستند من بيئتك المحلية، فإنك تحتاج إلى Azure CLI.
إذا كنت تستخدم Azure Cloud Shell، الوصول إلى CLI من خلال المستعرض ويعيش في السحابة.
المستندات المرجعية الكاملة
ابحث عن المستندات المرجعية الكاملة لامتداد azure-cli-ml ل Azure CLI.
الاتصال CLI إلى اشتراكك في Azure
هام
إذا كنت تستخدم Azure Cloud Shell، فيمكنك تخطي هذا القسم. تقوم السحابة shell تلقائيا بمصادقتك باستخدام الحساب الذي تقوم بتسجيل الدخول إلى اشتراكك في Azure.
هناك عدة طرق يمكنك من خلالها المصادقة على اشتراك Azure من CLI. الأكثر أساسية هو المصادقة التفاعلية باستخدام متصفح. للمصادقة بشكل تفاعلي، افتح سطر أوامر أو محطة طرفية واستخدم الأمر التالي:
az login
إذا تمكن CLI من فتح المستعرض الافتراضي، فسيقوم بذلك وتحميل صفحة تسجيل الدخول. خلاف ذلك ، تحتاج إلى فتح متصفح واتباع الإرشادات الموجودة في سطر الأوامر. تتضمن التعليمات التصفح إلى https://aka.ms/devicelogin رمز التفويض وإدخاله.
تلميح
بعد تسجيل الدخول، سترى قائمة الاشتراكات المقترنة بحساب Azure. معلومات الاشتراك هي isDefault: true الاشتراك المنشط حاليا لأوامر Azure CLI. يجب أن يكون هذا الاشتراك هو نفسه الذي يحتوي على مساحة عمل Azure التعلم الآلي. يمكنك العثور على معرف الاشتراك من مدخل Azure من خلال زيارة صفحة النظرة العامة لمساحة العمل الخاصة بك. يمكنك أيضا استخدام SDK للحصول على معرف الاشتراك من كائن مساحة العمل. على سبيل المثال، Workspace.from_config().subscription_id.
لتحديد اشتراك آخر، استخدم az account set -s <subscription name or ID> الأمر وحدد اسم الاشتراك أو المعرف المراد التبديل إليه. لمزيد من المعلومات حول تحديد الاشتراك، راجع استخدام اشتراكات Azure متعددة.
للحصول على طرق أخرى للمصادقة، راجع تسجيل الدخول باستخدام Azure CLI.
تثبيت الملحق
لتثبيت ملحق CLI (الإصدار 1):
az extension add -n azure-cli-ml
تحديث الإضافة
لتحديث ملحق CLI التعلم الآلي، استخدم الأمر التالي:
az extension update -n azure-cli-ml
إزالة الإضافة
لإزالة ملحق CLI، استخدم الأمر التالي:
az extension remove -n azure-cli-ml
إدارة الموارد
توضح الأوامر التالية كيفية استخدام CLI لإدارة الموارد المستخدمة بواسطة Azure التعلم الآلي.
إذا لم يكن لديك واحد بالفعل، فقم بإنشاء مجموعة موارد:
az group create -n myresourcegroup -l westus2إنشاء مساحة عمل Azure التعلم الآلي:
az ml workspace create -w myworkspace -g myresourcegroupلمزيد من المعلومات، راجع az ml workspace create.
إرفاق تكوين مساحة عمل بمجلد لتمكين الوعي السياقي ل CLI.
az ml folder attach -w myworkspace -g myresourcegroupيقوم هذا الأمر بإنشاء
.azuremlدليل فرعي يحتوي على مثال runconfig وملفات بيئة conda. كما أنه يحتوي على ملفconfig.jsonيستخدم للاتصال بمساحة عمل Azure التعلم الآلي.لمزيد من المعلومات، راجع az ml المجلد المرفق.
إرفاق حاوية Azure blob كمخزن بيانات.
az ml datastore attach-blob -n datastorename -a accountname -c containernameلمزيد من المعلومات، راجع az ml datastore attach-blob.
Upload الملفات إلى مخزن بيانات.
az ml datastore upload -n datastorename -p sourcepathلمزيد من المعلومات، راجع تحميل مخزن بيانات az ml.
إرفاق مجموعة AKS كهدف حساب.
az ml computetarget attach aks -n myaks -i myaksresourceid -g myresourcegroup -w myworkspaceلمزيد من المعلومات، راجع az ml computetarget attach aks
مجموعات الحوسبة
إنشاء مجموعة حوسبة مدارة جديدة.
az ml computetarget create amlcompute -n cpu --min-nodes 1 --max-nodes 1 -s STANDARD_D3_V2إنشاء مجموعة حوسبة مدارة جديدة ذات هوية مدارة
الهوية المُدارة التي يعيّنها المُستخدم
az ml computetarget create amlcompute --name cpu-cluster --vm-size Standard_NC6 --max-nodes 5 --assign-identity '/subscriptions/<subcription_id>/resourcegroups/<resource_group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user_assigned_identity>'الهوية المُدارة التي يُعيّنها النظام
az ml computetarget create amlcompute --name cpu-cluster --vm-size Standard_NC6 --max-nodes 5 --assign-identity '[system]'
إضافة هوية مدارة إلى مجموعة موجودة:
الهوية المُدارة التي يعيّنها المُستخدم
az ml computetarget amlcompute identity assign --name cpu-cluster '/subscriptions/<subcription_id>/resourcegroups/<resource_group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user_assigned_identity>'الهوية المُدارة التي يُعيّنها النظام
az ml computetarget amlcompute identity assign --name cpu-cluster '[system]'
لمزيد من المعلومات، راجع az ml computetarget create amlcompute.
ملاحظة
تدعم مجموعات الحوسبة Azure التعلم الآلي هوية واحدة فقط تم تعيينها بواسطة النظام أو هويات متعددة معينة من قبل المستخدم، وليس كليهما في وقت واحد.
مثيل الحساب
إدارة مثيلات الحوسبة. في جميع الأمثلة أدناه، اسم مثيل الحوسبة هو وحدة المعالجة المركزية
إنشاء مثيل حوسبة جديد.
az ml computetarget create computeinstance -n cpu -s "STANDARD_D3_V2" -vلمزيد من المعلومات، راجع az ml computetarget create computeinstance.
إيقاف مثيل حسابي.
az ml computetarget computeinstance stop -n cpu -vلمزيد من المعلومات، راجع az ml computetarget computeinstance stop.
بدء تشغيل مثيل حوسبة.
az ml computetarget computeinstance start -n cpu -vلمزيد من المعلومات، راجع az ml computetarget computeinstance start.
إعادة تشغيل مثيل حسابي.
az ml computetarget computeinstance restart -n cpu -vلمزيد من المعلومات، راجع az ml computetarget computeinstance restart.
حذف مثيل حسابي.
az ml computetarget delete -n cpu -vلمزيد من المعلومات، راجع az ml computetarget delete computeinstance.
تجارب التشغيل
ابدأ تشغيل تجربتك. عند استخدام هذا الأمر، حدد اسم ملف runconfig (النص قبل *.runconfig إذا كنت تبحث في نظام الملفات الخاص بك) مقابل المعلمة -c.
az ml run submit-script -c sklearn -e testexperiment train.pyتلميح
يقوم
az ml folder attachالأمر بإنشاء.azuremlدليل فرعي يحتوي على مثالين من ملفات runconfig.إذا كان لديك برنامج نصي Python يقوم بإنشاء كائن تكوين تشغيل برمجيا، يمكنك استخدام RunConfig.save() لحفظه كملف runconfig.
يمكن العثور على مخطط runconfig الكامل في ملف JSON هذا. المخطط هو التوثيق الذاتي من خلال
descriptionمفتاح كل كائن. بالإضافة إلى ذلك، هناك تعداد للقيم المحتملة، ومقتطف قالب في النهاية.لمزيد من المعلومات، راجع az ml run submit-script.
عرض قائمة بالتجارب:
az ml experiment listلمزيد من المعلومات، راجع قائمة تجارب az ml.
تشغيل هايبر درايف
يمكنك استخدام HyperDrive مع Azure CLI لإجراء عمليات ضبط المعلمات. أولا، قم بإنشاء ملف تكوين HyperDrive بالتنسيق التالي. راجع ضبط المعلمات التشعبية لمقالة النموذج للحصول على تفاصيل حول معلمات ضبط المعلمات التشعبية.
# hdconfig.yml
sampling:
type: random # Supported options: Random, Grid, Bayesian
parameter_space: # specify a name|expression|values tuple for each parameter.
- name: --penalty # The name of a script parameter to generate values for.
expression: choice # supported options: choice, randint, uniform, quniform, loguniform, qloguniform, normal, qnormal, lognormal, qlognormal
values: [0.5, 1, 1.5] # The list of values, the number of values is dependent on the expression specified.
policy:
type: BanditPolicy # Supported options: BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy, NoTerminationPolicy
evaluation_interval: 1 # Policy properties are policy specific. See the above link for policy specific parameter details.
slack_factor: 0.2
primary_metric_name: Accuracy # The metric used when evaluating the policy
primary_metric_goal: Maximize # Maximize|Minimize
max_total_runs: 8 # The maximum number of runs to generate
max_concurrent_runs: 2 # The number of runs that can run concurrently.
max_duration_minutes: 100 # The maximum length of time to run the experiment before cancelling.
أضف هذا الملف إلى جانب ملفات تكوين التشغيل. ثم أرسل تشغيل HyperDrive باستخدام:
az ml run submit-hyperdrive -e <experiment> -c <runconfig> --hyperdrive-configuration-name <hdconfig> my_train.py
لاحظ قسم الوسيطات في runconfig ومساحة المعلمة في تكوين HyperDrive. وهي تحتوي على وسيطات سطر الأوامر التي سيتم تمريرها إلى البرنامج النصي للتدريب. تبقى القيمة في runconfig كما هي لكل تكرار، بينما يتم تكرار النطاق في تكوين HyperDrive. لا تحدد نفس الوسيطة في كلا الملفين.
إدارة مجموعة البيانات
توضح الأوامر التالية كيفية العمل مع مجموعات البيانات في Azure التعلم الآلي:
تسجيل مجموعة بيانات:
az ml dataset register -f mydataset.jsonللحصول على معلومات حول تنسيق ملف JSON المستخدم لتعريف مجموعة البيانات، استخدم
az ml dataset register --show-template.لمزيد من المعلومات، راجع az ml dataset register.
سرد كافة مجموعات البيانات في مساحة عمل:
az ml dataset listلمزيد من المعلومات، راجع قائمة az ml dataset.
الحصول على تفاصيل مجموعة بيانات:
az ml dataset show -n dataset-nameلمزيد من المعلومات، راجع عرض مجموعة بيانات az ml.
إلغاء تسجيل مجموعة بيانات:
az ml dataset unregister -n dataset-nameلمزيد من المعلومات، راجع az ml dataset unregister.
الإدارة البيئية
توضح الأوامر التالية كيفية إنشاء بيئات Azure التعلم الآلي وتسجيلها وإدراجها لمساحة العمل الخاصة بك:
إنشاء ملفات سقالات لبيئة:
az ml environment scaffold -n myenv -d myenvdirectoryلمزيد من المعلومات، راجع سقالة بيئة az ml.
تسجيل بيئة:
az ml environment register -d myenvdirectoryلمزيد من المعلومات، راجع az ml environment register.
قائمة البيئات المسجلة:
az ml environment listلمزيد من المعلومات، راجع قائمة بيئة az ml.
تنزيل بيئة مسجلة:
az ml environment download -n myenv -d downloaddirectoryلمزيد من المعلومات، راجع تنزيل بيئة az ml.
مخطط تكوين البيئة
إذا استخدمت az ml environment scaffold الأمر، فإنه ينشئ ملف قالب azureml_environment.json يمكن تعديله واستخدامه لإنشاء تكوينات بيئة مخصصة باستخدام CLI. يقوم كائن المستوى الأعلى بتعيين الفئة Environment بشكل فضفاض في Python SDK.
{
"name": "testenv",
"version": null,
"environmentVariables": {
"EXAMPLE_ENV_VAR": "EXAMPLE_VALUE"
},
"python": {
"userManagedDependencies": false,
"interpreterPath": "python",
"condaDependenciesFile": null,
"baseCondaEnvironment": null
},
"docker": {
"enabled": false,
"baseImage": "mcr.microsoft.com/azureml/openmpi3.1.2-ubuntu18.04:20210615.v1",
"baseDockerfile": null,
"sharedVolumes": true,
"shmSize": "2g",
"arguments": [],
"baseImageRegistry": {
"address": null,
"username": null,
"password": null
}
},
"spark": {
"repositories": [],
"packages": [],
"precachePackages": true
},
"databricks": {
"mavenLibraries": [],
"pypiLibraries": [],
"rcranLibraries": [],
"jarLibraries": [],
"eggLibraries": []
},
"inferencingStackVersion": null
}
يوضح الجدول التالي تفاصيل كل حقل من حقول المستوى الأعلى في ملف JSON ونوعه ووصفه. إذا كان نوع كائن مرتبطا بفئة من Python SDK، فهناك تطابق 1:1 فضفاض بين كل حقل JSON واسم المتغير العام في فئة Python. في بعض الحالات، قد يتم تعيين الحقل إلى وسيطة منشئ بدلا من متغير فئة. على سبيل المثال، يقوم الحقل بتعيين environment_variables المتغير في الفصل.environmentVariablesEnvironment
| حقل JSON | النوع | الوصف |
|---|---|---|
name |
string |
اسم البيئة. لا تبدأ الاسم باستخدام Microsoft أو AzureML. |
version |
string |
إصدار البيئة. |
environmentVariables |
{string: string} |
خريطة تجزئة لأسماء متغيرات البيئة وقيمها. |
python |
PythonSectionتحدد القبعة بيئة بايثون والمترجم الفوري لاستخدامها في مورد الحوسبة المستهدف. |
|
docker |
DockerSection |
يحدد الإعدادات لتخصيص صورة Docker المصممة وفقا لمواصفات البيئة. |
spark |
SparkSection |
يقوم القسم بتكوين إعدادات Spark. يتم استخدامه فقط عندما يتم تعيين إطار العمل على PySpark. |
databricks |
DatabricksSection |
تكوين تبعيات مكتبة Databricks. |
inferencingStackVersion |
string |
يحدد إصدار مكدس الاستدلال المضاف إلى الصورة. لتجنب إضافة مكدس استدلال، اترك هذا الحقل null. القيمة الصالحة: "الأحدث". |
إدارة خط أنابيب ML
توضح الأوامر التالية كيفية العمل مع خطوط أنابيب التعلم الآلي:
إنشاء خط أنابيب للتعلم الآلي:
az ml pipeline create -n mypipeline -y mypipeline.ymlلمزيد من المعلومات، راجع إنشاء خط أنابيب az ml.
لمزيد من المعلومات حول ملف YAML لخط الأنابيب، راجع تعريف خطوط أنابيب التعلم الآلي في YAML.
تشغيل خط أنابيب:
az ml run submit-pipeline -n myexperiment -y mypipeline.ymlلمزيد من المعلومات، راجع az ml run submit-pipeline.
لمزيد من المعلومات حول ملف YAML لخط الأنابيب، راجع تعريف خطوط أنابيب التعلم الآلي في YAML.
جدولة خط أنابيب:
az ml pipeline create-schedule -n myschedule -e myexperiment -i mypipelineid -y myschedule.ymlلمزيد من المعلومات، راجع جدول إنشاء جدول إنشاء خط أنابيب az ml.
تسجيل النموذج، التنميط، النشر
توضح الأوامر التالية كيفية تسجيل نموذج مدرب، ثم نشره كخدمة إنتاج:
تسجيل نموذج باستخدام Azure التعلم الآلي:
az ml model register -n mymodel -p sklearn_regression_model.pklلمزيد من المعلومات، راجع az ml model register.
اختياري قم بتعريف النموذج الخاص بك للحصول على قيم مثالية لوحدة المعالجة المركزية والذاكرة للنشر.
az ml model profile -n myprofile -m mymodel:1 --ic inferenceconfig.json -d "{\"data\": [[1,2,3,4,5,6,7,8,9,10],[10,9,8,7,6,5,4,3,2,1]]}" -t myprofileresult.jsonلمزيد من المعلومات، راجع ملف تعريف طراز az ml.
نشر النموذج الخاص بك إلى AKS
az ml model deploy -n myservice -m mymodel:1 --ic inferenceconfig.json --dc deploymentconfig.json --ct akscomputetargetلمزيد من المعلومات حول مخطط ملف تكوين الاستدلال، راجع مخطط تكوين الاستدلال.
لمزيد من المعلومات حول مخطط ملف تكوين النشر، راجع مخطط تكوين النشر.
لمزيد من المعلومات، راجع نشر نموذج az ml.
مخطط تكوين الاستدلال
يتم تعيين الإدخالات inferenceconfig.json في المستند إلى معلمات فئة InferenceConfig . يصف الجدول التالي التعيين بين الكيانات في مستند JSON ومعلمات الطريقة:
| كيان JSON | معلمة الطريقة | الوصف |
|---|---|---|
entryScript |
entry_script |
المسار إلى ملف محلي يحتوي على التعليمة البرمجية للتشغيل للصورة. |
sourceDirectory |
source_directory |
اختياري. قم بالمسار إلى المجلدات التي تحتوي على كافة الملفات لإنشاء الصورة، مما يسهل الوصول إلى أي ملفات داخل هذا المجلد أو المجلد الفرعي. يمكنك تحميل مجلد كامل من جهازك المحلي كتبعيات لخدمة الويب. ملاحظة: المسارات entry_script conda_file extra_docker_file_steps هي مسارات نسبية للمسار source_directory. |
environment |
environment |
اختياري. Azure التعلم الآلي environment. |
يمكنك تضمين المواصفات الكاملة لبيئة Azure التعلم الآلي في ملف تكوين الاستدلال. إذا لم تكن هذه البيئة موجودة في مساحة العمل الخاصة بك، فسيقوم Azure التعلم الآلي بإنشائها. وإلا، فسيقوم Azure التعلم الآلي بتحديث البيئة إذا لزم الأمر. JSON التالي هو مثال:
{
"entryScript": "score.py",
"environment": {
"docker": {
"arguments": [],
"baseDockerfile": null,
"baseImage": "mcr.microsoft.com/azureml/intelmpi2018.3-ubuntu18.04",
"enabled": false,
"sharedVolumes": true,
"shmSize": null
},
"environmentVariables": {
"EXAMPLE_ENV_VAR": "EXAMPLE_VALUE"
},
"name": "my-deploy-env",
"python": {
"baseCondaEnvironment": null,
"condaDependencies": {
"channels": [
"conda-forge"
],
"dependencies": [
"python=3.6.2",
{
"pip": [
"azureml-defaults",
"azureml-telemetry",
"scikit-learn==0.22.1",
"inference-schema[numpy-support]"
]
}
],
"name": "project_environment"
},
"condaDependenciesFile": null,
"interpreterPath": "python",
"userManagedDependencies": false
},
"version": "1"
}
}
يمكنك أيضا استخدام بيئة Azure التعلم الآلي موجودة في معلمات CLI منفصلة وإزالة مفتاح "البيئة" من ملف تكوين الاستدلال. استخدم -e لاسم البيئة، و--ev لإصدار البيئة. إذا لم تحدد --ev ، استخدام أحدث إصدار. فيما يلي مثال على ملف تكوين الاستدلال:
{
"entryScript": "score.py",
"sourceDirectory": null
}
يوضح الأمر التالي كيفية نشر نموذج باستخدام ملف تكوين الاستدلال السابق (المسمى myInferenceConfig.json).
كما يستخدم أحدث إصدار من بيئة Azure التعلم الآلي موجودة (تسمى AzureML-Minimal).
az ml model deploy -m mymodel:1 --ic myInferenceConfig.json -e AzureML-Minimal --dc deploymentconfig.json
مخطط تكوين النشر
مخطط تكوين النشر المحلي
ترسم الإدخالات deploymentconfig.json في المستند خريطة للمعلمات الخاصة LocalWebservice.deploy_configuration. يصف الجدول التالي التعيين بين الكيانات في مستند JSON ومعلمات الطريقة:
| كيان JSON | معلمة الطريقة | الوصف |
|---|---|---|
computeType |
غير متوفر | هدف الحساب. بالنسبة للأهداف المحلية ، يجب أن تكون localالقيمة . |
port |
port |
المنفذ المحلي الذي سيتم عرض نقطة نهاية HTTP الخاصة بالخدمة عليه. |
JSON هذا هو مثال على تكوين النشر للاستخدام مع CLI:
{
"computeType": "local",
"port": 32267
}
احفظ JSON هذا كملف يسمى deploymentconfig.json.
Azure Container Instance deployment configuration schema
ترسم الإدخالات في deploymentconfig.json المستند خريطة للمعلمات الخاصة AciWebservice.deploy_configuration. يصف الجدول التالي التعيين بين الكيانات في مستند JSON ومعلمات الطريقة:
| كيان JSON | معلمة الطريقة | الوصف |
|---|---|---|
computeType |
غير متوفر | هدف الحساب. بالنسبة ل ACI ، يجب أن تكون ACIالقيمة . |
containerResourceRequirements |
غير متوفر | حاوية لوحدة المعالجة المركزية وكيانات الذاكرة. |
cpu |
cpu_cores |
عدد نوى وحدة المعالجة المركزية لتخصيصها. افتراضيات 0.1 |
memoryInGB |
memory_gb |
مقدار الذاكرة (بالجيجابايت) المراد تخصيصها لخدمة الويب هذه. افتراضي 0.5 |
location |
location |
منطقة Azure لنشر خدمة الويب هذه إلى. إذا لم يتم تحديد موقع مساحة العمل، استخدامه. يمكن العثور على مزيد من التفاصيل حول المناطق المتاحة هنا: مناطق ACI |
authEnabled |
auth_enabled |
ما إذا كنت تريد تمكين المصادقة لخدمة الويب هذه. الإعدادات الافتراضية إلى False |
sslEnabled |
ssl_enabled |
ما إذا كنت تريد تمكين طبقة المقابس الآمنة لخدمة الويب هذه. الإعدادات الافتراضية إلى False. |
appInsightsEnabled |
enable_app_insights |
ما إذا كنت تريد تمكين AppInsights لخدمة الويب هذه. الإعدادات الافتراضية إلى False |
sslCertificate |
ssl_cert_pem_file |
ملف الشهادة المطلوب إذا تم تمكين SSL |
sslKey |
ssl_key_pem_file |
الملف الرئيسي المطلوب إذا تم تمكين SSL |
cname |
ssl_cname |
اسم ما إذا تم تمكين SSL |
dnsNameLabel |
dns_name_label |
تسمية اسم DNS لنقطة نهاية التسجيل. إذا لم يتم تحديد تسمية اسم DNS فريدة سيتم إنشاؤها لنقطة نهاية التسجيل. |
JSON التالي هو مثال على تكوين النشر للاستخدام مع CLI:
{
"computeType": "aci",
"containerResourceRequirements":
{
"cpu": 0.5,
"memoryInGB": 1.0
},
"authEnabled": true,
"sslEnabled": false,
"appInsightsEnabled": false
}
Azure Kubernetes Service deployment configuration schema
يتم تعيين الإدخالات deploymentconfig.json في المستند إلى معلمات AksWebservice.deploy_configuration. يصف الجدول التالي التعيين بين الكيانات في مستند JSON ومعلمات الطريقة:
| كيان JSON | معلمة الطريقة | الوصف |
|---|---|---|
computeType |
غير متوفر | هدف الحساب. بالنسبة ل AKS ، يجب أن تكون aksالقيمة . |
autoScaler |
غير متوفر | يحتوي على عناصر تكوين للقياس التلقائي. راجع جدول المقياس التلقائي. |
autoscaleEnabled |
autoscale_enabled |
ما إذا كان يجب تمكين التحجيم التلقائي لخدمة ويب. إذا numReplicas = 0، ؛ خلاف ذلك ، TrueFalse. |
minReplicas |
autoscale_min_replicas |
الحد الأدنى لعدد الحاويات التي يجب استخدامها عند القياس التلقائي لخدمة الويب هذه. افتراضي، 1. |
maxReplicas |
autoscale_max_replicas |
الحد الأقصى لعدد الحاويات التي يجب استخدامها عند القياس التلقائي لخدمة الويب هذه. افتراضي، 10. |
refreshPeriodInSeconds |
autoscale_refresh_seconds |
كم مرة يحاول autoscaler توسيع نطاق خدمة الويب هذه. افتراضي، 1. |
targetUtilization |
autoscale_target_utilization |
الاستخدام المستهدف (بالنسبة المئوية من 100) الذي يجب أن يحاول جهاز القياس التلقائي صيانته لخدمة الويب هذه. افتراضي، 70. |
dataCollection |
غير متوفر | يحتوي على عناصر تكوين لجمع البيانات. |
storageEnabled |
collect_model_data |
ما إذا كنت تريد تمكين جمع بيانات النموذج لخدمة الويب. افتراضي، False. |
authEnabled |
auth_enabled |
سواء تم تمكين المصادقة الرئيسية لخدمة الويب أم لا. authEnabled على حد سواء tokenAuthEnabled ولا يمكن أن يكون True. افتراضي، True. |
tokenAuthEnabled |
token_auth_enabled |
سواء تم تمكين مصادقة الرمز المميز لخدمة الويب أم لا. authEnabled على حد سواء tokenAuthEnabled ولا يمكن أن يكون True. افتراضي، False. |
containerResourceRequirements |
غير متوفر | حاوية لوحدة المعالجة المركزية وكيانات الذاكرة. |
cpu |
cpu_cores |
عدد نوى وحدة المعالجة المركزية المطلوب تخصيصها لخدمة الويب هذه. افتراضيات 0.1 |
memoryInGB |
memory_gb |
مقدار الذاكرة (بالجيجابايت) المراد تخصيصها لخدمة الويب هذه. افتراضي 0.5 |
appInsightsEnabled |
enable_app_insights |
ما إذا كنت تريد تمكين التطبيق Insights تسجيل الدخول لخدمة الويب. افتراضي، False. |
scoringTimeoutMs |
scoring_timeout_ms |
مهلة لفرض تسجيل المكالمات إلى خدمة الويب. افتراضي، 60000. |
maxConcurrentRequestsPerContainer |
replica_max_concurrent_requests |
الحد الأقصى للطلبات المتزامنة لكل عقدة لخدمة الويب هذه. افتراضي، 1. |
maxQueueWaitMs |
max_request_wait_time |
سيبقى الحد الأقصى للوقت الذي سيبقى فيه الطلب في قائمة الانتظار (بالمللي ثانية) قبل إرجاع خطأ 503. افتراضي، 500. |
numReplicas |
num_replicas |
عدد الحاويات التي سيتم تخصيصها لخدمة الويب هذه. لا يحتوي على قيمة افتراضية. إذا لم يتم تعيين هذه المعلمة، تمكين المقياس التلقائي بشكل افتراضي. |
keys |
غير متوفر | يحتوي على عناصر تكوين للمفاتيح. |
primaryKey |
primary_key |
مفتاح مصادقة أساسي لاستخدامه لخدمة الويب هذه |
secondaryKey |
secondary_key |
مفتاح مصادقة ثانوي لاستخدامه لخدمة الويب هذه |
gpuCores |
gpu_cores |
عدد نوى وحدة معالجة الرسومات (نسخة متماثلة لكل حاوية) لتخصيصها لخدمة الويب هذه. الافتراضي هو 1. يدعم قيم الأعداد الصحيحة فقط. |
livenessProbeRequirements |
غير متوفر | يحتوي على عناصر تكوين لمتطلبات مسبار الحياة. |
periodSeconds |
period_seconds |
كم مرة (في ثوان) لإجراء مسبار الحياة. افتراضي إلى 10 ثوان. الحد الأدنى للقيمة هو 1. |
initialDelaySeconds |
initial_delay_seconds |
عدد الثواني بعد بدء تشغيل الحاوية قبل بدء تحقيقات الحياة. الإعدادات الافتراضية إلى 310 |
timeoutSeconds |
timeout_seconds |
عدد الثواني التي تنتهي بعدها مهلة مسبار الحياة. افتراضيا إلى 2 ثانية. الحد الأدنى للقيمة هو 1 |
successThreshold |
success_threshold |
الحد الأدنى من النجاحات المتتالية لمسبار الحياة ليتم اعتباره ناجحا بعد فشله. تعود الإعدادات الافتراضية على 1. الحد الأدنى للقيمة هو 1. |
failureThreshold |
failure_threshold |
عندما يبدأ Pod ويفشل مسبار الحياة ، سيحاول Kubernetes الفشل مرات العتبة قبل الاستسلام. الإعدادات الافتراضية إلى 3. الحد الأدنى للقيمة هو 1. |
namespace |
namespace |
مساحة اسم Kubernetes التي يتم نشر خدمة الويب فيها. ما يصل إلى 63 حرفا أبجديا رقميا صغيرا ('a'-'z' و'0'-'9') وواصلة ('-'). لا يمكن أن يكون الحرفان الأول والأخير واصلات. |
JSON التالي هو مثال على تكوين النشر للاستخدام مع CLI:
{
"computeType": "aks",
"autoScaler":
{
"autoscaleEnabled": true,
"minReplicas": 1,
"maxReplicas": 3,
"refreshPeriodInSeconds": 1,
"targetUtilization": 70
},
"dataCollection":
{
"storageEnabled": true
},
"authEnabled": true,
"containerResourceRequirements":
{
"cpu": 0.5,
"memoryInGB": 1.0
}
}