Partager via


Extensions - Create

Créez une extension de cluster Kubernetes.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/extensions/{extensionName}?api-version=2023-05-01

Paramètres URI

Nom Dans Obligatoire Type Description
clusterName
path True

string

Nom du cluster Kubernetes.

clusterResourceName
path True

string

Nom de la ressource de cluster Kubernetes, c’est-à-dire managedClusters, connectedClusters, provisionedClusters.

clusterRp
path True

string

Le fournisseur de ressources de cluster Kubernetes, c’est-à-dire Microsoft.ContainerService, Microsoft.Kubernetes, Microsoft.HybridContainerService.

extensionName
path True

string

Nom de l’extension.

resourceGroupName
path True

string

Nom du groupe de ressources. Le nom ne respecte pas la casse.

subscriptionId
path True

string

ID de l’abonnement cible.

api-version
query True

string

Version de l’API à utiliser pour cette opération.

Corps de la demande

Nom Type Description
identity

Identity

Identité de la ressource d’extension

plan

Plan

Informations sur le plan.

properties.aksAssignedIdentity

AksAssignedIdentity

Identité de la ressource d’extension dans un cluster AKS

properties.autoUpgradeMinorVersion

boolean

Indicateur à noter si cette extension participe à la mise à niveau automatique de la version mineure ou non.

properties.configurationProtectedSettings

object

Paramètres de configuration sensibles, en tant que paires nom-valeur pour la configuration de cette extension.

properties.configurationSettings

object

Paramètres de configuration, sous forme de paires nom-valeur pour la configuration de cette extension.

properties.extensionType

string

Type de l’extension, dont cette ressource est une instance. Il doit s’agir de l’un des types d’extension inscrits auprès de Microsoft.KubernetesConfiguration par l’éditeur d’extension.

properties.releaseTrain

string

ReleaseTrain cette extension participe à la mise à niveau automatique (par exemple, Stable, Préversion, etc.) - uniquement si autoUpgradeMinorVersion a la valeur « true ».

properties.scope

Scope

Étendue à laquelle l’extension est installée.

properties.statuses

ExtensionStatus[]

État de cette extension.

properties.version

string

Version spécifiée par l’utilisateur de l’extension pour cette extension à « pin ». Pour utiliser « version », autoUpgradeMinorVersion doit être « false ».

Réponses

Nom Type Description
200 OK

Extension

Demande reçue avec succès pour une ressource existante.

201 Created

Extension

Demande reçue avec succès.

Other Status Codes

ErrorResponse

Réponse d’erreur décrivant la raison de l’échec de l’opération.

Sécurité

azure_auth

Flux OAuth2 Azure Active Directory

Type: oauth2
Flux: implicit
URL d’autorisation: https://login.microsoftonline.com/common/oauth2/authorize

Étendues

Nom Description
user_impersonation Emprunter l’identité de votre compte d’utilisateur

Exemples

Create Extension
Create Extension with Plan

Create Extension

Exemple de requête

PUT https://management.azure.com/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor?api-version=2023-05-01

{
  "properties": {
    "extensionType": "azuremonitor-containers",
    "autoUpgradeMinorVersion": true,
    "releaseTrain": "Preview",
    "scope": {
      "cluster": {
        "releaseNamespace": "kube-system"
      }
    },
    "configurationSettings": {
      "omsagent.secret.wsid": "fakeTokenPlaceholder",
      "omsagent.env.clusterName": "clusterName1"
    },
    "configurationProtectedSettings": {
      "omsagent.secret.key": "secretKeyValue01"
    }
  }
}

Exemple de réponse

