Kubernetes@1 – Kubectl v1 feladat
Kubernetes-fürt üzembe helyezése, konfigurálása és frissítése az Azure Container Service-ben kubectl-parancsok futtatásával.
Kubectl-parancsok futtatásával üzembe helyezheti, konfigurálhatja és frissítheti a Kubernetes-fürtöt az Azure Container Service-ben.
Syntax
# 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.
Bevitelek
connectionType
- Szolgáltatáskapcsolat típusa
string
. Akkor szükséges, ha command != logout
. Engedélyezett értékek: Azure Resource Manager
, Kubernetes Service Connection
, None
. Alapértelmezett érték: Kubernetes Service Connection
.
A szolgáltatáskapcsolat típusát adja meg: Azure Resource Manager, ha bármely más fürthöz Azure Kubernetes Service vagy Kubernetes-szolgáltatáskapcsolatot használ.
Kubernetes Service Connection
– Lehetővé teszi Egy KubeConfig-fájl megadását, egy szolgáltatásfiók megadását vagy egy AKS-példány importálását az Azure-előfizetés lehetőséggel. Egy AKS-példány Azure-előfizetési lehetőséggel történő importálásához Kubernetes-fürthozzáféréshez van szükség a Szolgáltatáskapcsolat konfigurálásakor.Azure Resource Manager
– Lehetővé teszi egy AKS-példány kiválasztását. Nem fér hozzá a Kubernetes-fürthöz a Szolgáltatáskapcsolat konfigurálásakor.None
– Használjon helyileg tárolt, előre létrehozott Kubernetes-konfigurációt.
További információ: Szolgáltatáskapcsolat a következő Megjegyzések szakaszban.
connectionType
- Szolgáltatáskapcsolat típusa
string
. Akkor szükséges, ha command != logout
. Engedélyezett értékek: Azure Resource Manager
, Kubernetes Service Connection
, None
. Alapértelmezett érték: Azure Resource Manager
.
A szolgáltatáskapcsolat típusát adja meg: Azure Resource Manager, ha bármely más fürthöz Azure Kubernetes Service vagy Kubernetes-szolgáltatáskapcsolatot használ.
kubernetesServiceEndpoint
- Kubernetes-szolgáltatáskapcsolat
string
. Akkor szükséges, ha connectionType = Kubernetes Service Connection && command != logout
.
Válasszon ki egy Kubernetes-szolgáltatáskapcsolatot.
azureSubscriptionEndpoint
- Azure-előfizetés
string
. Akkor szükséges, ha connectionType = Azure Resource Manager && command != logout
.
Megadja az Azure Resource Manager-előfizetést, amely tartalmazza a Azure Container Registry.
Megjegyzés
Új szolgáltatáskapcsolat konfigurálásához adja meg az Azure-előfizetést a listából, és kattintson a gombra Authorize
. Ha az előfizetése nem szerepel a listában, vagy ha meglévő szolgáltatásnevet szeretne használni, az vagy Manage
gombokkal Add
állíthat be Egy Azure-szolgáltatáskapcsolatot.
azureResourceGroup
- Erőforráscsoport
string
. Akkor szükséges, ha connectionType = Azure Resource Manager && command != logout
.
Válasszon ki egy Azure-erőforráscsoportot.
kubernetesCluster
- Kubernetes-fürt
string
. Akkor szükséges, ha connectionType = Azure Resource Manager && command != logout
.
Válasszon ki egy Felügyelt Azure-fürtöt.
useClusterAdmin
- Fürt rendszergazdai hitelesítő adatainak használata
boolean
. Választható. Használja a következőt: connectionType = Azure Resource Manager && command != logout
. Alapértelmezett érték: false
.
Fürtadminisztrátori hitelesítő adatokat használjon az alapértelmezett fürtfelhasználói hitelesítő adatok helyett.
namespace
- Névtér
string
. Választható. Használja a következőt: command != logout
.
Állítsa be a kubectl parancs névterét a –namespace jelzővel. Ha a névtér nincs megadva, a parancsok az alapértelmezett névtérben futnak.
command
- Parancs
string
. Engedélyezett értékek: apply
, create
, delete
, exec
, expose
, get
, login
, logout
logs
, run
, set
, . top
Válassza ki vagy adja meg a futtatni kívánt kubectl-parancsot. Az engedélyezett értékek listája a feladat segéd használatakor gyakran használható lehetőségeket kínál, de megadhat más kubectl-parancsokat is, példáulscale
: . arguments
A bemenettel további paramétereket adhat meg a megadott kubectl
parancshoz.
command
- Parancs
string
. Kötelező. Engedélyezett értékek: apply
, create
, delete
, exec
, expose
, get
, login
, logout
logs
, run
, set
, . top
Alapértelmezett érték: apply
.
Válassza ki vagy adja meg a futtatni kívánt kubectl-parancsot.
useConfigurationFile
- Konfiguráció használata
boolean
. Választható. Használja a következőt: command != login && command != logout
. Alapértelmezett érték: false
.
Megadja a kubernetes-konfigurációt, amelyet a kubectl
paranccsal szeretne használni. A Kubernetes konfigurációs fájljainak beágyazott szkriptje, fájlneve, könyvtára vagy URL-címe megadható.
useConfigurationFile
- Konfigurációs fájlok használata
boolean
. Választható. Használja a következőt: command != login && command != logout
. Alapértelmezett érték: false
.
Megadja a kubernetes-konfigurációt, amelyet a kubectl
paranccsal szeretne használni. A Kubernetes konfigurációs fájljainak beágyazott szkriptje, fájlneve, könyvtára vagy URL-címe megadható.
configurationType
- Konfiguráció típusa
string
. Választható. Használja a következőt: useConfigurationFile = true
. Engedélyezett értékek: configuration
(Fájl elérési útja), inline
(beágyazott konfiguráció). Alapértelmezett érték: configuration
.
A kubernetes-konfiguráció típusát adja meg a kubectl
parancshoz. Ez lehet fájlelérési út vagy beágyazott szkript.
configuration
- Fájl elérési útja
string
. Akkor szükséges, ha configurationType = configuration
.
Megadja a parancsokkal használt kubernetes-konfigurációs fájlok fájlnevét, könyvtárát vagy URL-címét.
configuration
- Konfigurációs fájl
string
. Akkor szükséges, ha useConfigurationFile = true
.
Megadja a parancsokkal használt kubernetes-konfigurációs fájlok fájlnevét, könyvtárát vagy URL-címét.
inline
- Beágyazott konfiguráció
string
. Akkor szükséges, ha configurationType = inline
.
Megadja a parancs beágyazott üzembehelyezési konfigurációját kubectl
.
arguments
- Érvek
string
. Választható. Használja a következőt: command != login && command != logout
.
A megadott kubectl-parancs argumentumai.
secretType
- Titkos kód típusa
string
. Akkor szükséges, ha command != login && command != logout
. Engedélyezett értékek: dockerRegistry
, generic
. Alapértelmezett érték: dockerRegistry
.
Általános vagy docker imagepullsecret létrehozása/frissítése. Válassza a dockerRegistry lehetőséget a kiválasztott beállításjegyzék imagepullsecret elemének létrehozásához/frissítéséhez. Az imagePullSecret egy olyan titkos kód átadása, amely tárolóregisztrációs adatbázis jelszavát tartalmazza a Kubeletnek, így lekérhet egy privát rendszerképet a pod nevében.
secretArguments
- Érvek
string
. Választható. Használja a következőt: secretType = generic && command != login && command != logout
.
Megadja a titkos kódba beszúrni kívánt kulcsokat és literális értékeket. Például: --from-literal=key1=value1
vagy --from-literal=key2="top secret"
.
containerRegistryType
- Tárolóregisztrációs adatbázis típusa
string
. Akkor szükséges, ha secretType = dockerRegistry && command != login && command != logout
. Engedélyezett értékek: Azure Container Registry
, Container Registry
. Alapértelmezett érték: Azure Container Registry
.
Válasszon egy tárolóregisztrációs adatbázistípust. A feladat az Azure-előfizetés adatait használhatja az Azure Container Registry használatához. Egyéb szabványos tárolóregisztrációs adatbázisok is támogatottak.
dockerRegistryEndpoint
- Docker beállításjegyzék-szolgáltatáskapcsolat
string
. Választható. Használja a következőt: secretType = dockerRegistry && containerRegistryType = Container Registry && command != login && command != logout
.
Válasszon egy Docker-beállításjegyzék-szolgáltatáskapcsolatot. A beállításjegyzékkel hitelesíteni kívánt parancsokhoz szükséges.
azureSubscriptionEndpointForSecrets
- Azure-előfizetés
string
. Választható. Használja a következőt: secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout
.
Meghatározza az Azure Resource Manager-előfizetést, amely Azure Container Registry tartalmaz.
Megjegyzés
Új szolgáltatáskapcsolat konfigurálásához válassza ki az Azure-előfizetést a listából, és kattintson a gombra Authorize
. Ha az előfizetése nem szerepel a listában, vagy meglévő szolgáltatásnevet szeretne használni, az vagy Manage
gombokkal Add
beállíthat egy Azure-szolgáltatáskapcsolatot.
azureContainerRegistry
- Azure-tárolóregisztrációs adatbázis
string
. Választható. Használja a következőt: secretType = dockerRegistry && containerRegistryType = Azure Container Registry && command != login && command != logout
.
Egy Azure Container Registry ad meg, amely tárolórendszerképek lekérésére és alkalmazások Kubernetes-fürtön való üzembe helyezésére szolgál. A beállításjegyzékkel hitelesíteni kívánt parancsokhoz szükséges.
secretName
- Titkos kód neve
string
. Választható. Használja a következőt: command != login && command != logout
.
A titkos kód neve. Ezt a titkos kódnevet a Kubernetes YAML konfigurációs fájljában használhatja.
forceUpdate
- Frissítési titkos kód kényszerítve
boolean
. Választható. Használja a következőt: command != login && command != logout
. Alapértelmezett érték: true
.
Törölje a titkos kódot, ha létezik, és hozzon létre egy újat frissített értékekkel.
configMapName
- Konfigurációtérkép neve
string
. Választható. Használja a következőt: command != login && command != logout
.
A konfigurációtérképek lehetővé teszik a konfigurációs összetevők képtartalomtól való leválasztását, hogy a tárolóalapú alkalmazások hordozhatóak maradjanak.
forceUpdateConfigMap
- Frissítési konfigurációtérkép kényszerítve
boolean
. Választható. Használja a következőt: command != login && command != logout
. Alapértelmezett érték: false
.
Törölje a konfigurációtérképet, ha létezik, és hozzon létre egy újat frissített értékekkel.
useConfigMapFile
- Fájl használata
boolean
. Választható. Használja a következőt: command != login && command != logout
. Alapértelmezett érték: false
.
Létrehoz egy ConfigMap
fájlt egy adott fájlból vagy több fájlból egy könyvtár megadásával.
configMapFile
- ConfigMap-fájl
string
. Akkor szükséges, ha useConfigMapFile = true && command != login && command != logout
.
Adjon meg egy fájlt vagy könyvtárat, amely tartalmazza a konfigurációtérképeket.
configMapArguments
- Érvek
string
. Választható. Használja a következőt: useConfigMapFile = false && command != login && command != logout
.
Megadja a beszúrni configMap
kívánt kulcsokat és literális értékeket. Például --from-literal=key1=value1
vagy --from-literal=key2="top secret"
.
versionOrLocation
- Kubectl
string
. Engedélyezett értékek: version
, location
(Hely megadása). Alapértelmezett érték: version
.
A kubectl egy parancssori felület a parancsok Kubernetes-fürtökön való futtatásához.
versionOrLocation
- Kubectl
string
. Választható. Használja a következőt: command != login && command != logout
. Engedélyezett értékek: version
, location
(Hely megadása). Alapértelmezett érték: version
.
A kubectl egy parancssori felület a parancsok Kubernetes-fürtökön való futtatásához.
versionSpec
- Verziós specifikáció
string
. Választható. Használja a következőt: versionOrLocation = version
. Alapértelmezett érték: 1.13.2
.
A lekérni kívánt verzió verziós specifikációját adja meg. Példák: 1.7.0
, 1.x.0
, 4.x.0
, 6.10.0
, . >=6.10.0
versionSpec
- Verziós specifikáció
string
. Választható. Használja a következőt: versionOrLocation = version && command != login && command != logout
. Alapértelmezett érték: 1.7.0
.
-18-2 A lekérni kívánt verzió verziós specifikációját adja meg. Példák: 1.7.0
, 1.x.0
, 4.x.0
, 6.10.0
, . >=6.10.0
checkLatest
- A legújabb verzió keresése
boolean
. Választható. Használja a következőt: versionOrLocation = version
. Alapértelmezett érték: false
.
Mindig online ellenőrzi a legújabb elérhető verziót (stable.txt), amely megfelel a verzió specifikációjának. Ez általában hamis, hacsak nem rendelkezik egy adott forgatókönyvvel, amely mindig a legfrissebbet kapja. Ez letöltési költségekkel jár, ha esetleg nem szükséges, különösen a üzemeltetett buildkészlet esetében.
checkLatest
- A legújabb verzió keresése
boolean
. Választható. Használja a következőt: versionOrLocation = version && command != login && command != logout
. Alapértelmezett érték: false
.
Mindig online ellenőrzi a legújabb elérhető verziót (stable.txt), amely megfelel a verzió specifikációjának. Ez általában hamis, hacsak nem rendelkezik egy adott forgatókönyvvel, amely mindig a legfrissebbet kapja. Ez letöltési költségekkel jár, ha esetleg nem szükséges, különösen a üzemeltetett buildkészlet esetében.
specifyLocation
- A kubectl elérési útja
string
. Akkor szükséges, ha versionOrLocation = location
.
Megadja a fájl teljes elérési útját kubectl.exe
.
specifyLocation
- A kubectl elérési útja
string
. Akkor szükséges, ha versionOrLocation = location && command != login && command != logout
.
Megadja a fájl teljes elérési útját kubectl.exe
.
workingDirectory
- Munkakönyvtár
Bemeneti alias: cwd
. string
. Alapértelmezett érték: $(System.DefaultWorkingDirectory)
.
A Kubectl parancs munkakönyvtára.
workingDirectory
- Munkakönyvtár
Bemeneti alias: cwd
. string
. Választható. Használja a következőt: command != login && command != logout
. Alapértelmezett érték: $(System.DefaultWorkingDirectory)
.
A Kubectl parancs munkakönyvtára.
outputFormat
- Kimeneti formátum
string
. Engedélyezett értékek: json
, yaml
, none
. Alapértelmezett érték: json
.
Kimeneti formátum.
outputFormat
- Kimeneti formátum
string
. Engedélyezett értékek: json
, yaml
. Alapértelmezett érték: json
.
Kimeneti formátum.
outputFormat
- Kimeneti formátum
string
. Választható. Használja a következőt: command != login && command != logout
. Engedélyezett értékek: json
, yaml
. Alapértelmezett érték: json
.
Kimeneti formátum.
Feladatvezérlési lehetőségek
Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlési beállítások és gyakori feladattulajdonságok.
Kimeneti változók
Ez a feladat a következő kimeneti változókat határozza meg, amelyeket az alsóbb rétegbeli lépésekben, feladatokban és szakaszokban használhat fel.
KubectlOutput
A parancs kimenetét kubectl
tárolja.
Megjegyzések
Az 1.0-s verzió újdonságai.
- Új szolgáltatáskapcsolattípus-bemenetet adott hozzá az Azure AKS-fürtök egyszerű kiválasztásához.
- A kimeneti változó bemenetét lecseréltük egy kimeneti változók szakaszra, amelyet az összes tevékenységhez hozzáadtunk.
Ezzel a feladattal kubectl-parancsok futtatásával helyezhet üzembe, konfigurálhat vagy frissíthet Kubernetes-fürtöt.
Szolgáltatáskapcsolat
A feladat két szolgáltatáskapcsolattípussal működik: az Azure Resource Manager és a Kubernetes Service Connection szolgáltatással, az alábbiakban leírtak szerint.
Azure Resource Manager
Állítsa be connectionType
és Azure Resource Manager
adja meg az azureSubscriptionEndpoint
Azure Resource Manager szolgáltatáskapcsolat használatára.
Ez a YAML-példa bemutatja, hogyan használja az Azure Resource Manager a Kubernetes-fürtre való hivatkozáshoz. Ezt a kubectl-parancsok egyikével és a parancs által igényelt megfelelő értékekkel kell használni.
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-szolgáltatáskapcsolat
Állítsa be connectionType
és Kubernetes Service Connection
adja meg a kubernetesServiceEndpoint
értéket a Kubernetes-szolgáltatáskapcsolat használatához.
Ez a YAML-példa bemutatja, hogyan használható a Kubernetes-szolgáltatáskapcsolat a Kubernetes-fürtre való hivatkozáshoz. Ezt a kubectl-parancsok egyikével és a parancs által igényelt megfelelő értékekkel kell használni.
- task: Kubernetes@1
displayName: kubectl apply
inputs:
connectionType: Kubernetes Service Connection
kubernetesServiceEndpoint: Contoso
A Kubernetes-szolgáltatás kapcsolati szempontjai az AKS elérésekor
Az alábbi lehetőségek bármelyikével létrehozhat Kubernetes-szolgáltatáskapcsolatot.
- KubeConfig
- Szolgáltatásfiók
- Azure-előfizetés
Az Azure-előfizetés lehetőség kiválasztásakor a Kubernetesnek elérhetőnek kell lennie az Azure DevOps számára a szolgáltatás kapcsolatkonfigurációjának időpontjában. Előfordulhat, hogy a szolgáltatáskapcsolat nem hozható létre, például privát fürtöt hozott létre , vagy a fürt helyi fiókjai le vannak tiltva. Ezekben az esetekben az Azure DevOps nem tud csatlakozni a fürthöz a szolgáltatáskapcsolat konfigurációs ideje alatt, és elakadt a névterek betöltése képernyő.
A Kubernetes 1.24-től kezdve a hosszú élettartamú tokenek alapértelmezés szerint nem jönnek létre. A Kubernetes a hosszú élettartamú tokenek használatát javasolja. Ennek eredményeképpen az Azure-előfizetés lehetőséggel létrehozott Kubernetes-szolgáltatáskapcsolatot használó feladatok nem rendelkeznek hozzáféréssel a hitelesítéshez szükséges állandó jogkivonathoz, és nem férnek hozzá a Kubernetes-fürthöz. Ez a névterek befagyasztott betöltése párbeszédpanelt is eredményezi.
Az AKS elérése az Azure Resource Manager szolgáltatáskapcsolat használatával
Az AKS-ügyfelek számára az Azure Resource Manager szolgáltatás kapcsolattípusa biztosítja a legjobb módszert egy privát fürthöz vagy egy helyi fiókokat letiltó fürthöz való csatlakozáshoz. Ez a módszer nem függ a fürtkapcsolattól a szolgáltatáskapcsolat létrehozásakor. Az AKS-hez való hozzáférést a rendszer a folyamat futtatókörnyezetére halasztja, amely a következő előnyökkel jár:
- A (privát) AKS-fürthöz való hozzáférés egy saját üzemeltetésű vagy méretezési csoportügynökből, a fürtre való látóvonallal végezhető el.
- Minden olyan feladathoz létrejön egy jogkivonat, amely Azure Resource Manager szolgáltatáskapcsolatot használ. Ez biztosítja, hogy rövid élettartamú jogkivonattal csatlakozzon a Kuberneteshez, ami a Kubernetes-javaslat.
- Az AKS akkor is elérhető, ha a helyi fiókok le vannak tiltva.
Szolgáltatáskapcsolat – gyakori kérdések
A következő hibaüzenet jelenik meg: Nem található a szolgáltatásfiókhoz társított titkos kód. Mi történik?
A Kubernetes szolgáltatáskapcsolatot használja az Azure-előfizetéssel. Ezt a módszert úgy frissítjük, hogy hosszú élettartamú jogkivonatokat hozzon létre. Ez várhatóan május közepén lesz elérhető. Javasoljuk azonban, hogy kezdje el használni az Azure-szolgáltatás kapcsolattípusát, és ne használjon hosszú élettartamú jogkivonatokat a Kubernetes útmutatója szerint.
Az AKS-t használom, és nem szeretnék semmit módosítani, továbbra is használhatok feladatokat a Kubernetes szolgáltatáskapcsolattal?
Ezt a módszert úgy frissítjük, hogy hosszú élettartamú jogkivonatokat hozzon létre. Ez várhatóan május közepén lesz elérhető. Vegye figyelembe azonban, hogy ez a megközelítés nem vonatkozik a Kubernetes útmutatására.
A Kubernetes-feladatokat és a Kubernetes-szolgáltatáskapcsolatot használom, de az AKS-t nem. Aggódnom kellene?
A tevékenységek a korábbiakhoz hasonlóan fognak működni.
Eltávolítja a Kubernetes-szolgáltatás kapcsolattípusát?
A Kubernetes-feladatok bármely Kubernetes-fürttel működnek, függetlenül attól, hogy hol futnak. A Kubernetes szolgáltatáskapcsolat továbbra is fennáll.
AKS-ügyfél vagyok, és minden rendben van.
Semmit sem kell megváltoztatni. Ha a Kubernetes szolgáltatáskapcsolatot használja, és a létrehozás során kiválasztotta az Azure-előfizetést, vegye figyelembe a Kubernetes hosszú élettartamú jogkivonatok használatával kapcsolatos útmutatóját.
Kubernetes-környezetet hozok létre, és nincs lehetőségem szolgáltatáskapcsolatok használatára
Ha nem fér hozzá az AKS-hez a környezet létrehozásakor, használhat üres környezetet, és beállíthatja a connectionType
bemenetet egy Azure Resource Manager szolgáltatáskapcsolatra.
Az AKS az Azure Active Directory RBAC-vel van konfigurálva, és a folyamatom nem működik. Ezek a frissítések megoldják ezt?
A Kubernetes elérése az AAD RBAC engedélyezésekor nem kapcsolódik a jogkivonatok létrehozásához. Az interaktív kérések elkerülése érdekében egy későbbi frissítésben támogatjuk a kubelogin használatát.
Parancsok
A parancs bemenete fogadja a kubectl-parancsokat.
Ez a YAML-példa az apply parancsot mutatja be:
- 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
Ez a YAML-példa bemutatja egy konfigurációs fájl használatát az apply paranccsal:
- 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
Ez a YAML-példa bemutatja, hogyan lehet a méretezési paranccsal 0-ra csökkenteni az üzembe helyezés replikáinak számát.
- 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)
Titkos kulcsok
A titkos kubernetes típusú objektumok bizalmas információk, például jelszavak, OAuth-jogkivonatok és ssh-kulcsok tárolására szolgálnak. Az információk titkos kulcsba helyezése biztonságosabb és rugalmasabb, mint a poddefiníciókban vagy Docker-rendszerképekben való szó szerinti elhelyezés. Az Azure Pipelines leegyszerűsíti a szolgáltatásfiókok hozzáadását ImagePullSecrets
vagy az általános titkos kódok beállítását az alábbiak szerint.
ImagePullSecret
Ez a YAML-példa az ImagePullSecrets beállítását mutatja be:
- 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
Általános titkos kódok
Ez a YAML-példa általános titkos kódokat hoz létre a secretArguments bemenethez megadott literális értékekből:
- 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
A folyamatváltozók a literális értékek megadására szolgáló argumentumok átadására használhatók az itt látható módon:
- 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
Konfigurációtérkép
A konfigurációtérképek lehetővé teszik a konfigurációs összetevők leválasztását a képtartalomtól a tárolóalapú alkalmazások hordozhatóságának fenntartása érdekében.
Ez a YAML-példa egy ConfigMap-fájlra mutató konfigurációtérképet hoz létre:
- task: Kubernetes@1
displayName: kubectl apply
inputs:
configMapName: myconfig
useConfigMapFile: true
configMapFile: src/configmap
Ez a YAML-példa létrehoz egy konfigurációtérképet úgy, hogy a literális értékeket közvetlenül a configMapArguments bemenetként adja meg, és a forceUpdate értéket igaz értékre állítja:
- 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
A folyamatváltozókkal konstansértékeket adhat át a ConfigMap létrehozásakor, ahogy az itt látható:
- 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)
Hibaelhárítás
A Kubernetes-fürtöm tűzfal mögött található, és bérelt ügynököket használok. Hogyan helyezhetek üzembe ebben a fürtben?
Az IP-címek bérelt ügynökök számára történő engedélyezésével adhat hozzáférést a tűzfalon keresztül a bérelt ügynököknek. További részletek az ügynök IP-tartományairól szóló részben.
Követelmények
Követelmény | Leírás |
---|---|
Folyamattípusok | YAML, klasszikus build, klasszikus kiadás |
Futtatás | Ügynök, DeploymentGroup |
Igények | None |
Képességek | Ez a feladat nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek. |
Parancskorlátozások | Bármelyik |
Változók beállítása | Bármelyik |
Ügynök verziója | Minden támogatott ügynökverzió. |
Feladatkategória | Üzembe helyezés |