Plan Premium Azure FunctionsAzure Functions Premium plan

Le plan Azure Functions Premium (parfois appelé plan Elastic Premium) est une option d'hébergement destinée aux applications de fonction.The Azure Functions Premium plan (sometimes referred to as Elastic Premium plan) is a hosting option for function apps. Il présente des avantages tels que la connectivité réseau virtuel, l’absence de démarrage à froid et du matériel de pointe.The Premium plan provides features like VNet connectivity, no cold start, and premium hardware. Plusieurs applications de fonction peuvent être déployées sur le même plan Premium, et celui-ci vous permet de configurer la taille d’instance de calcul, la taille du plan de base et taille maximale de plan.Multiple function apps can be deployed to the same Premium plan, and the plan allows you to configure compute instance size, base plan size, and maximum plan size. Pour une comparaison entre le plan Premium et d’autres types de plans et d’hébergements, voir options de mise à l’échelle et d’hébergement de fonction.For a comparison of the Premium plan and other plan and hosting types, see function scale and hosting options.

Créer un plan PremiumCreate a Premium plan

  1. Dans le menu du portail Azure ou dans la page Accueil, sélectionnez Créer une ressource.From the Azure portal menu or the Home page, select Create a resource.

  2. Dans la page Nouveau, sélectionnez Calcul > Application de fonction.In the New page, select Compute > Function App.

  3. Dans la page De base, utilisez les paramètres d’application de fonction comme indiqué dans le tableau ci-dessous :On the Basics page, use the function app settings as specified in the following table:

    ParamètreSetting Valeur suggéréeSuggested value DescriptionDescription
    AbonnementSubscription Votre abonnementYour subscription Abonnement sous lequel est créée cette nouvelle application de fonction.The subscription under which this new function app is created.
    Groupe de ressourcesResource Group myResourceGroupmyResourceGroup Nom du nouveau groupe de ressources dans lequel créer votre Function App.Name for the new resource group in which to create your function app.
    Nom de l’application de fonctionFunction App name Nom globalement uniqueGlobally unique name Nom qui identifie votre nouvelle Function App.Name that identifies your new function app. Les caractères valides sont a-z (insensible à la casse), 0-9et -.Valid characters are a-z (case insensitive), 0-9, and -.
    PublierPublish CodeCode Option permettant de publier des fichiers de code ou un conteneur Docker.Option to publish code files or a Docker container.
    Pile d’exécutionRuntime stack Langage préféréPreferred language Choisissez un runtime qui prend en charge votre langage de programmation de fonction favori.Choose a runtime that supports your favorite function programming language. Choisissez .NET pour les fonctions C# et F#.Choose .NET for C# and F# functions.
    RégionRegion Région recommandéePreferred region Choisissez une région près de chez vous ou près d’autres services auxquels ont accès vos fonctions.Choose a region near you or near other services your functions access.

    Page De base

  4. Sélectionnez Suivant : Hébergement.Select Next: Hosting. Dans la page Hébergement, entrez les paramètres suivants :On the Hosting page, enter the following settings:

    ParamètreSetting Valeur suggéréeSuggested value DescriptionDescription
    Compte de stockageStorage account Nom globalement uniqueGlobally unique name Créez un compte de stockage utilisé par votre application de fonction.Create a storage account used by your function app. Les noms des comptes de stockage doivent comporter entre 3 et 24 caractères, uniquement des lettres minuscules et des chiffres.Storage account names must be between 3 and 24 characters in length and may contain numbers and lowercase letters only. Vous pouvez également utiliser un compte existant qui doit répondre aux exigences relatives aux comptes de stockage.You can also use an existing account, which must meet the storage account requirements.
    Système d’exploitationOperating system Système d’exploitation préféréPreferred operating system Un système d’exploitation est présélectionné pour vous en fonction de la sélection de votre pile d’exécution, mais vous pouvez modifier le paramètre si nécessaire.An operating system is pre-selected for you based on your runtime stack selection, but you can change the setting if necessary. Python est pris en charge sur Linux uniquement.Python is only supported on Linux.
    PlanPlan PremiumPremium Plan d’hébergement qui définit la façon dont les ressources sont allouées à votre Function App.Hosting plan that defines how resources are allocated to your function app. Sélectionnez Premium.Select Premium. Par défaut, un plan App Service est créé.By default, a new App Service plan is created. Référence et taille est défini avec la valeur par défaut EP1, où EP signifie élastique premium.The default Sku and size is EP1, where EP stands for elastic premium. Pour plus d’informations, consultez la liste des références SKU Premium.To learn more, see the list of Premium SKUs.
    Lorsque vous exécutez des fonctions JavaScript dans un plan Premium, vous devez choisir une instance qui comporte moins de processeurs virtuels.When running JavaScript functions on a Premium plan, you should choose an instance that has fewer vCPUs. Pour plus d’informations, consultez Choisir des plans Premium à un cœur.For more information, see Choose single-core Premium plans.

    Page Hébergement

  5. Sélectionnez Suivant : Supervision.Select Next: Monitoring. Dans la page Supervision, entrez les paramètres suivants :On the Monitoring page, enter the following settings:

    ParamètreSetting Valeur suggéréeSuggested value DescriptionDescription
    Application InsightsApplication Insights DefaultDefault Crée une ressource Application Insights avec le même nom de l’application dans la région prise en charge la plus proche.Creates an Application Insights resource of the same App name in the nearest supported region. En développant ce paramètre, vous pouvez changer le Nouveau nom de ressource ou choisir un autre Emplacement dans une Zone géographique Azure où stocker vos données.By expanding this setting, you can change the New resource name or choose a different Location in an Azure geography to store your data.

    Page Surveillance

  6. Sélectionnez Vérifier + créer pour passer en revue les sélections de configuration d’application.Select Review + create to review the app configuration selections.

  7. Dans la page Vérifier + créer, vérifiez vos paramètres, puis sélectionnez Créer pour provisionner et déployer l’application de fonction.On the Review + create page, review your settings, and then select Create to provision and deploy the function app.

  8. Cliquez sur l’icône Notifications en haut à droite du portail pour voir le message Le déploiement a été effectué.Select the Notifications icon in the upper-right corner of the portal and watch for the Deployment succeeded message.

  9. Sélectionnez Accéder à la ressource pour afficher votre nouvelle application de fonction.Select Go to resource to view your new function app. Vous pouvez également sélectionner Épingler au tableau de bord.You can also select Pin to dashboard. L’épinglage permet de revenir plus facilement à cette ressource d’application de fonction à partir de votre tableau de bord.Pinning makes it easier to return to this function app resource from your dashboard.

    Notification de déploiement

