Partager via


Microsoft.App Bassins de sessions

Définition de ressource Bicep

Le type de ressource sessionPools peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format de ressource

Pour créer une ressource Microsoft.App/sessionPools, ajoutez le bicep suivant à votre modèle.

resource symbolicname 'Microsoft.App/sessionPools@2025-10-02-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    containerType: 'string'
    customContainerTemplate: {
      containers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          probes: [
            {
              failureThreshold: int
              httpGet: {
                host: 'string'
                httpHeaders: [
                  {
                    name: 'string'
                    value: 'string'
                  }
                ]
                path: 'string'
                port: int
                scheme: 'string'
              }
              initialDelaySeconds: int
              periodSeconds: int
              successThreshold: int
              tcpSocket: {
                host: 'string'
                port: int
              }
              terminationGracePeriodSeconds: int
              timeoutSeconds: int
              type: 'string'
            }
          ]
          resources: {
            cpu: int
            memory: 'string'
          }
        }
      ]
      ingress: {
        targetPort: int
      }
      registryCredentials: {
        identity: 'string'
        passwordSecretRef: 'string'
        server: 'string'
        username: 'string'
      }
    }
    dynamicPoolConfiguration: {
      lifecycleConfiguration: {
        cooldownPeriodInSeconds: int
        lifecycleType: 'string'
        maxAlivePeriodInSeconds: int
      }
    }
    environmentId: 'string'
    managedIdentitySettings: [
      {
        identity: 'string'
        lifecycle: 'string'
      }
    ]
    mcpServerSettings: {
      isMcpServerApiKeyDisabled: bool
      isMcpServerEnabled: bool
    }
    poolManagementType: 'string'
    scaleConfiguration: {
      maxConcurrentSessions: int
      readySessionInstances: int
    }
    secrets: [
      {
        name: 'string'
        value: 'string'
      }
    ]
    sessionNetworkConfiguration: {
      status: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Valeurs de propriété

Microsoft.App/sessionPools

Nom Descriptif Valeur
identité Identités managées nécessaires par un pool de sessions pour interagir avec d’autres services Azure pour ne pas conserver de secrets ou d’informations d’identification dans le code. ManagedServiceIdentity
lieu Emplacement géographique où réside la ressource chaîne (obligatoire)
nom Nom de la ressource chaîne

Contraintes:
Longueur minimale = 3
Longueur maximale = 63
Modèle = ^[a-z][a-z0-9]*$ (obligatoire)
Propriétés Propriétés spécifiques à la ressource du pool de sessions d’application conteneur sessionPoolProperties
étiquettes Balises de ressources Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles

CustomContainerTemplate

Nom Descriptif Valeur
Conteneurs Liste des définitions de conteneur pour les sessions du pool de sessions. ConteneurSession[]
accès Configuration de l’entrée du pool de sessions. SessionIngress
registreInformations d’identification Informations d’identification du registre de conteneurs privés pour les conteneurs utilisés par les sessions du pool de sessions. SessionRegistryCredentials

DynamicPoolConfiguration

Nom Descriptif Valeur
cycle de vieConfiguration Configuration du cycle de vie d’une session dans le pool de sessions dynamiques Cycle de vieConfiguration

EnvironnementVar

Nom Descriptif Valeur
nom Nom de la variable d’environnement. ficelle
secretRéf Nom du secret de l’application conteneur à partir duquel extraire la valeur de la variable d’environnement. ficelle
valeur Valeur de variable d’environnement non secrète. ficelle

Cycle de vieConfiguration

Nom Descriptif Valeur
temps de rechargePeriodInSeconds Période de refroidissement d’une session en secondes lorsque le type de cycle de vie est « Timed ». Int
cycle de vieType Type de cycle de vie du pool de sessions. 'OnContainerExit'
« Chronométré »
maxAlivePeriodInSeconds Période active maximale d’une session en secondes lorsque le type de cycle de vie est « OnContainerExit ». Int

ManagedIdentitySetting

Nom Descriptif Valeur
identité ID de ressource d’une identité managée affectée par l’utilisateur qui est affectée au pool de sessions, ou « système » pour l’identité affectée par le système. chaîne (obligatoire)
cycle de vie Permet de sélectionner les étapes de cycle de vie d’un pool de sessions pendant lesquelles l’identité managée doit être disponible. 'Tous'
'Initiation'
'Principal'
« Aucun »

Identité de Service Gérée (ManagedServiceIdentity)

Nom Descriptif Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). « Aucun »
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
Identités attribuées par l'utilisateur Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

