Kubernetes@1 - مهمة Kubectl v1

نشر وتكوين وتحديث مجموعة Kubernetes في Azure Container Service عن طريق تشغيل أوامر kubectl.

نشر وتكوين وتحديث مجموعة Kubernetes في Azure Container Service عن طريق تشغيل أوامر kubectl.

بناء الجملة

# Kubectl v1
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running kubectl commands.
- task: Kubernetes@1
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Kubernetes Service Connection' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout. Service connection type. Default: Kubernetes Service Connection.
    #kubernetesServiceEndpoint: # string. Required when connectionType = Kubernetes Service Connection && command != logout. Kubernetes service connection. 
    #azureSubscriptionEndpoint: # string. Required when connectionType = Azure Resource Manager && command != logout. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout. Kubernetes cluster. 
    #useClusterAdmin: false # boolean. Optional. Use when connectionType = Azure Resource Manager && command != logout. Use cluster admin credentials. Default: false.
    #namespace: # string. Optional. Use when command != logout. Namespace. 
  # Commands
    #command: # 'apply' | 'create' | 'delete' | 'exec' | 'expose' | 'get' | 'login' | 'logout' | 'logs' | 'run' | 'set' | 'top'. Command. 
    #useConfigurationFile: false # boolean. Optional. Use when command != login && command != logout. Use configuration. Default: false.
    #configurationType: 'configuration' # 'configuration' | 'inline'. Optional. Use when useConfigurationFile = true. Configuration type. Default: configuration.
    configuration: # string. Required when configurationType = configuration. File path. 
    #inline: # string. Required when configurationType = inline. Inline configuration. 
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
  # Secrets
    #secretType: 'dockerRegistry' # 'dockerRegistry' | 'generic'. Required when command != login && command != logout. Type of secret. Default: dockerRegistry.
    #secretArguments: # string. Optional. Use when secretType = generic && command != login && command != logout. Arguments. 
    #containerRegistryType: 'Azure Container Registry' # 'Azure Container Registry' | 'Container Registry'. Required when secretType = dockerRegistry && command != login && command != logout. Container registry type. Default: Azure Container Registry.
    #dockerRegistryEndpoint: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Container Registry && command != login && command != logout. Docker registry service connection. 
    #azureSubscriptionEndpointForSecrets: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure subscription. 
    #azureContainerRegistry: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure container registry. 
    #secretName: # string. Optional. Use when command != login && command != logout. Secret name. 
    #forceUpdate: true # boolean. Optional. Use when command != login && command != logout. Force update secret. Default: true.
  # ConfigMaps
    #configMapName: # string. Optional. Use when command != login && command != logout. ConfigMap name. 
    #forceUpdateConfigMap: false # boolean. Optional. Use when command != login && command != logout. Force update configmap. Default: false.
    #useConfigMapFile: false # boolean. Optional. Use when command != login && command != logout. Use file. Default: false.
    #configMapFile: # string. Required when useConfigMapFile = true && command != login && command != logout. ConfigMap file. 
    #configMapArguments: # string. Optional. Use when useConfigMapFile = false && command != login && command != logout. Arguments. 
  # Advanced
    #versionOrLocation: 'version' # 'version' | 'location'. Kubectl. Default: version.
    #versionSpec: '1.13.2' # string. Optional. Use when versionOrLocation = version. Version spec. Default: 1.13.2.
    #checkLatest: false # boolean. Optional. Use when versionOrLocation = version. Check for latest version. Default: false.
    #specifyLocation: # string. Required when versionOrLocation = location. Path to kubectl. 
    #workingDirectory: '$(System.DefaultWorkingDirectory)' # string. Alias: cwd. Working directory. Default: $(System.DefaultWorkingDirectory).
    #outputFormat: 'json' # 'json' | 'yaml' | 'none'. Output format. Default: json.