Vous pouvez également créer un plan Premium à l’aide de la commande az functionapp plan create dans Azure CLI.You can also create a Premium plan using az functionapp plan create in the Azure CLI. L’exemple suivant crée un plan de niveau Élastique Premium 1 :The following example creates an Elastic Premium 1 tier plan:

az functionapp plan create --resource-group <RESOURCE_GROUP> --name <PLAN_NAME> \
--location <REGION> --sku EP1

Dans cet exemple, remplacez <RESOURCE_GROUP> par votre groupe de ressources <PLAN_NAME> et par le nom de votre plan, qui doit être unique dans le groupe de ressources.In this example, replace <RESOURCE_GROUP> with your resource group and <PLAN_NAME> with a name for your plan that is unique in the resource group. Spécifiez une <REGION> prise en charge.Specify a supported <REGION>. Pour créer un plan Premium qui prend en charge Linux, ajoutez l’option --is-linux.To create a Premium plan that supports Linux, include the --is-linux option.

Une fois le plan créé, vous pouvez utiliser az functionapp create pour créer votre application de fonction.With the plan created, you can use az functionapp create to create your function app. Dans le portail, le plan et l’application sont créés en même temps.In the portal, both the plan and the app are created at the same time. Pour obtenir un exemple de script Azure CLI complet, consultez Créer une application de fonction sur le plan Premium.For an example of a complete Azure CLI script, see Create a function app in a Premium plan.