Operation-Location: /subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/{operationId}
x-ms-async-operation-timeout: PT48H
Azure-AsyncOperation: http://management.azure.com/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Kubernetes/ConnectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/operationId?api-version=2023-05-01
{
  "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor",
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "name": "ClusterMonitor",
  "systemData": {
    "createdBy": "string",
    "createdByType": "Application",
    "createdAt": "2021-09-08T05:10:57.027Z",
    "lastModifiedBy": "string",
    "lastModifiedByType": "Application",
    "lastModifiedAt": "2021-09-08T05:10:57.027Z"
  },
  "properties": {
    "extensionType": "azuremonitor-containers",
    "autoUpgradeMinorVersion": false,
    "releaseTrain": "Preview",
    "version": "0.1.4",
    "scope": {
      "cluster": {
        "releaseNamespace": "kube-system"
      }
    },
    "configurationSettings": {
      "omsagent.secret.wsid": "fakeTokenPlaceholder",
      "omsagent.env.clusterName": "clusterName1"
    },
    "provisioningState": "Creating",
    "currentVersion": null,
    "statuses": [],
    "isSystemExtension": false
  }
}
Operation-Location: /subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor/operations/{operationId}
x-ms-async-operation-timeout: PT48H
{
  "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/ClusterMonitor",
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "name": "ClusterMonitor",
  "systemData": {
    "createdBy": "string",
    "createdByType": "Application",
    "createdAt": "2021-09-08T05:10:57.027Z",
    "lastModifiedBy": "string",
    "lastModifiedByType": "Application",
    "lastModifiedAt": "2021-09-08T05:10:57.027Z"
  },
  "properties": {
    "extensionType": "azuremonitor-containers",
    "autoUpgradeMinorVersion": false,
    "releaseTrain": "Preview",
    "version": "0.1.4",
    "scope": {
      "cluster": {
        "releaseNamespace": "kube-system"
      }
    },
    "configurationSettings": {
      "omsagent.secret.wsid": "fakeTokenPlaceholder",
      "omsagent.env.clusterName": "clusterName1"
    },
    "provisioningState": "Succeeded",
    "currentVersion": "0.1.4",
    "statuses": [],
    "isSystemExtension": false
  }
}

Create Extension with Plan

Exemple de requête

PUT https://management.azure.com/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/azureVote?api-version=2023-05-01

{
  "properties": {
    "extensionType": "azure-vote",
    "autoUpgradeMinorVersion": true,
    "releaseTrain": "Preview"
  },
  "plan": {
    "name": "azure-vote-standard",
    "publisher": "Microsoft",
    "product": "azure-vote-standard-offer-id"
  }
}

Exemple de réponse

Operation-Location: /subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/azureVote/operations/{operationId}
x-ms-async-operation-timeout: PT48H
Azure-AsyncOperation: http://management.azure.com/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Kubernetes/ConnectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/azureVote/operations/operationId?api-version=2022-04-01-preview
{
  "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/azureVote",
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "name": "azureVote",
  "systemData": {
    "createdBy": "string",
    "createdByType": "Application",
    "createdAt": "2021-09-08T05:10:57.027Z",
    "lastModifiedBy": "string",
    "lastModifiedByType": "Application",
    "lastModifiedAt": "2021-09-08T05:10:57.027Z"
  },
  "plan": {
    "name": "azure-vote-standard",
    "publisher": "Microsoft",
    "product": "azure-vote-standard-offer-id"
  },
  "properties": {
    "extensionType": "azure-vote",
    "autoUpgradeMinorVersion": true,
    "releaseTrain": "Preview",
    "version": "0.1.4",
    "scope": {
      "cluster": {
        "releaseNamespace": "kube-system"
      }
    },
    "provisioningState": "Creating",
    "statuses": [],
    "currentVersion": null,
    "isSystemExtension": false
  }
}
Operation-Location: /subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/azureVote/operations/{operationId}
x-ms-async-operation-timeout: PT48H
{
  "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/extensions/azureVote",
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "name": "azureVote",
  "systemData": {
    "createdBy": "string",
    "createdByType": "Application",
    "createdAt": "2021-09-08T05:10:57.027Z",
    "lastModifiedBy": "string",
    "lastModifiedByType": "Application",
    "lastModifiedAt": "2021-09-08T05:10:57.027Z"
  },
  "plan": {
    "name": "azure-vote-standard",
    "publisher": "Microsoft",
    "product": "azure-vote-standard-offer-id"
  },
  "properties": {
    "extensionType": "azure-vote",
    "autoUpgradeMinorVersion": true,
    "releaseTrain": "Preview",
    "version": "0.1.4",
    "scope": {
      "cluster": {
        "releaseNamespace": "kube-system"
      }
    },
    "provisioningState": "Creating",
    "statuses": [],
    "currentVersion": "0.1.4",
    "isSystemExtension": false
  }
}