# Kubectl v1
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running kubectl commands.
- task: Kubernetes@1
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Kubernetes Service Connection' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout. Service connection type. Default: Kubernetes Service Connection.
    #kubernetesServiceEndpoint: # string. Required when connectionType = Kubernetes Service Connection && command != logout. Kubernetes service connection. 
    #azureSubscriptionEndpoint: # string. Required when connectionType = Azure Resource Manager && command != logout. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout. Kubernetes cluster. 
    #useClusterAdmin: false # boolean. Optional. Use when connectionType = Azure Resource Manager && command != logout. Use cluster admin credentials. Default: false.
    #namespace: # string. Optional. Use when command != logout. Namespace. 
  # Commands
    #command: # 'apply' | 'create' | 'delete' | 'exec' | 'expose' | 'get' | 'login' | 'logout' | 'logs' | 'run' | 'set' | 'top'. Command. 
    #useConfigurationFile: false # boolean. Optional. Use when command != login && command != logout. Use configuration. Default: false.
    #configurationType: 'configuration' # 'configuration' | 'inline'. Optional. Use when useConfigurationFile = true. Configuration type. Default: configuration.
    configuration: # string. Required when configurationType = configuration. File path. 
    #inline: # string. Required when configurationType = inline. Inline configuration. 
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
  # Secrets
    #secretType: 'dockerRegistry' # 'dockerRegistry' | 'generic'. Required when command != login && command != logout. Type of secret. Default: dockerRegistry.
    #secretArguments: # string. Optional. Use when secretType = generic && command != login && command != logout. Arguments. 
    #containerRegistryType: 'Azure Container Registry' # 'Azure Container Registry' | 'Container Registry'. Required when secretType = dockerRegistry && command != login && command != logout. Container registry type. Default: Azure Container Registry.
    #dockerRegistryEndpoint: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Container Registry && command != login && command != logout. Docker registry service connection. 
    #azureSubscriptionEndpointForSecrets: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure subscription. 
    #azureContainerRegistry: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure container registry. 
    #secretName: # string. Optional. Use when command != login && command != logout. Secret name. 
    #forceUpdate: true # boolean. Optional. Use when command != login && command != logout. Force update secret. Default: true.
  # ConfigMaps
    #configMapName: # string. Optional. Use when command != login && command != logout. ConfigMap name. 
    #forceUpdateConfigMap: false # boolean. Optional. Use when command != login && command != logout. Force update configmap. Default: false.
    #useConfigMapFile: false # boolean. Optional. Use when command != login && command != logout. Use file. Default: false.
    #configMapFile: # string. Required when useConfigMapFile = true && command != login && command != logout. ConfigMap file. 
    #configMapArguments: # string. Optional. Use when useConfigMapFile = false && command != login && command != logout. Arguments. 
  # Advanced
    #versionOrLocation: 'version' # 'version' | 'location'. Kubectl. Default: version.
    #versionSpec: '1.13.2' # string. Optional. Use when versionOrLocation = version. Version spec. Default: 1.13.2.
    #checkLatest: false # boolean. Optional. Use when versionOrLocation = version. Check for latest version. Default: false.
    #specifyLocation: # string. Required when versionOrLocation = location. Path to kubectl. 
    #workingDirectory: '$(System.DefaultWorkingDirectory)' # string. Alias: cwd. Working directory. Default: $(System.DefaultWorkingDirectory).
    #outputFormat: 'json' # 'json' | 'yaml'. Output format. Default: json.
# Deploy to Kubernetes v1
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running kubectl commands.
- task: Kubernetes@1
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Kubernetes Service Connection' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout. Service connection type. Default: Kubernetes Service Connection.
    #kubernetesServiceEndpoint: # string. Required when connectionType = Kubernetes Service Connection && command != logout. Kubernetes service connection. 
    #azureSubscriptionEndpoint: # string. Required when connectionType = Azure Resource Manager && command != logout. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout. Kubernetes cluster. 
    #useClusterAdmin: false # boolean. Optional. Use when connectionType = Azure Resource Manager && command != logout. Use cluster admin credentials. Default: false.
    #namespace: # string. Optional. Use when command != logout. Namespace. 
  # Commands
    #command: # 'apply' | 'create' | 'delete' | 'exec' | 'expose' | 'get' | 'login' | 'logout' | 'logs' | 'run' | 'set' | 'top'. Command. 
    #useConfigurationFile: false # boolean. Optional. Use when command != login && command != logout. Use configuration. Default: false.
    #configurationType: 'configuration' # 'configuration' | 'inline'. Optional. Use when useConfigurationFile = true. Configuration type. Default: configuration.
    configuration: # string. Required when configurationType = configuration. File path. 
    #inline: # string. Required when configurationType = inline. Inline configuration. 
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
  # Secrets
    #secretType: 'dockerRegistry' # 'dockerRegistry' | 'generic'. Required when command != login && command != logout. Type of secret. Default: dockerRegistry.
    #secretArguments: # string. Optional. Use when secretType = generic && command != login && command != logout. Arguments. 
    #containerRegistryType: 'Azure Container Registry' # 'Azure Container Registry' | 'Container Registry'. Required when secretType = dockerRegistry && command != login && command != logout. Container registry type. Default: Azure Container Registry.
    #dockerRegistryEndpoint: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Container Registry && command != login && command != logout. Docker registry service connection. 
    #azureSubscriptionEndpointForSecrets: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure subscription. 
    #azureContainerRegistry: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure container registry. 
    #secretName: # string. Optional. Use when command != login && command != logout. Secret name. 
    #forceUpdate: true # boolean. Optional. Use when command != login && command != logout. Force update secret. Default: true.
  # ConfigMaps
    #configMapName: # string. Optional. Use when command != login && command != logout. ConfigMap name. 
    #forceUpdateConfigMap: false # boolean. Optional. Use when command != login && command != logout. Force update configmap. Default: false.
    #useConfigMapFile: false # boolean. Optional. Use when command != login && command != logout. Use file. Default: false.
    #configMapFile: # string. Required when useConfigMapFile = true && command != login && command != logout. ConfigMap file. 
    #configMapArguments: # string. Optional. Use when useConfigMapFile = false && command != login && command != logout. Arguments. 
  # Advanced
    #versionOrLocation: 'version' # 'version' | 'location'. Kubectl. Default: version.
    #versionSpec: '1.13.2' # string. Optional. Use when versionOrLocation = version. Version spec. Default: 1.13.2.
    #checkLatest: false # boolean. Optional. Use when versionOrLocation = version. Check for latest version. Default: false.
    #specifyLocation: # string. Required when versionOrLocation = location. Path to kubectl. 
    #workingDirectory: '$(System.DefaultWorkingDirectory)' # string. Alias: cwd. Working directory. Default: $(System.DefaultWorkingDirectory).
    #outputFormat: 'json' # 'json' | 'yaml'. Output format. Default: json.