McpServerSettings

Nom Descriptif Valeur
isMcpServerApiKeyDisabled Indique si la clé API du serveur MCP est désactivée. bool
isMcpServerEnabled Indique si le serveur MCP est activé. bool

Configuration de l’échelle

Nom Descriptif Valeur
maxConcurrentSessions Nombre maximal de sessions en même temps. Int
readySessionInstances Nombre minimal d’instances de session prêtes. Int

SessionContainer

Nom Descriptif Valeur
args Arguments de commande de démarrage du conteneur. chaîne[]
ordre Commande de démarrage du conteneur. chaîne[]
environnement Variables d’environnement de conteneur. EnvironnementVar[]
image Balise d’image conteneur. ficelle
nom Nom du conteneur personnalisé. ficelle
probes Liste des sondes pour le conteneur. Sonde de session[]
Ressources Exigences en matière de ressources de conteneur. SessionContainerResources

SessionContainerResources

Nom Descriptif Valeur
CPU Processeur requis dans les cœurs, par exemple 0,5 Int
mémoire Mémoire requise, par exemple « 250 Mo » ficelle

SessionIngress

Nom Descriptif Valeur
targetPort Port cible dans les conteneurs pour le trafic à partir d’entrée Int

SessionNetworkConfiguration

Nom Descriptif Valeur
statut État réseau des sessions. 'EgressDisabled'
'Sortie activée'

SessionPoolProperties

Nom Descriptif Valeur
containerType Type de conteneur des sessions. 'Conteneur personnalisé'
'PythonLTS'
customContainerTemplate Configuration de conteneur personnalisée si le containerType est CustomContainer. CustomContainerTemplate
dynamicPoolConfiguration Configuration du pool si poolManagementType est dynamique. DynamicPoolConfiguration
environmentId ID de ressource de l’environnement du pool de sessions. ficelle
managedIdentitySettings Paramètres facultatifs pour une identité managée affectée au pool de sessions. ManagedIdentitySetting[]
mcpServerSettings Les paramètres de serveur MCP (Model Context Protocol) du pool de sessions. McpServerSettings
poolManagementType Type de gestion du pool de sessions. 'Dynamique'
'Manuel'
scaleConfiguration Configuration de mise à l’échelle du pool de sessions. ScaleConfiguration
Secrets Secrets du pool de sessions. SessionPoolSecret[]
sessionNetworkConfiguration Configuration réseau des sessions dans le pool de sessions. sessionNetworkConfiguration

SessionPoolSecret

Nom Descriptif Valeur
nom Nom du secret. ficelle
valeur Valeur secrète. chaîne

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.

Sonde SessionProbe

Nom Descriptif Valeur
failureThreshold Échecs consécutifs minimum pour que la sonde soit considérée comme ayant échoué après avoir réussi. La valeur par défaut est 3. La valeur minimale est 1. La valeur maximale est 10. Int
httpGet HTTPGet spécifie la requête http à effectuer. SessionProbeHttpGet
initialDelaySeconds Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur minimale est 1. La valeur maximale est 60. Int
periodSeconds Fréquence (en secondes) d’exécution de la sonde. La valeur par défaut est 10 secondes. La valeur minimale est 1. La valeur maximale est 240. Int
successThreshold Nombre minimal de réussites consécutives pour que la sonde soit considérée comme réussie après avoir échoué. La valeur par défaut est de 1. Doit être 1 pour la vie et le démarrage. La valeur minimale est 1. La valeur maximale est 10. Int
tcpSocket TCPSocket spécifie une action impliquant un port TCP. Les hooks TCP ne sont pas encore pris en charge. SessionProbeTcpSocket
terminationGracePeriodSeconds Durée facultative en secondes, le pod doit se terminer correctement lors de l’échec de la sonde. La période de grâce est la durée en secondes après que les processus en cours d’exécution dans le pod soient envoyés un signal d’arrêt et le moment où les processus sont arrêtés de force avec un signal de destruction. Définissez cette valeur plus longtemps que l’heure de nettoyage attendue pour votre processus. Si cette valeur est nulle, l’arrêt du podGracePeriodSeconds est utilisé. Dans le cas contraire, cette valeur remplace la valeur fournie par la spécification de pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiatement via le signal de destruction (aucune occasion d’arrêter). Il s’agit d’un champ alpha et nécessite l’activation de la porte de fonctionnalité ProbeTerminationGracePeriod. La valeur maximale est de 3600 secondes (1 heure) Int
timeoutSeconds Nombre de secondes après lesquelles la sonde expire. La valeur par défaut est 1 seconde. La valeur minimale est 1. La valeur maximale est 240. Int
type Indique le type de sonde. Peut être Liveness ou Startup, la sonde de préparation n’est pas prise en charge dans les sessions. Le type doit être unique pour chaque sonde dans le contexte d’une liste de sondes (SessionProbes). « Vivacité »
« Démarrage »

