Le pool de ressources élastiques est une stratégie hybride de planification des ressources au niveau du service, fournie par EAS. Il permet aux services déployés dans un groupe de ressources dédié de « déborder » automatiquement vers un groupe de ressources public en paiement à l'utilisation lors des pics de trafic, lorsque les ressources dédiées sont insuffisantes. Cette fonctionnalité garantit que votre service conserve sa capacité de mise à l'échelle élastique.
Avantages
Dépasser les limites de capacité des groupes de ressources : Lorsque les ressources du groupe de ressources dédié viennent à manquer, la montée en charge du service utilise automatiquement des instances à la demande issues du pool de ressources public. Ainsi, la mise à l'échelle horizontale automatique (basée sur des métriques telles que les QPS ou l'utilisation du CPU) n'est plus limitée par le nombre de nœuds physiques disponibles dans le groupe de ressources dédié.
Optimiser les coûts : Utilisez des ressources par abonnement peu coûteuses pour gérer le trafic de base et ne consommez des ressources à la demande que pendant les périodes de pointe. Cette approche évite de maintenir à long terme des ressources dédiées excédentaires uniquement pour couvrir les pics de charge, ce qui réduit le coût global des ressources.
Fonctionnement
Le pool de ressources élastiques applique un ordre de priorité clair lors de la planification afin d'équilibrer coûts et stabilité.
-
Montée en charge (Scale-out)
Lorsqu'un service déclenche une montée en charge, le planificateur EAS tente d'abord de créer de nouvelles instances au sein du groupe de ressources dédié associé au service.
Si le groupe de ressources dédié ne dispose pas de ressources suffisantes (par exemple, aucun nœud disponible ou insuffisance de CPU, de mémoire ou de GPU), le planificateur crée les nouvelles instances dans le groupe de ressources public en utilisant la spécification de ressource (type d'instance) que vous avez définie lors de la configuration du pool de ressources élastiques.
-
Descente en charge (Scale-in)
Lorsqu'un service déclenche une descente en charge, le système sélectionne et arrête en priorité les instances s'exécutant dans le groupe de ressources public.
Le système ne commence à réduire les instances du groupe de ressources dédié qu'une fois toutes les instances élastiques du groupe de ressources public supprimées. Cette logique garantit la libération prioritaire des ressources élastiques, plus coûteuses, tout en conservant les instances de base, plus stables.
Prérequis
Vous avez créé un groupe de ressources dédié. Pour plus d'informations, consultez la rubrique Utiliser les groupes de ressources EAS.
Méthodes de configuration
Activer le pool de ressources élastiques lors du déploiement du service
Configuration via la console
Connectez-vous à la PAI console. Sélectionnez une région en haut de la page. Choisissez ensuite l'espace de travail souhaité et cliquez sur Enter Elastic Algorithm Service (EAS).
Cliquez sur Deploy Service. Dans la section Inference Service, cliquez sur Custom Deployment située dans la section Custom Model Deployment.
-
Sur la page Custom Deployment, accédez à la section Resource Information et configurez les paramètres clés suivants. Pour les autres paramètres, reportez-vous à la rubrique Déploiement personnalisé.
Paramètre
Description
Resource Type
Sélectionnez EAS Resource Group.
Resource Group
Sélectionnez un groupe de ressources dédié existant.
Elastic Resource Pool
Activez l'option Elastic Resource Pool et sélectionnez une Resource Specification.
Une fois le pool de ressources élastiques configuré, si les ressources machine deviennent insuffisantes lors d'une montée en charge, les nouvelles instances démarrent automatiquement sur les ressources publiques en paiement à l'utilisation configurées et sont facturées au titre du groupe de ressources public. Lors d'une descente en charge, les instances du groupe de ressources public sont réduites en priorité.
Cliquez sur Deploy.
Configuration JSON
Les paramètres clés permettant d'activer le pool de ressources élastiques sont listés ci-dessous. Pour les autres paramètres, consultez la rubrique Déploiement JSON.
resource_burstable : Définissez cette valeur sur
truepour activer le pool de ressources élastiques.-
cloud.networking : Afin de garantir la disponibilité du réseau lors de la mise à l'échelle élastique, configurez le VPC (Virtual Private Cloud) du service à l'aide de ce champ lorsque vous activez le pool de ressources élastiques.
ImportantLorsque vous utilisez un groupe de ressources dédié, vous pouvez configurer un VPC au niveau du groupe de ressources, mais la configuration du groupe de ressources dédié lui-même ne peut se faire qu'au niveau du service (via le champ cloud.networking).
cloud.computing : Spécifie les types d'instances disponibles pour la montée en charge vers les ressources publiques. Pour plus d'informations, consultez la rubrique Utiliser les ressources publiques.
L'exemple suivant présente un fichier de configuration JSON.
{
"model_path": "http://examplebucket.oss-cn-shanghai.aliyuncs.com/models/lr.pmml",
"name": "test_burstable_service",
"processor": "pmml",
"metadata": {
"instance": 1,
"cpu": 1,
"resource": "eas-r-xxx",
"resource_burstable": true
},
"cloud": {
"computing": {
"instance_type": "ecs.r7.2xlarge"
},
"networking": {
"security_group_id": "sg-uf68iou5an8j7sxd****",
"vswitch_id": "vsw-uf6nji7pzztuoe9i7****"
}
}
}
Activer ou désactiver le pool de ressources élastiques après le déploiement du service
Via la console
Connectez-vous à la PAI console. Sélectionnez une région en haut de la page. Choisissez ensuite l'espace de travail souhaité et cliquez sur Enter Elastic Algorithm Service (EAS).
Cliquez sur Update dans la colonne Actions correspondant à votre service déployé.
-
Sur la page Update Service, accédez à la section Resource Information pour activer ou désactiver la mise à l'échelle élastique.
-
Activer la mise à l'échelle élastique
Dans la section Resource Information, activez l'option Elastic Resource Pool et configurez la spécification du groupe de ressources public.
-
Désactiver la mise à l'échelle élastique
Dans la section Resource Information, désactivez l'option Elastic Resource Pool.
-
Cliquez sur Update.
Via un client local
Exécutez les commandes suivantes pour activer ou désactiver rapidement la mise à l'échelle automatique d'un service déjà déployé. L'exemple utilise la version Windows 64 bits :
Si vous n'avez pas configuré le paramètre cloud.networking lors du déploiement du service dans un groupe de ressources dédié, les instances montées en charge vers le groupe de ressources public ne prendront pas en charge la connectivité réseau directe après l'activation de la mise à l'échelle automatique.
# Enable auto scaling for service resources.
eascmdwin64.exe modify <service_name> -Dmetadata.resource_burstable=true
# Disable auto scaling for service resources.
eascmdwin64.exe modify <service_name> -Dmetadata.resource_burstable=false
Remplacez <service_name> par le nom de votre service déployé.
L'activation ou la désactivation de la mise à l'échelle automatique affecte uniquement les nouvelles instances de service créées. Les instances existantes ne sont pas migrées automatiquement. Par exemple, si deux instances sont en attente lors de la fin d'une montée en charge, l'activation ultérieure de la mise à l'échelle automatique ne déplacera pas ces instances en attente vers le groupe de ressources public. Vous pouvez les redémarrer via la console afin qu'elles soient replanifiées sur les ressources publiques. De même, si vous désactivez la mise à l'échelle automatique pour un service dont certaines instances s'exécutent déjà dans des ressources publiques, ces instances ne retourneront pas automatiquement dans le groupe de ressources dédié.
Références
Activez la mise à l'échelle horizontale automatique pour permettre au système de s'adapter automatiquement en fonction des métriques configurées. Pour plus d'informations, consultez la rubrique Mise à l'échelle horizontale automatique.
Pour ajuster automatiquement le nombre de réplicas à une valeur spécifique selon un planning défini, consultez la rubrique Mise à l'échelle automatique planifiée.