# Deploy to Kubernetes v1
# Deploy, configure, update your Kubernetes cluster in Azure Container Service by running kubectl commands.
- task: Kubernetes@1
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Azure Resource Manager' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout. Service connection type. Default: Azure Resource Manager.
    #kubernetesServiceEndpoint: # string. Required when connectionType = Kubernetes Service Connection && command != logout. Kubernetes service connection. 
    #azureSubscriptionEndpoint: # string. Required when connectionType = Azure Resource Manager && command != logout. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout. Kubernetes cluster. 
    #namespace: # string. Optional. Use when command != logout. Namespace. 
  # Commands
    command: 'apply' # 'apply' | 'create' | 'delete' | 'exec' | 'expose' | 'get' | 'login' | 'logout' | 'logs' | 'run' | 'set' | 'top'. Required. Command. Default: apply.
    #useConfigurationFile: false # boolean. Optional. Use when command != login && command != logout. Use configuration files. Default: false.
    #configuration: # string. Required when useConfigurationFile = true. Configuration file. 
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
  # Secrets
    #secretType: 'dockerRegistry' # 'dockerRegistry' | 'generic'. Required when command != login && command != logout. Type of secret. Default: dockerRegistry.
    #secretArguments: # string. Optional. Use when secretType = generic && command != login && command != logout. Arguments. 
    #containerRegistryType: 'Azure Container Registry' # 'Azure Container Registry' | 'Container Registry'. Required when secretType = dockerRegistry && command != login && command != logout. Container registry type. Default: Azure Container Registry.
    #dockerRegistryEndpoint: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Container Registry && command != login && command != logout. Docker registry service connection. 
    #azureSubscriptionEndpointForSecrets: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure subscription. 
    #azureContainerRegistry: # string. Optional. Use when secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout. Azure container registry. 
    #secretName: # string. Optional. Use when command != login && command != logout. Secret name. 
    #forceUpdate: true # boolean. Optional. Use when command != login && command != logout. Force update secret. Default: true.
  # ConfigMaps
    #configMapName: # string. Optional. Use when command != login && command != logout. ConfigMap name. 
    #forceUpdateConfigMap: false # boolean. Optional. Use when command != login && command != logout. Force update configmap. Default: false.
    #useConfigMapFile: false # boolean. Optional. Use when command != login && command != logout. Use file. Default: false.
    #configMapFile: # string. Required when useConfigMapFile = true && command != login && command != logout. ConfigMap file. 
    #configMapArguments: # string. Optional. Use when useConfigMapFile = false && command != login && command != logout. Arguments. 
  # Advanced
    #versionOrLocation: 'version' # 'version' | 'location'. Optional. Use when command != login && command != logout. Kubectl. Default: version.
    #versionSpec: '1.7.0' # string. Optional. Use when versionOrLocation = version && command != login && command != logout. Version spec. Default: 1.7.0.
    #checkLatest: false # boolean. Optional. Use when versionOrLocation = version && command != login && command != logout. Check for latest version. Default: false.
    #specifyLocation: # string. Required when versionOrLocation = location && command != login && command != logout. Path to kubectl. 
    #workingDirectory: '$(System.DefaultWorkingDirectory)' # string. Alias: cwd. Optional. Use when command != login && command != logout. Working directory. Default: $(System.DefaultWorkingDirectory).
    #outputFormat: 'json' # 'json' | 'yaml'. Optional. Use when command != login && command != logout. Output format. Default: json.

الإدخالات

connectionType - نوع اتصال الخدمة
string. مطلوب عند command != logout. القيم المسموح بها: Azure Resource Manager، ، Kubernetes Service Connection. None القيمة الافتراضية: Kubernetes Service Connection.

يحدد نوع اتصال الخدمة: Azure Resource Manager عند استخدام خدمة Azure Kubernetes أو اتصال خدمة Kubernetes لأي نظام مجموعة آخر.

  • Kubernetes Service Connection - يسمح لك بتوفير ملف KubeConfig أو تحديد حساب خدمة أو استيراد مثيل AKS باستخدام خيار اشتراك Azure . يتطلب استيراد مثيل AKS باستخدام خيار اشتراك Azure الوصول إلى مجموعة Kubernetes في وقت تكوين اتصال الخدمة.
  • Azure Resource Manager - يتيح لك تحديد مثيل AKS. لا يصل إلى مجموعة Kubernetes في وقت تكوين اتصال الخدمة.
  • None - استخدم تكوين Kubernetes الذي تم إنشاؤه مسبقا مخزنا محليا.

لمزيد من المعلومات، راجع اتصال الخدمة في قسم الملاحظات التالي.


connectionType - نوع اتصال الخدمة
string. مطلوب عند command != logout. القيم المسموح بها: Azure Resource Manager، ، Kubernetes Service Connection. None القيمة الافتراضية: Azure Resource Manager.

يحدد نوع اتصال الخدمة: Azure Resource Manager عند استخدام خدمة Azure Kubernetes أو اتصال خدمة Kubernetes لأي نظام مجموعة آخر.


kubernetesServiceEndpoint - اتصال خدمة Kubernetes
string. مطلوب عند connectionType = Kubernetes Service Connection && command != logout.

حدد اتصال خدمة Kubernetes.