Définitions

Nom Description
AksAssignedIdentity

Identité de la ressource d’extension dans un cluster AKS

AKSIdentityType

Type d’identité.

createdByType

Type d’identité qui a créé la ressource.

ErrorAdditionalInfo

Informations supplémentaires sur l’erreur de gestion des ressources.

ErrorDetail

Détail de l’erreur.

ErrorResponse

Réponse d’erreur

Extension

Objet Extension.

ExtensionStatus

État de l’extension.

Identity

Identité de la ressource.

LevelType

Niveau du status.

Plan

Plan de la ressource.

ProvisioningState

État de l’installation de cette extension.

ResourceIdentityType

Type d’identité.

Scope

Étendue de l’extension. Il peut s’agir d’un cluster ou d’un espace de noms ; mais pas les deux.

ScopeCluster

Spécifie que l’étendue de l’extension est Cluster

ScopeNamespace

Spécifie que l’étendue de l’extension est Espace de noms

systemData

Métadonnées relatives à la création et à la dernière modification de la ressource.

AksAssignedIdentity

Identité de la ressource d’extension dans un cluster AKS

Nom Type Description
principalId

string

ID principal de l’identité de ressource.

tenantId

string

ID de locataire de la ressource.

type

AKSIdentityType

Type d’identité.

AKSIdentityType

Type d’identité.

Nom Type Description
SystemAssigned

string

UserAssigned

string

createdByType

Type d’identité qui a créé la ressource.

Nom Type Description
Application

string

Key

string

ManagedIdentity

string

User

string

ErrorAdditionalInfo

Informations supplémentaires sur l’erreur de gestion des ressources.

Nom Type Description
info

object

Informations supplémentaires

type

string

Type d’informations supplémentaires.

ErrorDetail

Détail de l’erreur.

Nom Type Description
additionalInfo

ErrorAdditionalInfo[]

Informations supplémentaires sur l’erreur.

code

string

Code d'erreur.

details

ErrorDetail[]

Détails de l’erreur.

message

string

Message d’erreur.

target

string

Cible d’erreur.

ErrorResponse

Réponse d’erreur

Nom Type Description
error

ErrorDetail

Objet d’erreur.

Extension

Objet Extension.

Nom Type Valeur par défaut Description
id

string

ID de ressource complet pour la ressource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

identity

Identity

Identité de la ressource d’extension

name

string

nom de la ressource.

plan

Plan

Informations sur le plan.

properties.aksAssignedIdentity

AksAssignedIdentity

Identité de la ressource d’extension dans un cluster AKS

properties.autoUpgradeMinorVersion

boolean

True

Indicateur à noter si cette extension participe à la mise à niveau automatique de la version mineure ou non.

properties.configurationProtectedSettings

object

Paramètres de configuration sensibles, en tant que paires nom-valeur pour la configuration de cette extension.

properties.configurationSettings

object

Paramètres de configuration, sous forme de paires nom-valeur pour la configuration de cette extension.

properties.currentVersion

string

Version actuellement installée de l’extension.

properties.customLocationSettings

object

Propriétés des paramètres d’emplacement personnalisés.

properties.errorInfo

ErrorDetail

Informations sur les erreurs de l’agent, par exemple les erreurs lors de l’installation.

properties.extensionType

string

Type de l’extension, dont cette ressource est une instance. Il doit s’agir de l’un des types d’extension inscrits auprès de Microsoft.KubernetesConfiguration par l’éditeur d’extension.