SessionProbeHttpGet

Nom Descriptif Valeur
host Nom d’hôte à connecter, par défaut à l’adresse IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. ficelle
httpHeaders (en-tête http) En-têtes personnalisés à définir dans la requête. HTTP autorise les en-têtes répétés. SessionProbeHttpGetHttpHeadersItem[]
path Chemin d’accès au serveur HTTP. ficelle
port Nom ou numéro du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)
scheme Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. 'HTTP'
'HTTPS'

SessionProbeHttpGetHttpHeadersItem

Nom Descriptif Valeur
nom Nom du champ d’en-tête chaîne (obligatoire)
valeur Valeur du champ d’en-tête chaîne (obligatoire)

SessionProbeTcpSocket

Nom Descriptif Valeur
host Facultatif : nom d’hôte auquel se connecter, par défaut à l’adresse IP du pod. ficelle
port Numéro ou nom du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)

SessionRegistryCredentials

Nom Descriptif Valeur
identité Identité managée à utiliser pour s’authentifier auprès d’Azure Container Registry. Pour les identités affectées par l’utilisateur, utilisez l’ID complet de ressource d’identité affectée par l’utilisateur. Pour les identités affectées par le système, utilisez « système » ficelle
mot de passeSecretRéf Nom du secret qui contient le mot de passe de connexion au Registre ficelle
serveur Serveur de registre de conteneurs. ficelle
nom d'utilisateur Nom d’utilisateur du registre de conteneurs. ficelle

TrackedResourceTags

Nom Descriptif Valeur

UserAssignedIdentities

Nom Descriptif Valeur

userAssignedIdentity

Nom Descriptif Valeur

Exemples d’utilisation

Modules vérifiés Azure

Les modules vérifiés Azure suivants peuvent être utilisés pour déployer ce type de ressource.

Module Descriptif
Pool de sessions d’application Module de ressources AVM pour le pool de sessions d’application

Définition de ressource de modèle ARM

Le type de ressource sessionPools peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format de ressource

Pour créer une ressource Microsoft.App/sessionPools, ajoutez le code JSON suivant à votre modèle.