azureSubscriptionEndpoint - اشتراك Azure
string. مطلوب عند connectionType = Azure Resource Manager && command != logout.

يحدد اشتراك Azure Resource Manager، والذي يحتوي على Azure Container Registry.

ملاحظة

لتكوين اتصال خدمة جديد، حدد اشتراك Azure من القائمة وانقر فوق Authorize. إذا لم يكن اشتراكك مدرجا أو إذا كنت تريد استخدام كيان خدمة موجود، يمكنك إعداد اتصال خدمة Azure باستخدام الزرين Add أو Manage .


azureResourceGroup - مجموعة الموارد
string. مطلوب عند connectionType = Azure Resource Manager && command != logout.

حدد مجموعة موارد Azure.


kubernetesCluster - مجموعة Kubernetes
string. مطلوب عند connectionType = Azure Resource Manager && command != logout.

حدد مجموعة مدارة من Azure.


useClusterAdmin - استخدام بيانات اعتماد مسؤول نظام المجموعة
boolean. ‏‏اختياري. استخدم عندما connectionType = Azure Resource Manager && command != logout. القيمة الافتراضية: false.

استخدم بيانات اعتماد مسؤول نظام المجموعة بدلا من بيانات اعتماد مستخدم نظام المجموعة الافتراضية.


namespace - مساحه الاسم
string. ‏‏اختياري. استخدم عندما command != logout.

قم بتعيين مساحة الاسم للأمر kubectl باستخدام العلامة –namespace. إذا لم يتم توفير مساحة الاسم، فسيتم تشغيل الأوامر في مساحة الاسم الافتراضية.


command - الامر
string. القيم المسموح بها: apply، create، delete، exec، expose، get، login، logout، logs، run، ، set. top

حدد أو حدد أمر kubectl لتشغيله. توفر قائمة القيم المسموح بها بعض الخيارات الشائعة لسهولة التحديد عند استخدام مساعد المهام، ولكن يمكنك تحديد أوامر kubectl أخرى مثل scale. استخدم الإدخال arguments لتحديد معلمات إضافية للأمر المحدد kubectl .


command - الامر
string. مطلوب القيم المسموح بها: apply، create، delete، exec، expose، get، login، logout، logs، run، ، set. top القيمة الافتراضية: apply.

حدد أو حدد أمر kubectl لتشغيله.


useConfigurationFile - استخدام التكوين
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout. القيمة الافتراضية: false.

يحدد تكوين Kubernetes لاستخدامه kubectl مع الأمر . يمكن توفير البرنامج النصي المضمن أو اسم الملف أو الدليل أو عنوان URL لملفات تكوين Kubernetes.


useConfigurationFile - استخدام ملفات التكوين
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout. القيمة الافتراضية: false.

يحدد تكوين Kubernetes لاستخدامه kubectl مع الأمر . يمكن توفير البرنامج النصي المضمن أو اسم الملف أو الدليل أو عنوان URL لملفات تكوين Kubernetes.


configurationType - نوع التكوين
string. ‏‏اختياري. استخدم عندما useConfigurationFile = true. القيم المسموح بها: configuration (مسار الملف)، inline (التكوين المضمن). القيمة الافتراضية: configuration.

يحدد نوع تكوين Kubernetes للأمر kubectl . يمكن أن يكون مسار ملف أو برنامج نصي مضمن.


configuration - مسار الملف
string. مطلوب عند configurationType = configuration.

يحدد اسم الملف أو الدليل أو عنوان URL لملفات تكوين kubernetes المستخدمة مع الأوامر.


configuration - ملف التكوين
string. مطلوب عند useConfigurationFile = true.

يحدد اسم الملف أو الدليل أو عنوان URL لملفات تكوين kubernetes المستخدمة مع الأوامر.


inline - التكوين المضمن
string. مطلوب عند configurationType = inline.

يحدد تكوين النشر المضمن للأمر kubectl .


arguments - الحجج
string. ‏‏اختياري. استخدم عندما command != login && command != logout.

وسيطات لأمر kubectl المحدد.


secretType - نوع البيانات السرية
string. مطلوب عند command != login && command != logout. القيم المسموح بها: dockerRegistry، . generic القيمة الافتراضية: dockerRegistry.

إنشاء/تحديث صورة عامة أو docker imagepullsecret. حدد dockerRegistry لإنشاء/تحديث imagepullsecret للسجل المحدد. imagePullSecret هي طريقة لتمرير سر يحتوي على كلمة مرور سجل حاوية إلى Kubelet حتى تتمكن من سحب صورة خاصة نيابة عن الجراب الخاص بك.


secretArguments - الحجج
string. ‏‏اختياري. استخدم عندما secretType = generic && command != login && command != logout.

يحدد المفاتيح والقيم الحرفية لإدراجها في البيانات السرية. على سبيل المثال، --from-literal=key1=value1أو --from-literal=key2="top secret".


containerRegistryType - نوع سجل الحاوية
string. مطلوب عند secretType = dockerRegistry && command != login && command != logout. القيم المسموح بها: Azure Container Registry، . Container Registry القيمة الافتراضية: Azure Container Registry.

حدد نوع سجل الحاوية. يمكن للمهمة استخدام تفاصيل اشتراك Azure للعمل مع سجل حاوية Azure. يتم أيضا دعم سجلات الحاويات القياسية الأخرى.