FonctionnalitésFeatures

Les fonctionnalités suivantes sont disponibles pour les applications de fonction déployées sur un plan Premium.The following features are available to function apps deployed to a Premium plan.

Instances chauffées au préalablePre-warmed instances

Si aucun événement ou aucune exécution ne se produisent aujourd’hui dans le plan Consommation, il se peut que votre application effectue un scale-in jusqu’à zéro instance.If no events and executions occur today in the Consumption plan, your app may scale in to zero instances. Quand un nouvel événement se produit, une nouvelle instance doit être spécialisée avec votre application s’exécutant sur celle-ci.When new events come in, a new instance needs to be specialized with your app running on it. La spécialisation d’une nouvelle instance peut prendre un certain temps en fonction de l’application.Specializing new instances may take some time depending on the app. Cette latence supplémentaire du premier appel est souvent appelée démarrage à froid d’application.This additional latency on the first call is often called app cold start.

Dans le plan Premium, vous pouvez disposer de votre application chauffée au préalable sur un nombre spécifié d’instances, jusqu’à la taille minimale de votre plan.In the Premium plan, you can have your app pre-warmed on a specified number of instances, up to your minimum plan size. Les instances chauffées au préalable vous permettent également de mettre à l’échelle une application avant une charge élevée.Pre-warmed instances also let you pre-scale an app before high load. Lorsque l’application monte en charge, elle commence par se mettre à l’échelle dans les instances chauffées au préalable.As the app scales out, it first scales into the pre-warmed instances. Des instances supplémentaires continuent de s’ajouter en mémoire tampon et à chauffer immédiatement en vue de la prochaine opération de mise à l’échelle.Additional instances continue to buffer out and warm immediately in preparation for the next scale operation. Le fait de disposer d’un tampon d’instances chauffées au préalable vous permet d’éviter efficacement les latences de démarrage à froid.By having a buffer of pre-warmed instances, you can effectively avoid cold start latencies. Les instances chauffées au préalable caractérisent le plan Premium et vous devez conserver au moins une instance opérationnelle et disponible aussi longtemps que le plan est actif.Pre-warmed instances is a feature of the Premium plan, and you need to keep at least one instance running and available at all times the plan is active.

Vous pouvez configurer le nombre d’instances chauffées au préalable sur le portail Azure en sélectionnant votre Function App, en accédant à l’onglet Fonctionnalités de la plateforme, puis en sélectionnant les options Scale-out.You can configure the number of pre-warmed instances in the Azure portal by selected your Function App, going to the Platform Features tab, and selecting the Scale Out options. Dans la fenêtre d’édition de l’application, les instances chauffées au préalable sont spécifiques de cette application, mais les instances minimale et maximale s’appliquent au plan tout entier.In the function app edit window, pre-warmed instances is specific to that app, but the minimum and maximum instances apply to your entire plan.

Paramètres de mise à l’échelle élastique

Vous pouvez également configurer des instances chauffées au préalable pour une application avec Azure CLI.You can also configure pre-warmed instances for an app with the Azure CLI.

az resource update -g <resource_group> -n <function_app_name>/config/web --set properties.preWarmedInstanceCount=<desired_prewarmed_count> --resource-type Microsoft.Web/sites

Connectivité de réseau privéPrivate network connectivity

Azure Functions déployée sur un plan Premium tire parti de la nouvelle expérience d’intégration de réseau virtuel pour les applications web.Azure Functions deployed to a Premium plan takes advantage of new VNet integration for web apps. Une fois configurée, votre application peut communiquer avec des ressources de votre réseau virtuel ou sécurisées via des points de terminaison de service.When configured, your app can communicate with resources within your VNet or secured via service endpoints. Des restrictions d’adresse IP sont également disponibles sur l’application pour limiter le trafic entrant.IP restrictions are also available on the app to restrict incoming traffic.