{
  "type": "Microsoft.App/sessionPools",
  "apiVersion": "2025-10-02-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "containerType": "string",
    "customContainerTemplate": {
      "containers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "probes": [
            {
              "failureThreshold": "int",
              "httpGet": {
                "host": "string",
                "httpHeaders": [
                  {
                    "name": "string",
                    "value": "string"
                  }
                ],
                "path": "string",
                "port": "int",
                "scheme": "string"
              },
              "initialDelaySeconds": "int",
              "periodSeconds": "int",
              "successThreshold": "int",
              "tcpSocket": {
                "host": "string",
                "port": "int"
              },
              "terminationGracePeriodSeconds": "int",
              "timeoutSeconds": "int",
              "type": "string"
            }
          ],
          "resources": {
            "cpu": "int",
            "memory": "string"
          }
        }
      ],
      "ingress": {
        "targetPort": "int"
      },
      "registryCredentials": {
        "identity": "string",
        "passwordSecretRef": "string",
        "server": "string",
        "username": "string"
      }
    },
    "dynamicPoolConfiguration": {
      "lifecycleConfiguration": {
        "cooldownPeriodInSeconds": "int",
        "lifecycleType": "string",
        "maxAlivePeriodInSeconds": "int"
      }
    },
    "environmentId": "string",
    "managedIdentitySettings": [
      {
        "identity": "string",
        "lifecycle": "string"
      }
    ],
    "mcpServerSettings": {
      "isMcpServerApiKeyDisabled": "bool",
      "isMcpServerEnabled": "bool"
    },
    "poolManagementType": "string",
    "scaleConfiguration": {
      "maxConcurrentSessions": "int",
      "readySessionInstances": "int"
    },
    "secrets": [
      {
        "name": "string",
        "value": "string"
      }
    ],
    "sessionNetworkConfiguration": {
      "status": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valeurs de propriété

Microsoft.App/sessionPools

Nom Descriptif Valeur
apiVersion Version de l’API '2025-10-02-preview'
identité Identités managées nécessaires par un pool de sessions pour interagir avec d’autres services Azure pour ne pas conserver de secrets ou d’informations d’identification dans le code. ManagedServiceIdentity
lieu Emplacement géographique où réside la ressource chaîne (obligatoire)
nom Nom de la ressource chaîne

Contraintes:
Longueur minimale = 3
Longueur maximale = 63
Modèle = ^[a-z][a-z0-9]*$ (obligatoire)
Propriétés Propriétés spécifiques à la ressource du pool de sessions d’application conteneur sessionPoolProperties
étiquettes Balises de ressources Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles
type Type de ressource 'Microsoft.App/sessionPools'

CustomContainerTemplate

Nom Descriptif Valeur
Conteneurs Liste des définitions de conteneur pour les sessions du pool de sessions. ConteneurSession[]
accès Configuration de l’entrée du pool de sessions. SessionIngress
registreInformations d’identification Informations d’identification du registre de conteneurs privés pour les conteneurs utilisés par les sessions du pool de sessions. SessionRegistryCredentials

DynamicPoolConfiguration

Nom Descriptif Valeur
cycle de vieConfiguration Configuration du cycle de vie d’une session dans le pool de sessions dynamiques Cycle de vieConfiguration

EnvironnementVar

Nom Descriptif Valeur
nom Nom de la variable d’environnement. ficelle
secretRéf Nom du secret de l’application conteneur à partir duquel extraire la valeur de la variable d’environnement. ficelle
valeur Valeur de variable d’environnement non secrète. ficelle

Cycle de vieConfiguration

Nom Descriptif Valeur
temps de rechargePeriodInSeconds Période de refroidissement d’une session en secondes lorsque le type de cycle de vie est « Timed ». Int
cycle de vieType Type de cycle de vie du pool de sessions. 'OnContainerExit'
« Chronométré »
maxAlivePeriodInSeconds Période active maximale d’une session en secondes lorsque le type de cycle de vie est « OnContainerExit ». Int

ManagedIdentitySetting

Nom Descriptif Valeur
identité ID de ressource d’une identité managée affectée par l’utilisateur qui est affectée au pool de sessions, ou « système » pour l’identité affectée par le système. chaîne (obligatoire)
cycle de vie Permet de sélectionner les étapes de cycle de vie d’un pool de sessions pendant lesquelles l’identité managée doit être disponible. 'Tous'
'Initiation'
'Principal'
« Aucun »

Identité de Service Gérée (ManagedServiceIdentity)

Nom Descriptif Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). « Aucun »
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
Identités attribuées par l'utilisateur Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

McpServerSettings

Nom Descriptif Valeur
isMcpServerApiKeyDisabled Indique si la clé API du serveur MCP est désactivée. bool
isMcpServerEnabled Indique si le serveur MCP est activé. bool

Configuration de l’échelle

Nom Descriptif Valeur
maxConcurrentSessions Nombre maximal de sessions en même temps. Int
readySessionInstances Nombre minimal d’instances de session prêtes. Int

SessionContainer

Nom Descriptif Valeur
args Arguments de commande de démarrage du conteneur. chaîne[]
ordre Commande de démarrage du conteneur. chaîne[]
environnement Variables d’environnement de conteneur. EnvironnementVar[]
image Balise d’image conteneur. ficelle
nom Nom du conteneur personnalisé. ficelle
probes Liste des sondes pour le conteneur. Sonde de session[]
Ressources Exigences en matière de ressources de conteneur. SessionContainerResources

SessionContainerResources

Nom Descriptif Valeur
CPU Processeur requis dans les cœurs, par exemple 0,5 Int
mémoire Mémoire requise, par exemple « 250 Mo » ficelle

SessionIngress

Nom Descriptif Valeur
targetPort Port cible dans les conteneurs pour le trafic à partir d’entrée Int

SessionNetworkConfiguration