dockerRegistryEndpoint - اتصال خدمة سجل Docker
string. ‏‏اختياري. استخدم عندما secretType = dockerRegistry && containerRegistryType = Container Registry && command != login && command != logout.

حدد اتصال خدمة سجل Docker. مطلوب للأوامر التي تحتاج إلى المصادقة مع سجل.


azureSubscriptionEndpointForSecrets - اشتراك Azure
string. ‏‏اختياري. استخدم عندما secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout.

يحدد اشتراك Azure Resource Manager، والذي يحتوي على Azure Container Registry.

ملاحظة

لتكوين اتصال خدمة جديد، حدد اشتراك Azure من القائمة وانقر فوق Authorize. إذا لم يكن اشتراكك مدرجا أو إذا كنت تريد استخدام كيان خدمة موجود، يمكنك إعداد اتصال خدمة Azure باستخدام الزرين Add أو Manage .


azureContainerRegistry - سجل حاوية Azure
string. ‏‏اختياري. استخدم عندما secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout.

يحدد Azure Container Registry المستخدم لسحب صور الحاوية ونشر التطبيقات إلى مجموعة Kubernetes. مطلوب للأوامر التي تحتاج إلى المصادقة مع سجل.


secretName - اسم البيانات السرية
string. ‏‏اختياري. استخدم عندما command != login && command != logout.

اسم السر. يمكنك استخدام هذا الاسم السري في ملف تكوين Kubernetes YAML.


forceUpdate - فرض سر التحديث
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout. القيمة الافتراضية: true.

احذف البيانات السرية إذا كانت موجودة وأنشئ بيانات جديدة بقيم محدثة.


configMapName - اسم ConfigMap
string. ‏‏اختياري. استخدم عندما command != login && command != logout.

تسمح لك ConfigMaps بفصل البيانات الاصطناعية للتكوين عن محتوى الصورة للحفاظ على التطبيقات المعبأة في حاويات محمولة.


forceUpdateConfigMap - فرض تكوين التحديث
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout. القيمة الافتراضية: false.

احذف configmap إذا كان موجودا وأنشئ واحدا جديدا بقيم محدثة.


useConfigMapFile - استخدام الملف
boolean. ‏‏اختياري. استخدم عندما command != login && command != logout. القيمة الافتراضية: false.

ConfigMap إنشاء من ملف فردي أو من ملفات متعددة عن طريق تحديد دليل.


configMapFile - ملف ConfigMap
string. مطلوب عند useConfigMapFile = true && command != login && command != logout.

حدد ملفا أو دليلا يحتوي على configMaps.


configMapArguments - الحجج
string. ‏‏اختياري. استخدم عندما useConfigMapFile = false && command != login && command != logout.

يحدد المفاتيح والقيم الحرفية لإدراجها في configMap. على سبيل المثال، --from-literal=key1=value1 أو --from-literal=key2="top secret".


versionOrLocation - Kubectl
string. القيم المسموح بها: version، location (تحديد الموقع). القيمة الافتراضية: version.

kubectl هي واجهة سطر أوامر لتشغيل الأوامر مقابل مجموعات Kubernetes.


versionOrLocation - Kubectl
string. ‏‏اختياري. استخدم عندما command != login && command != logout. القيم المسموح بها: version، location (تحديد الموقع). القيمة الافتراضية: version.

kubectl هي واجهة سطر أوامر لتشغيل الأوامر مقابل مجموعات Kubernetes.


versionSpec - مواصفات الإصدار
string. ‏‏اختياري. استخدم عندما versionOrLocation = version. القيمة الافتراضية: 1.13.2.

يحدد مواصفات الإصدار للإصدار الذي يجب الحصول عليه. أمثلة: 1.7.0، 1.x.0، 4.x.0، 6.10.0، >=6.10.0.


versionSpec - مواصفات الإصدار
string. ‏‏اختياري. استخدم عندما versionOrLocation = version && command != login && command != logout. القيمة الافتراضية: 1.7.0.

-18-2 يحدد مواصفات الإصدار للإصدار الذي يجب الحصول عليه. أمثلة: 1.7.0، 1.x.0، 4.x.0، 6.10.0، >=6.10.0.


checkLatest - التحقق من وجود أحدث إصدار
boolean. ‏‏اختياري. استخدم عندما versionOrLocation = version. القيمة الافتراضية: false.

يتحقق دائما عبر الإنترنت من أحدث إصدار متوفر (stable.txt) الذي يلبي مواصفات الإصدار. عادة ما يكون هذا خطأ ما لم يكن لديك سيناريو محدد للحصول دائما على أحدث. سيؤدي ذلك إلى تكبد تكاليف التنزيل عندما لا تكون ضرورية، خاصة مع تجمع البناء المستضاف.


checkLatest - التحقق من وجود أحدث إصدار
boolean. ‏‏اختياري. استخدم عندما versionOrLocation = version && command != login && command != logout. القيمة الافتراضية: false.

يتحقق دائما عبر الإنترنت من أحدث إصدار متوفر (stable.txt) الذي يلبي مواصفات الإصدار. عادة ما يكون هذا خطأ ما لم يكن لديك سيناريو محدد للحصول دائما على أحدث. سيؤدي ذلك إلى تكبد تكاليف التنزيل عندما لا تكون ضرورية، خاصة مع تجمع البناء المستضاف.