properties.isSystemExtension

boolean

False

Indicateur à noter si cette extension est une extension système

properties.packageUri

string

URI du package Helm

properties.provisioningState

ProvisioningState

État de l’installation de cette extension.

properties.releaseTrain

string

Stable

ReleaseTrain cette extension participe à la mise à niveau automatique (par exemple, Stable, Préversion, etc.) - uniquement si autoUpgradeMinorVersion a la valeur « true ».

properties.scope

Scope

Étendue à laquelle l’extension est installée.

properties.statuses

ExtensionStatus[]

État de cette extension.

properties.version

string

Version spécifiée par l’utilisateur de l’extension pour cette extension à « pin ». Pour utiliser « version », autoUpgradeMinorVersion doit être « false ».

systemData

systemData

Métadonnées de niveau supérieur https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/common-api-contracts.md#system-metadata-for-all-azure-resources

type

string

Type de la ressource. Par exemple, « Microsoft.Compute/virtualMachines » ou « Microsoft.Storage/storageAccounts »

ExtensionStatus

État de l’extension.

Nom Type Valeur par défaut Description
code

string

Code d’état fourni par l’extension

displayStatus

string

Brève description de status de l’extension.

level

LevelType

Information

Niveau du status.

message

string

Message détaillé du status de l’extension.

time

string

DateLiteral (par ISO8601) indiquant l’heure de l’installation status.

Identity

Identité de la ressource.

Nom Type Description
principalId

string

ID principal de l’identité de ressource.

tenantId

string

ID de locataire de la ressource.

type

ResourceIdentityType

Type d’identité.

LevelType

Niveau du status.

Nom Type Description
Error

string

Information

string

Warning

string

Plan

Plan de la ressource.

Nom Type Description
name

string

Nom défini par l’utilisateur de l’artefact tiers en cours d’acquisition.

product

string

Artefact tiers en cours d’acquisition. Par exemple, NewRelic. Le produit correspond à l’Id d’offre spécifié pour l’artefact au moment de l’intégration du marché des données.

promotionCode

string

Un éditeur a fourni le code de promotion tel qu’il a été provisionné dans Data Market pour le produit/artefact en cours.

publisher

string

Éditeur de l’artefact tiers en cours d’achat. Par exemple, NewRelic

version

string

Version du produit/artefact souhaité.

ProvisioningState

État de l’installation de cette extension.

Nom Type Description
Canceled

string

Creating

string

Deleting

string

Failed

string

Succeeded

string

Updating

string

ResourceIdentityType

Type d’identité.

Nom Type Description
SystemAssigned

string

Scope

Étendue de l’extension. Il peut s’agir d’un cluster ou d’un espace de noms ; mais pas les deux.

Nom Type Description
cluster

ScopeCluster

Spécifie que l’étendue de l’extension est Cluster

namespace

ScopeNamespace

Spécifie que l’étendue de l’extension est Espace de noms

ScopeCluster

Spécifie que l’étendue de l’extension est Cluster

Nom Type Description
releaseNamespace

string

Espace de noms où l’extension Release doit être placée, pour une extension étendue au cluster. Si cet espace de noms n’existe pas, il sera créé

ScopeNamespace

Spécifie que l’étendue de l’extension est Espace de noms

Nom Type Description
targetNamespace

string

Espace de noms où l’extension sera créée pour une extension étendue à l’espace de noms. Si cet espace de noms n’existe pas, il sera créé

systemData

Métadonnées relatives à la création et à la dernière modification de la ressource.

Nom Type Description
createdAt

string

Horodatage de la création de ressources (UTC).

createdBy

string

Identité qui a créé la ressource.

createdByType

createdByType

Type d’identité qui a créé la ressource.

lastModifiedAt

string

Horodatage de la dernière modification de la ressource (UTC)

lastModifiedBy

string

Identité qui a modifié la dernière ressource.

lastModifiedByType

createdByType

Type d’identité qui a modifié la dernière ressource.