Nom Descriptif Valeur
statut État réseau des sessions. 'EgressDisabled'
'Sortie activée'

SessionPoolProperties

Nom Descriptif Valeur
containerType Type de conteneur des sessions. 'Conteneur personnalisé'
'PythonLTS'
customContainerTemplate Configuration de conteneur personnalisée si le containerType est CustomContainer. CustomContainerTemplate
dynamicPoolConfiguration Configuration du pool si poolManagementType est dynamique. DynamicPoolConfiguration
environmentId ID de ressource de l’environnement du pool de sessions. ficelle
managedIdentitySettings Paramètres facultatifs pour une identité managée affectée au pool de sessions. ManagedIdentitySetting[]
mcpServerSettings Les paramètres de serveur MCP (Model Context Protocol) du pool de sessions. McpServerSettings
poolManagementType Type de gestion du pool de sessions. 'Dynamique'
'Manuel'
scaleConfiguration Configuration de mise à l’échelle du pool de sessions. ScaleConfiguration
Secrets Secrets du pool de sessions. SessionPoolSecret[]
sessionNetworkConfiguration Configuration réseau des sessions dans le pool de sessions. sessionNetworkConfiguration

SessionPoolSecret

Nom Descriptif Valeur
nom Nom du secret. ficelle
valeur Valeur secrète. chaîne

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.

Sonde SessionProbe

Nom Descriptif Valeur
failureThreshold Échecs consécutifs minimum pour que la sonde soit considérée comme ayant échoué après avoir réussi. La valeur par défaut est 3. La valeur minimale est 1. La valeur maximale est 10. Int
httpGet HTTPGet spécifie la requête http à effectuer. SessionProbeHttpGet
initialDelaySeconds Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur minimale est 1. La valeur maximale est 60. Int
periodSeconds Fréquence (en secondes) d’exécution de la sonde. La valeur par défaut est 10 secondes. La valeur minimale est 1. La valeur maximale est 240. Int
successThreshold Nombre minimal de réussites consécutives pour que la sonde soit considérée comme réussie après avoir échoué. La valeur par défaut est de 1. Doit être 1 pour la vie et le démarrage. La valeur minimale est 1. La valeur maximale est 10. Int
tcpSocket TCPSocket spécifie une action impliquant un port TCP. Les hooks TCP ne sont pas encore pris en charge. SessionProbeTcpSocket
terminationGracePeriodSeconds Durée facultative en secondes, le pod doit se terminer correctement lors de l’échec de la sonde. La période de grâce est la durée en secondes après que les processus en cours d’exécution dans le pod soient envoyés un signal d’arrêt et le moment où les processus sont arrêtés de force avec un signal de destruction. Définissez cette valeur plus longtemps que l’heure de nettoyage attendue pour votre processus. Si cette valeur est nulle, l’arrêt du podGracePeriodSeconds est utilisé. Dans le cas contraire, cette valeur remplace la valeur fournie par la spécification de pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiatement via le signal de destruction (aucune occasion d’arrêter). Il s’agit d’un champ alpha et nécessite l’activation de la porte de fonctionnalité ProbeTerminationGracePeriod. La valeur maximale est de 3600 secondes (1 heure) Int
timeoutSeconds Nombre de secondes après lesquelles la sonde expire. La valeur par défaut est 1 seconde. La valeur minimale est 1. La valeur maximale est 240. Int
type Indique le type de sonde. Peut être Liveness ou Startup, la sonde de préparation n’est pas prise en charge dans les sessions. Le type doit être unique pour chaque sonde dans le contexte d’une liste de sondes (SessionProbes). « Vivacité »
« Démarrage »

SessionProbeHttpGet

Nom Descriptif Valeur
host Nom d’hôte à connecter, par défaut à l’adresse IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. ficelle
httpHeaders (en-tête http) En-têtes personnalisés à définir dans la requête. HTTP autorise les en-têtes répétés. SessionProbeHttpGetHttpHeadersItem[]
path Chemin d’accès au serveur HTTP. ficelle
port Nom ou numéro du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)
scheme Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. 'HTTP'
'HTTPS'

SessionProbeHttpGetHttpHeadersItem

Nom Descriptif Valeur
nom Nom du champ d’en-tête chaîne (obligatoire)
valeur Valeur du champ d’en-tête chaîne (obligatoire)

SessionProbeTcpSocket