specifyLocation - المسار إلى kubectl
string. مطلوب عند versionOrLocation = location.

يحدد المسار الكامل إلى kubectl.exe الملف.


specifyLocation - المسار إلى kubectl
string. مطلوب عند versionOrLocation = location && command != login && command != logout.

يحدد المسار الكامل إلى kubectl.exe الملف.


workingDirectory - دليل العمل
الاسم المستعار للإدخل: cwd. string. القيمة الافتراضية: $(System.DefaultWorkingDirectory).

دليل العمل لأمر Kubectl.


workingDirectory - دليل العمل
الاسم المستعار للإدخل: cwd. string. ‏‏اختياري. استخدم عندما command != login && command != logout. القيمة الافتراضية: $(System.DefaultWorkingDirectory).

دليل العمل لأمر Kubectl.


outputFormat - تنسيق الإخراج
string. القيم المسموح بها: json، ، yaml. none القيمة الافتراضية: json.

تنسيق الإخراج.


outputFormat - تنسيق الإخراج
string. القيم المسموح بها: json، . yaml القيمة الافتراضية: json.

تنسيق الإخراج.


outputFormat - تنسيق الإخراج
string. ‏‏اختياري. استخدم عندما command != login && command != logout. القيم المسموح بها: json، . yaml القيمة الافتراضية: json.

تنسيق الإخراج.


خيارات التحكم بالمهمة

تحتوي جميع المهام على خيارات التحكم بالإضافة إلى مدخلات المهام الخاصة بها. لمزيد من المعلومات، راجع خيارات التحكم وخصائص المهمة الشائعة.

متغيرات الإخراج

تحدد هذه المهمة متغيرات الإخراج التالية، والتي يمكنك استهلاكها في خطوات انتقال البيانات من الخادم والوظائف والمراحل.

KubectlOutput
يخزن إخراج kubectl الأمر.

الملاحظات

ما الجديد في الإصدار 1.0.

  • تمت إضافة إدخال نوع اتصال خدمة جديد للاختيار السهل من مجموعات Azure AKS.
  • استبدل إدخال متغير الإخراج بقسم متغيرات الإخراج الذي أضفناه في جميع المهام.

استخدم هذه المهمة لنشر مجموعة Kubernetes أو تكوينها أو تحديثها عن طريق تشغيل أوامر kubectl.

اتصال الخدمة

تعمل المهمة مع نوعين من اتصالات الخدمة: Azure Resource Managerواتصال خدمة Kubernetes، الموضح أدناه.

Azure Resource Manager

اضبط connectionType على Azure Resource Manager وحدد azureSubscriptionEndpoint لاستخدام اتصال خدمة Azure Resource Manager.

يوضح مثال YAML هذا كيفية استخدام Azure Resource Manager للإشارة إلى مجموعة Kubernetes. سيتم استخدام هذا مع أحد أوامر kubectl والقيم المناسبة التي يتطلبها الأمر.

variables:
  azureSubscriptionEndpoint: Contoso
  azureContainerRegistry: contoso.azurecr.io
  azureResourceGroup: Contoso
  kubernetesCluster: Contoso
  useClusterAdmin: false

steps:
- task: Kubernetes@1
  displayName: kubectl apply
  inputs:
    connectionType: Azure Resource Manager
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    useClusterAdmin: $(useClusterAdmin)

اتصال خدمة Kubernetes

قم بتعيين connectionType إلى Kubernetes Service Connection وحدد kubernetesServiceEndpoint لاستخدام اتصال خدمة Kubernetes.

يوضح مثال YAML هذا كيفية استخدام اتصال خدمة Kubernetes للإشارة إلى نظام مجموعة Kubernetes. سيتم استخدام هذا مع أحد أوامر kubectl والقيم المناسبة التي يتطلبها الأمر.

- task: Kubernetes@1
  displayName: kubectl apply
  inputs:
    connectionType: Kubernetes Service Connection
    kubernetesServiceEndpoint: Contoso

اعتبارات اتصال خدمة Kubernetes عند الوصول إلى AKS

يمكنك إنشاء اتصال خدمة Kubernetes مع أي من الخيارات التالية.

  • KubeConfig
  • حساب الخدمة
  • اشتراك Azure

لقطة شاشة لاختيار طريقة مصادقة اتصال خدمة Kubernetes.

عند تحديد خيار اشتراك Azure ، يجب أن يكون Kubernetes متاحا ل Azure DevOps في وقت تكوين اتصال الخدمة. قد تكون هناك أسباب مختلفة لتعذر إنشاء اتصال خدمة، على سبيل المثال قمت بإنشاء مجموعة خاصة أو أن نظام المجموعة لديه حسابات محلية معطلة. في هذه الحالات، لا يمكن ل Azure DevOps الاتصال بنظام المجموعة في وقت تكوين اتصال الخدمة وسترى شاشة تحميل مساحات الأسماء عالقة .

لقطة شاشة لاختيار مربع حوار مصادقة اتصال خدمة Kubernetes عالق عند تحميل مساحات الأسماء.

