Informations de référence sur l’API Vertical Pod Autoscaler
Article
Cet article fournit les informations de référence d’API de la fonctionnalité de mise à l’échelle automatique verticale de pod d’Azure Kubernetes Service.
Ces informations de référence sont basée sur la version 0.13.0 de l’implémentation AKS de VPA.
Comportement souhaité de l’utilitaire de mise à l’échelle automatique verticale de pod.
statut
VerticalPodAutoscalerStatus
Dernier état observé de l’utilitaire de mise à l’échelle automatique verticale de pod.
VerticalPodAutoscalerSpec
Nom
Object
Description
targetRef
CrossVersionObjectReference
Référence au contrôleur qui gère l’ensemble de pods que doit contrôler l’utilitaire de mise à l’échelle automatique. Par exemple, un déploiement ou un StatefulSet. Vous pouvez faire pointer un utilitaire de mise à l’échelle automatique verticale de pod sur n’importe quel contrôleur qui a une sous-ressource Scale. En règle générale, l’utilitaire de mise à l’échelle automatique verticale de pod récupère l’ensemble de pods à partir du ScaleStatus du contrôleur.
updatePolicy
PodUpdatePolicy
Spécifie si les mises à jour recommandées sont appliquées quand un pod est démarré et pendant la durée de vie d’un pod.
resourcePolicy
PodResourcePolicy
Spécifie des stratégies pour indiquer comment les demandes de processeur et de mémoire sont ajustées pour les conteneurs individuels. La stratégie de ressource peut être utilisée pour définir des contraintes sur les recommandations des conteneurs individuels. Si non spécifié, l’utilitaire de mise à l’échelle automatique calcule les ressources recommandées pour tous les conteneurs du pod, sans contraintes supplémentaires.
recommenders
VerticalPodAutoscalerRecommenderSelector
L’élément recommender est chargé de généré la recommandation pour l’objet VPA. Laissez le champ vide pour utiliser l’élément recommender par défaut. Sinon, la liste peut contenir exactement une entrée pour un autre élément recommender fourni par l’utilisateur.
Chaîne qui spécifie si les mises à jour recommandées sont appliquées quand un pod est démarré et pendant la durée de vie d’un pod. Les valeurs possibles sont Off, Initial, Recreate et Auto. La valeur par défaut est Auto si vous ne spécifiez pas de valeur.
minReplicas
int32
Valeur représentant le nombre minimal de réplicas qui doivent être actifs pour que l’utilitaire de mise à jour tente l’éviction du pod (en attente d’autres vérifications comme le budget d’interruption de pod). Seules les valeurs positives sont autorisées. La valeur par défaut est l’indicateur --min-replicas global, qui est défini sur 2.
PodResourcePolicy
Nom
Object
Description
conainerPolicies
ContainerResourcePolicy
Tableau de stratégies de ressource pour des conteneurs individuels. Il peut y avoir au maximum une entrée pour chaque conteneur nommé, et éventuellement une seule entrée générique avec containerName = '*', qui gère tous les conteneurs qui n’ont pas de stratégies individuelles.
ContainerResourcePolicy
Nom
Object
Description
containerName
string
Chaîne qui spécifie le nom du conteneur auquel la stratégie s’applique. Si non spécifiée, la stratégie sert de stratégie par défaut.
mode
ContainerScalingMode
Spécifie si les mises à jour recommandées sont appliquées au conteneur quand il est démarré et pendant la durée de vie du conteneur. Les valeurs possibles sont Off et Auto. La valeur par défaut est Auto si vous ne spécifiez pas de valeur.
minAllowed
ResourceList
Spécifie les demandes minimales de processeur et de mémoire autorisées pour le conteneur. Par défaut, aucun minimum n’est appliqué.
maxAllowed
ResourceList
Spécifie les demandes maximales de processeur et de mémoire autorisées pour le conteneur. Par défaut, aucun maximum n’est appliqué.
ControlledResources
[]ResourceName
Spécifie le type de recommandations qui sont calculées (et éventuellement appliquées) par l’utilitaire de mise à l’échelle automatique verticale de pod. Si vide, la valeur par défaut de [ResourceCPU, ResourceMemory] est utilisée.
VerticalPodAutoscalerRecommenderSelector
Nom
Object
Description
name
chaîne
Chaîne qui spécifie le nom de l’élément recommender chargé de généré la recommandation pour cet objet.
VerticalPodAutoscalerStatus
Nom
Object
Description
recommandation
RecommendedPodResources
Dernières demandes de processeur et de mémoire recommandées.
conditions
VerticalPodAutoscalerCondition
Tableau qui décrit l’état actuel de l’utilitaire de mise à l’échelle automatique verticale de pod.
RecommendedPodResources
Nom
Object
Description
containerRecommendation
RecommendedContainerResources
Tableau de recommandations de ressource pour des conteneurs individuels.
RecommendedContainerResources
Nom
Object
Description
containerName
string
Chaîne qui spécifie le nom du conteneur auquel la recommandation s’applique.
cible
ResourceList
Demandes de processeur et de mémoire recommandées pour le conteneur.
lowerBound
ResourceList
Demandes minimales de processeur et de mémoire recommandées pour le conteneur. Cette quantité n’est pas forcément suffisante pour que l’application soit stable. L’exécution avec des demandes de processeur et de mémoire plus petites est susceptible d’avoir un impact significatif sur les performances ou la disponibilité.
upperBound
ResourceList
Demandes maximales de processeur et de mémoire recommandées pour le conteneur. Un nombre de demandes de processeur et de mémoire supérieur à ces valeurs est susceptible d’être gaspillé.
uncappedTarget
ResourceList
Dernière recommandation de ressource calculée par l’utilitaire de mise à l’échelle automatique, en fonction de l’utilisation réelle des ressources, sans tenir compte de la stratégie de ressource du conteneur. Si l’utilisation réelle des ressources oblige la cible à aller à l’encontre de la stratégie de ressource du conteneur, cela peut être différent de la recommandation limitée. Ce champ n’affecte pas l’attribution réelle des ressources. Il est utilisé uniquement pour indiquer l’état.
VerticalPodAutoscalerCondition
Nom
Object
Description
type
VerticalPodAutoscalerConditionType
Type de condition décrit. Les valeurs possibles sont RecommendationProvided, LowConfidence, NoPodsMatched et FetchingHistory.
statut
ConditionStatus
État de la condition. Les valeurs possibles sont True, False et Unknown.
lastTransitionTime
Temps
Dernière fois que la condition est passée d’un état à l’autre.
reason
string
Raison du dernier passage d’un état à l’autre.
message
string
Chaîne lisible par l’homme qui fournit des détails sur le dernier passage d’un état à l’autre.
La source de ce contenu se trouve sur GitHub, où vous pouvez également créer et examiner les problèmes et les demandes de tirage. Pour plus d’informations, consultez notre guide du contributeur.