Nom Descriptif Valeur
host Facultatif : nom d’hôte auquel se connecter, par défaut à l’adresse IP du pod. ficelle
port Numéro ou nom du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)

SessionRegistryCredentials

Nom Descriptif Valeur
identité Identité managée à utiliser pour s’authentifier auprès d’Azure Container Registry. Pour les identités affectées par l’utilisateur, utilisez l’ID complet de ressource d’identité affectée par l’utilisateur. Pour les identités affectées par le système, utilisez « système » ficelle
mot de passeSecretRéf Nom du secret qui contient le mot de passe de connexion au Registre ficelle
serveur Serveur de registre de conteneurs. ficelle
nom d'utilisateur Nom d’utilisateur du registre de conteneurs. ficelle

TrackedResourceTags

Nom Descriptif Valeur

UserAssignedIdentities

Nom Descriptif Valeur

userAssignedIdentity

Nom Descriptif Valeur

Exemples d’utilisation

Définition de ressource Terraform (fournisseur AzAPI)

Le type de ressource sessionPools peut être déployé avec des opérations qui ciblent :

  • Groupes de ressources

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format de ressource

Pour créer une ressource Microsoft.App/sessionPools, ajoutez le terraform suivant à votre modèle.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/sessionPools@2025-10-02-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      containerType = "string"
      customContainerTemplate = {
        containers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            probes = [
              {
                failureThreshold = int
                httpGet = {
                  host = "string"
                  httpHeaders = [
                    {
                      name = "string"
                      value = "string"
                    }
                  ]
                  path = "string"
                  port = int
                  scheme = "string"
                }
                initialDelaySeconds = int
                periodSeconds = int
                successThreshold = int
                tcpSocket = {
                  host = "string"
                  port = int
                }
                terminationGracePeriodSeconds = int
                timeoutSeconds = int
                type = "string"
              }
            ]
            resources = {
              cpu = int
              memory = "string"
            }
          }
        ]
        ingress = {
          targetPort = int
        }
        registryCredentials = {
          identity = "string"
          passwordSecretRef = "string"
          server = "string"
          username = "string"
        }
      }
      dynamicPoolConfiguration = {
        lifecycleConfiguration = {
          cooldownPeriodInSeconds = int
          lifecycleType = "string"
          maxAlivePeriodInSeconds = int
        }
      }
      environmentId = "string"
      managedIdentitySettings = [
        {
          identity = "string"
          lifecycle = "string"
        }
      ]
      mcpServerSettings = {
        isMcpServerApiKeyDisabled = bool
        isMcpServerEnabled = bool
      }
      poolManagementType = "string"
      scaleConfiguration = {
        maxConcurrentSessions = int
        readySessionInstances = int
      }
      secrets = [
        {
          name = "string"
          value = "string"
        }
      ]
      sessionNetworkConfiguration = {
        status = "string"
      }
    }
  }
}

Valeurs de propriété

Microsoft.App/sessionPools

Nom Descriptif Valeur
identité Identités managées nécessaires par un pool de sessions pour interagir avec d’autres services Azure pour ne pas conserver de secrets ou d’informations d’identification dans le code. ManagedServiceIdentity
lieu Emplacement géographique où réside la ressource chaîne (obligatoire)
nom Nom de la ressource chaîne

Contraintes:
Longueur minimale = 3
Longueur maximale = 63
Modèle = ^[a-z][a-z0-9]*$ (obligatoire)
Propriétés Propriétés spécifiques à la ressource du pool de sessions d’application conteneur sessionPoolProperties
étiquettes Balises de ressources Dictionnaire de noms et de valeurs d’étiquettes.
type Type de ressource « Microsoft.App/sessionPools@2025-10-02-preview »

CustomContainerTemplate

Nom Descriptif Valeur
Conteneurs Liste des définitions de conteneur pour les sessions du pool de sessions. ConteneurSession[]
accès Configuration de l’entrée du pool de sessions. SessionIngress
registreInformations d’identification Informations d’identification du registre de conteneurs privés pour les conteneurs utilisés par les sessions du pool de sessions. SessionRegistryCredentials

DynamicPoolConfiguration

Nom Descriptif Valeur
cycle de vieConfiguration Configuration du cycle de vie d’une session dans le pool de sessions dynamiques Cycle de vieConfiguration

EnvironnementVar