Lors de l’attribution d’un sous-réseau à votre Function App dans un plan Premium, vous avez besoin d’un sous-réseau avec suffisamment d’adresses IP pour chaque instance potentielle.When assigning a subnet to your function app in a Premium plan, you need a subnet with enough IP addresses for each potential instance. Nous imposons un bloc d’au moins 100 adresses IP disponibles.We require an IP block with at least 100 available addresses.

Pour plus d’informations, consultez Intégrer votre application de fonction à un réseau virtuel.For more information, see integrate your function app with a VNet.

Mise à l’échelle élastique rapideRapid elastic scale

Des instances de calcul supplémentaires sont automatiquement ajoutées pour votre application en utilisant la même logique de mise à l’échelle rapide que le Plan Consommation.Additional compute instances are automatically added for your app using the same rapid scaling logic as the Consumption plan. Les applications du même plan App Service sont mises à l’échelle indépendamment les unes des autres en fonction des besoins d’une application individuelle.Apps in the same App Service Plan scale independently from one another based on the needs of an individual app. Toutefois, les applications Functions dans le même plan App Service partagent des ressources de machine virtuelle pour aider à réduire les coûts, lorsque cela est possible.However, Functions apps in the same App Service Plan share VM resources to help reduce costs, when possible. Le nombre d’applications associées à une machine virtuelle dépend de l’encombrement de chaque application et de la taille de la machine virtuelle.The number of apps associated with a VM depends on the footprint of each app and the size of the VM.

Pour en savoir plus sur le fonctionnement de la mise à l’échelle, voir Échelle et hébergement dans Azure Functions.To learn more about how scaling works, see Function scale and hosting.

Durée d’exécution plus longueLonger run duration

Azure Functions dans un Plan Consommation est limité à 10 minutes par exécution.Azure Functions in a Consumption plan are limited to 10 minutes for a single execution. Dans le plan Premium, la durée d’exécution par défaut est de 30 minutes pour éviter tout perte de contrôle.In the Premium plan, the run duration defaults to 30 minutes to prevent runaway executions. Cependant, vous pouvez modifier la configuration de host.json afin de rendre son exécution illimitée pour les applications du plan Premium (60 minutes garanties).However, you can modify the host.json configuration to make this unbounded for Premium plan apps (guaranteed 60 minutes).

Paramètres du plan et de la référence SKUPlan and SKU settings

Lorsque vous créez le plan, vous configurez deux paramètres : le nombre minimal d’instances (ou taille du plan) et la limite maximale en rafale.When you create the plan, you configure two settings: the minimum number of instances (or plan size) and the maximum burst limit. Les instances minimales sont réservées et toujours opérationnelles.Minimum instances are reserved and always running.

Important

Vous êtes facturé pour chaque instance allouée en lien avec le nombre minimal d’instances, que les fonctions s’exécutent ou non.You are charged for each instance allocated in the minimum instance count regardless if functions are executing or not.

Si votre application nécessite un nombre d’instances supérieur à la taille de votre plan, elle peut continuer à effectuer un scale-out jusqu’à ce que le nombre d’instances atteigne la limite maximale en rafale.If your app requires instances beyond your plan size, it can continue to scale out until the number of instances hits the maximum burst limit. Vous êtes facturé pour des instances dépassant la taille de votre plan uniquement quand elles sont en cours d’exécution et louées pour vous.You are billed for instances beyond your plan size only while they are running and rented to you. Nous nous efforçons d’augmenter l’échelle votre application jusqu’à la limite maximale définie, tandis que les instances minimales du plan sont garanties pour votre application.We will make a best effort at scaling your app out to its defined maximum limit, whereas the minimum plan instances are guaranteed for your app.

Vous pouvez configurer la taille et les nombres maximaux d’instances du plan via le portail Azure en sélectionnant les options Scale-out du plan ou une Function App déployée sur celui-ci (sous Fonctionnalités de la plateforme).You can configure the plan size and maximums in the Azure portal by selecting the Scale Out options in the plan or a function app deployed to that plan (under Platform Features).