بدءا من Kubernetes 1.24، لم تعد الرموز المميزة طويلة العمر يتم إنشاؤها بشكل افتراضي. يوصي Kubernetes بعدم استخدام الرموز المميزة طويلة العمر. ونتيجة لذلك، لا تتمتع المهام التي تستخدم اتصال خدمة Kubernetes الذي تم إنشاؤه باستخدام خيار اشتراك Azure بالوصول إلى الرمز المميز الدائم المطلوب للمصادقة ولا يمكنها الوصول إلى مجموعة Kubernetes الخاصة بك. يؤدي هذا أيضا إلى مربع حوار مساحات أسماء التحميل المجمدة .

استخدام Azure Resource Manager Service Connection للوصول إلى AKS

بالنسبة لعملاء AKS، يوفر نوع اتصال خدمة Azure Resource Manager أفضل طريقة للاتصال بمجموعة خاصة، أو نظام مجموعة معطل للحسابات المحلية. لا يعتمد هذا الأسلوب على اتصال نظام المجموعة في الوقت الذي تقوم فيه بإنشاء اتصال خدمة. يتم تأجيل الوصول إلى AKS إلى وقت تشغيل البنية الأساسية لبرنامج ربط العمليات التجارية، والذي له المزايا التالية:

  • يمكن إجراء الوصول إلى نظام مجموعة AKS (خاص) من عامل مستضاف ذاتيا أو عامل مجموعة مقياس مع خط رؤية إلى نظام المجموعة.
  • يتم إنشاء رمز مميز لكل مهمة تستخدم اتصال خدمة Azure Resource Manager. يضمن هذا الاتصال ب Kubernetes برمز مميز قصير العمر، وهو توصية Kubernetes.
  • يمكن الوصول إلى AKS حتى عند تعطيل الحسابات المحلية.

الأسئلة المتداولة حول اتصال الخدمة

أتلقى رسالة الخطأ التالية: تعذر العثور على أي سر مقترن بحساب الخدمة. ماذا يحدث؟

أنت تستخدم اتصال خدمة Kubernetes مع خيار اشتراك Azure. نقوم بتحديث هذا الأسلوب لإنشاء رموز مميزة طويلة الأمد. ومن المتوقع أن يكون ذلك متاحا في منتصف أيار/مايو. ومع ذلك، يوصى بالبدء في استخدام نوع اتصال خدمة Azure وعدم استخدام الرموز المميزة طويلة الأمد وفقا لإرشادات Kubernetes.

أنا أستخدم AKS ولا أريد تغيير أي شيء، هل يمكنني الاستمرار في استخدام المهام مع اتصال خدمة Kubernetes؟

نقوم بتحديث هذا الأسلوب لإنشاء رموز مميزة طويلة الأمد. ومن المتوقع أن يكون ذلك متاحا في منتصف أيار/مايو. ومع ذلك، يرجى أن تدرك أن هذا النهج يتعارض مع إرشادات Kubernetes.

أنا أستخدم مهام Kubernetes واتصال خدمة Kubernetes ولكن ليس AKS. هل يجب أن أكون قلقا؟

ستستمر المهام في العمل كما كان من قبل.

هل ستتم إزالة نوع اتصال خدمة Kubernetes؟

تعمل مهام Kubernetes الخاصة بنا مع أي مجموعة Kubernetes، بغض النظر عن مكان تشغيلها. سيستمر اتصال خدمة Kubernetes في الوجود.

أنا عميل AKS وكل شيء يعمل بشكل جيد، هل يجب أن أتصرف؟

ليست هناك حاجة لتغيير أي شيء. إذا كنت تستخدم اتصال خدمة Kubernetes واشتراك Azure المحدد أثناء الإنشاء، فيجب أن تكون على دراية بإرشادات Kubernetes حول استخدام الرموز المميزة طويلة الأمد.

أقوم بإنشاء بيئة Kubernetes، وليس لدي خيار لاستخدام اتصالات الخدمة

في حالة عدم إمكانية الوصول إلى AKS أثناء وقت إنشاء البيئة، يمكنك استخدام بيئة فارغة وتعيين connectionType الإدخال إلى اتصال خدمة Azure Resource Manager.

لقد تم تكوين AKS باستخدام Azure Active Directory RBAC، ولا تعمل البنية الأساسية لبرنامج ربط العمليات التجارية الخاصة بي. هل ستحل هذه التحديثات ذلك؟

الوصول إلى Kubernetes عند تمكين AAD RBAC لا علاقة له بإنشاء الرمز المميز. لمنع مطالبة تفاعلية، سندعم kubelogin في تحديث مستقبلي.

الأوامر

يقبل إدخال الأمر أوامر kubectl.

يوضح مثال YAML هذا أمر التطبيق :

- task: Kubernetes@1
  displayName: kubectl apply using arguments
  inputs:
    connectionType: Azure Resource Manager
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    command: apply
    arguments: -f mhc-aks.yaml

يوضح مثال YAML هذا استخدام ملف تكوين مع الأمر تطبيق :

- task: Kubernetes@1
  displayName: kubectl apply using configFile
  inputs:
    connectionType: Azure Resource Manager
    azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
    azureResourceGroup: $(azureResourceGroup)
    kubernetesCluster: $(kubernetesCluster)
    command: apply
    useConfigurationFile: true
    configuration: mhc-aks.yaml

يوضح مثال YAML هذا استخدام كيفية استخدام أمر المقياس لتقليل عدد النسخ المتماثلة في التوزيع إلى 0.