Nom Descriptif Valeur
nom Nom de la variable d’environnement. ficelle
secretRéf Nom du secret de l’application conteneur à partir duquel extraire la valeur de la variable d’environnement. ficelle
valeur Valeur de variable d’environnement non secrète. ficelle

Cycle de vieConfiguration

Nom Descriptif Valeur
temps de rechargePeriodInSeconds Période de refroidissement d’une session en secondes lorsque le type de cycle de vie est « Timed ». Int
cycle de vieType Type de cycle de vie du pool de sessions. 'OnContainerExit'
« Chronométré »
maxAlivePeriodInSeconds Période active maximale d’une session en secondes lorsque le type de cycle de vie est « OnContainerExit ». Int

ManagedIdentitySetting

Nom Descriptif Valeur
identité ID de ressource d’une identité managée affectée par l’utilisateur qui est affectée au pool de sessions, ou « système » pour l’identité affectée par le système. chaîne (obligatoire)
cycle de vie Permet de sélectionner les étapes de cycle de vie d’un pool de sessions pendant lesquelles l’identité managée doit être disponible. 'Tous'
'Initiation'
'Principal'
« Aucun »

Identité de Service Gérée (ManagedServiceIdentity)

Nom Descriptif Valeur
type Type d’identité de service managé (où les types SystemAssigned et UserAssigned sont autorisés). « Aucun »
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (obligatoire)
Identités attribuées par l'utilisateur Ensemble d’identités affectées par l’utilisateur associées à la ressource. Les clés de dictionnaire userAssignedIdentities seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Les valeurs de dictionnaire peuvent être des objets vides ({}) dans les requêtes. UserAssignedIdentities

McpServerSettings

Nom Descriptif Valeur
isMcpServerApiKeyDisabled Indique si la clé API du serveur MCP est désactivée. bool
isMcpServerEnabled Indique si le serveur MCP est activé. bool

Configuration de l’échelle

Nom Descriptif Valeur
maxConcurrentSessions Nombre maximal de sessions en même temps. Int
readySessionInstances Nombre minimal d’instances de session prêtes. Int

SessionContainer

Nom Descriptif Valeur
args Arguments de commande de démarrage du conteneur. chaîne[]
ordre Commande de démarrage du conteneur. chaîne[]
environnement Variables d’environnement de conteneur. EnvironnementVar[]
image Balise d’image conteneur. ficelle
nom Nom du conteneur personnalisé. ficelle
probes Liste des sondes pour le conteneur. Sonde de session[]
Ressources Exigences en matière de ressources de conteneur. SessionContainerResources

SessionContainerResources

Nom Descriptif Valeur
CPU Processeur requis dans les cœurs, par exemple 0,5 Int
mémoire Mémoire requise, par exemple « 250 Mo » ficelle

SessionIngress

Nom Descriptif Valeur
targetPort Port cible dans les conteneurs pour le trafic à partir d’entrée Int

SessionNetworkConfiguration

Nom Descriptif Valeur
statut État réseau des sessions. 'EgressDisabled'
'Sortie activée'

SessionPoolProperties

Nom Descriptif Valeur
containerType Type de conteneur des sessions. 'Conteneur personnalisé'
'PythonLTS'
customContainerTemplate Configuration de conteneur personnalisée si le containerType est CustomContainer. CustomContainerTemplate
dynamicPoolConfiguration Configuration du pool si poolManagementType est dynamique. DynamicPoolConfiguration
environmentId ID de ressource de l’environnement du pool de sessions. ficelle
managedIdentitySettings Paramètres facultatifs pour une identité managée affectée au pool de sessions. ManagedIdentitySetting[]
mcpServerSettings Les paramètres de serveur MCP (Model Context Protocol) du pool de sessions. McpServerSettings
poolManagementType Type de gestion du pool de sessions. 'Dynamique'
'Manuel'
scaleConfiguration Configuration de mise à l’échelle du pool de sessions. ScaleConfiguration
Secrets Secrets du pool de sessions. SessionPoolSecret[]
sessionNetworkConfiguration Configuration réseau des sessions dans le pool de sessions. sessionNetworkConfiguration

SessionPoolSecret

Nom Descriptif Valeur
nom Nom du secret. ficelle
valeur Valeur secrète. chaîne

Contraintes:
Valeur sensible. Passez en tant que paramètre sécurisé.

Sonde SessionProbe