Vous pouvez également augmenter la limite maximale en rafale à partir d’Azure CLI :You can also increase the maximum burst limit from the Azure CLI:

az resource update -g <resource_group> -n <premium_plan_name> --set properties.maximumElasticWorkerCount=<desired_max_burst> --resource-type Microsoft.Web/serverfarms 

Références SKU d’instance disponiblesAvailable instance SKUs

Pendant la création ou la mise à l’échelle de votre plan, vous pouvez choisir entre trois tailles d’instance.When creating or scaling your plan, you can choose between three instance sizes. Vous êtes facturé pour le nombre total de cœurs et la mémoire consommés par seconde.You will be billed for the total number of cores and memory consumed per second. Votre application peut automatiquement effectuer un scale-out sur plusieurs instances en fonction des besoins.Your app can automatically scale out to multiple instances as needed.

SKUSKU CœursCores MémoireMemory StockageStorage
EP1EP1 11 3,5 GO3.5GB 250 Go250GB
EP2EP2 22 7 GO7GB 250 Go250GB
EP3EP3 44 14 GO14GB 250 Go250GB

Considérations sur l’utilisation de la mémoireMemory utilization considerations

L’exécution sur une machine avec davantage de mémoire ne signifie pas toujours que votre application de fonction va utiliser toute la mémoire disponible.Running on a machine with more memory does not always mean that your function app will use all available memory.

Par exemple, une application de fonction JavaScript est contrainte par la limite de mémoire par défaut dans Node.js.For example, a JavaScript function app is constrained by the default memory limit in Node.js. Pour augmenter cette limite de mémoire fixe, ajoutez le paramètre d’application languageWorkers:node:arguments avec la valeur --max-old-space-size=<max memory in MB>.To increase this fixed memory limit, add the app setting languageWorkers:node:arguments with a value of --max-old-space-size=<max memory in MB>.

Scale-out maximal par régionRegion Max Scale Out

Vous trouverez ci-dessous les valeurs maximales de scale-out actuellement prises en charge pour un même plan dans chaque région et configuration de système d’exploitation.Below are the currently supported maximum scale out values for a single plan in each region and OS configuration. Pour demander une augmentation, ouvrez un ticket de support.To request an increase please open a support ticket.

La disponibilité régionale complète de Functions est indiquée ici : Azure.comSee the complete regional availability of Functions here: Azure.com

RégionRegion WindowsWindows LinuxLinux
Centre de l’AustralieAustralia Central 2020 Non disponibleNot Available
Centre de l’Australie 2Australia Central 2 2020 Non disponibleNot Available
Australie EstAustralia East 100100 2020
Sud-Australie EstAustralia Southeast 100100 2020
Brésil SudBrazil South 6060 2020
Centre du CanadaCanada Central 100100 2020
USA CentreCentral US 100100 2020
Asie EstEast Asia 100100 2020
USA EstEast US 100100 2020
USA Est 2East US 2 100100 2020
France CentreFrance Central 100100 2020
Allemagne Centre-OuestGermany West Central 100100 Non disponibleNot Available
Japon EstJapan East 100100 2020
OuJapon EstJapan West 100100 2020
Centre de la CoréeKorea Central 100100 2020
Centre-Nord des États-UnisNorth Central US 100100 2020
Europe NordNorth Europe 100100 2020
Norvège EstNorway East 2020 2020
États-Unis - partie centrale méridionaleSouth Central US 100100 2020
Inde SudSouth India 100100 Non disponibleNot Available
Asie Sud-EstSoutheast Asia 100100 2020
Sud du Royaume-UniUK South 100100 2020
Ouest du Royaume-UniUK West 100100 2020
Europe OuestWest Europe 100100 2020
Inde OuestWest India 100100 2020
Centre-USA OuestWest Central US 2020 2020
USA OuestWest US 100100 2020
USA Ouest 2West US 2 100100 2020

Étapes suivantesNext steps