- task: Kubernetes@1
      displayName: 'Scale down deployment $(k8sDeployment) to 0'
      inputs:
        connectionType: 'Kubernetes Service Connection'
        kubernetesServiceEndpoint: $(kubernetesServiceConnection)
        command: 'scale'
        arguments: 'deployment/$(k8sDeployment) --replicas=0'
        namespace: $(namespace)

البيانات السرية

تهدف كائنات Kubernetes من نوع البيانات السرية إلى الاحتفاظ بمعلومات حساسة مثل كلمات المرور ورموز OAuth المميزة ومفاتيح ssh. وضع هذه المعلومات في سر أكثر أمانا ومرونة من وضعها حرفيا في تعريف pod أو في صورة Docker. يبسط Azure Pipelines إضافة ImagePullSecrets إلى حساب خدمة، أو إعداد أي سر عام، كما هو موضح أدناه.

ImagePullSecret

يوضح مثال YAML هذا إعداد ImagePullSecrets:

    - task: Kubernetes@1
      displayName: kubectl apply for secretType dockerRegistry
      inputs:
        azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
        azureResourceGroup: $(azureResourceGroup)
        kubernetesCluster: $(kubernetesCluster)
        command: apply
        arguments: -f mhc-aks.yaml
        secretType: dockerRegistry
        containerRegistryType: Azure Container Registry
        azureSubscriptionEndpointForSecrets: $(azureSubscriptionEndpoint)
        azureContainerRegistry: $(azureContainerRegistry)
        secretName: mysecretkey2
        forceUpdate: true

أسرار عامة

ينشئ مثال YAML هذا أسرارا عامة من القيم الحرفية المحددة لإدخال secretArguments :

    - task: Kubernetes@1
      displayName: secretType generic with literal values
      inputs:
        azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
        azureResourceGroup: $(azureResourceGroup)
        kubernetesCluster: $(kubernetesCluster)
        command: apply
        arguments: -f mhc-aks.yaml
        secretType: generic
        secretArguments: --from-literal=contoso=5678
        secretName: mysecretkey

يمكن استخدام متغيرات المسار لتمرير وسيطات لتحديد القيم الحرفية، كما هو موضح هنا:

    - task: Kubernetes@1
      displayName: secretType generic with pipeline variables
      inputs:
        azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
        azureResourceGroup: $(azureResourceGroup)
        kubernetesCluster: $(kubernetesCluster)
        command: apply
        arguments: -f mhc-aks.yaml
        secretType: generic
        secretArguments: --from-literal=contoso=$(contosovalue)
        secretName: mysecretkey

خريطة التكوين

تسمح لك ConfigMaps بفصل عناصر التكوين عن محتوى الصورة للحفاظ على قابلية النقل للتطبيقات الحاوية.

ينشئ مثال YAML هذا ConfigMap عن طريق الإشارة إلى ملف ConfigMap:

    - task: Kubernetes@1
      displayName: kubectl apply
      inputs:
        configMapName: myconfig
        useConfigMapFile: true
        configMapFile: src/configmap

ينشئ مثال YAML هذا ConfigMap عن طريق تحديد القيم الحرفية مباشرة كإدخال configMapArguments ، وتعيين forceUpdate إلى true:

    - task: Kubernetes@1
      displayName: configMap with literal values
      inputs:
        azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
        azureResourceGroup: $(azureResourceGroup)
        kubernetesCluster: $(kubernetesCluster)
        command: apply
        arguments: -f mhc-aks.yaml
        secretType: generic
        secretArguments: --from-literal=contoso=$(contosovalue)
        secretName: mysecretkey4
        configMapName: myconfig
        forceUpdateConfigMap: true
        configMapArguments: --from-literal=myname=contoso

يمكنك استخدام متغيرات البنية الأساسية لبرنامج ربط العمليات التجارية لتمرير القيم الحرفية عند إنشاء ConfigMap، كما هو موضح هنا:

    - task: Kubernetes@1
      displayName: configMap with pipeline variables
      inputs:
        azureSubscriptionEndpoint: $(azureSubscriptionEndpoint)
        azureResourceGroup: $(azureResourceGroup)
        kubernetesCluster: $(kubernetesCluster)
        command: apply
        arguments: -f mhc-aks.yaml
        secretType: generic
        secretArguments: --from-literal=contoso=$(contosovalue)
        secretName: mysecretkey4
        configMapName: myconfig
        forceUpdateConfigMap: true
        configMapArguments: --from-literal=myname=$(contosovalue)

استكشاف الأخطاء وإصلاحها

مجموعة Kubernetes الخاصة بي خلف جدار حماية وأنا أستخدم وكلاء مستضافين. كيف يمكنني التوزيع إلى نظام المجموعة هذا؟

يمكنك منح الوكلاء المستضافين حق الوصول من خلال جدار الحماية الخاص بك عن طريق السماح بعناوين IP للوكلاء المستضافين. لمزيد من التفاصيل، راجع نطاقات IP للعامل

المتطلبات

المتطلبات الوصف
أنواع البنية الأساسية لبرنامج ربط العمليات التجارية YAML، الإصدار الكلاسيكي، الإصدار الكلاسيكي
يعمل على Agent, DeploymentGroup
المطالب بلا
القدرات لا تفي هذه المهمة بأي متطلبات للمهام اللاحقة في الوظيفة.
قيود الأوامر أي
متغيرات Settable أي
إصدار الوكيل جميع إصدارات العامل المدعومة.
فئة المهمة نشر