Nom Descriptif Valeur
failureThreshold Échecs consécutifs minimum pour que la sonde soit considérée comme ayant échoué après avoir réussi. La valeur par défaut est 3. La valeur minimale est 1. La valeur maximale est 10. Int
httpGet HTTPGet spécifie la requête http à effectuer. SessionProbeHttpGet
initialDelaySeconds Nombre de secondes après le démarrage du conteneur avant le lancement des probes liveness. La valeur minimale est 1. La valeur maximale est 60. Int
periodSeconds Fréquence (en secondes) d’exécution de la sonde. La valeur par défaut est 10 secondes. La valeur minimale est 1. La valeur maximale est 240. Int
successThreshold Nombre minimal de réussites consécutives pour que la sonde soit considérée comme réussie après avoir échoué. La valeur par défaut est de 1. Doit être 1 pour la vie et le démarrage. La valeur minimale est 1. La valeur maximale est 10. Int
tcpSocket TCPSocket spécifie une action impliquant un port TCP. Les hooks TCP ne sont pas encore pris en charge. SessionProbeTcpSocket
terminationGracePeriodSeconds Durée facultative en secondes, le pod doit se terminer correctement lors de l’échec de la sonde. La période de grâce est la durée en secondes après que les processus en cours d’exécution dans le pod soient envoyés un signal d’arrêt et le moment où les processus sont arrêtés de force avec un signal de destruction. Définissez cette valeur plus longtemps que l’heure de nettoyage attendue pour votre processus. Si cette valeur est nulle, l’arrêt du podGracePeriodSeconds est utilisé. Dans le cas contraire, cette valeur remplace la valeur fournie par la spécification de pod. La valeur doit être un entier non négatif. La valeur zéro indique l’arrêt immédiatement via le signal de destruction (aucune occasion d’arrêter). Il s’agit d’un champ alpha et nécessite l’activation de la porte de fonctionnalité ProbeTerminationGracePeriod. La valeur maximale est de 3600 secondes (1 heure) Int
timeoutSeconds Nombre de secondes après lesquelles la sonde expire. La valeur par défaut est 1 seconde. La valeur minimale est 1. La valeur maximale est 240. Int
type Indique le type de sonde. Peut être Liveness ou Startup, la sonde de préparation n’est pas prise en charge dans les sessions. Le type doit être unique pour chaque sonde dans le contexte d’une liste de sondes (SessionProbes). « Vivacité »
« Démarrage »

SessionProbeHttpGet

Nom Descriptif Valeur
host Nom d’hôte à connecter, par défaut à l’adresse IP du pod. Vous souhaitez probablement définir « Host » dans httpHeaders à la place. ficelle
httpHeaders (en-tête http) En-têtes personnalisés à définir dans la requête. HTTP autorise les en-têtes répétés. SessionProbeHttpGetHttpHeadersItem[]
path Chemin d’accès au serveur HTTP. ficelle
port Nom ou numéro du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)
scheme Schéma à utiliser pour la connexion à l’hôte. La valeur par défaut est HTTP. 'HTTP'
'HTTPS'

SessionProbeHttpGetHttpHeadersItem

Nom Descriptif Valeur
nom Nom du champ d’en-tête chaîne (obligatoire)
valeur Valeur du champ d’en-tête chaîne (obligatoire)

SessionProbeTcpSocket

Nom Descriptif Valeur
host Facultatif : nom d’hôte auquel se connecter, par défaut à l’adresse IP du pod. ficelle
port Numéro ou nom du port à accéder au conteneur. Le nombre doit être compris entre 1 et 65535. Le nom doit être un IANA_SVC_NAME. int (obligatoire)

SessionRegistryCredentials

Nom Descriptif Valeur
identité Identité managée à utiliser pour s’authentifier auprès d’Azure Container Registry. Pour les identités affectées par l’utilisateur, utilisez l’ID complet de ressource d’identité affectée par l’utilisateur. Pour les identités affectées par le système, utilisez « système » ficelle
mot de passeSecretRéf Nom du secret qui contient le mot de passe de connexion au Registre ficelle
serveur Serveur de registre de conteneurs. ficelle
nom d'utilisateur Nom d’utilisateur du registre de conteneurs. ficelle

TrackedResourceTags

Nom Descriptif Valeur

UserAssignedIdentities

Nom Descriptif Valeur

userAssignedIdentity

Nom Descriptif Valeur