Outil de redimensionnement automatique de cluster
Lorsque vous activez l'extension Cluster Autoscaler, vous pouvez transmettre les paires clé/valeur suivantes en tant qu'arguments.
| Clé (API et CLI) | Nom d'affichage de la clé (console) | Description | Obligatoire/Facultatif | Valeur par défaut | Exemple de valeur |
|---|---|---|---|---|---|
affinity |
affinité |
Groupe de règles de programmation d'affinité. Format JSON en texte brut ou encodé Base64. |
Facultatif | NULL | NULL |
nodeSelectors |
Sélecteurs de noeud |
Vous pouvez utiliser des sélecteurs de noeud et des libellés de noeud pour contrôler les noeuds de processus actif sur lesquels les pods d'extension sont exécutés. Pour qu'un pod s'exécute sur un noeud, le sélecteur de noeud du pod doit avoir la même clé/valeur que l'étiquette du noeud. Définissez Format JSON en texte brut ou encodé Base64. |
Facultatif | NULL | {"foo":"bar", "foo2": "bar2"}Le pod s'exécutera uniquement sur les noeuds possédant le libellé |
numOfReplicas |
numOfReplicas | Nombre de répliques du déploiement de l'extension. (Pour CoreDNS, utilisez plutôt |
Requis | 1Crée une réplique du déploiement d'extension par cluster. |
2Crée deux répliques du déploiement d'extension par cluster. |
rollingUpdate |
rollingUpdate |
Contrôle le comportement souhaité de la mise à jour non simultanée par maxSurge et maxUnavailable. Format JSON en texte brut ou encodé Base64. |
Facultatif | NULL | NULL |
tolerations |
tolérances |
Vous pouvez utiliser des tolérances et des taches pour contrôler les noeuds de processus actif sur lesquels les pods d'extension s'exécutent. Pour qu'un pod s'exécute sur un noeud présentant une entorse, le pod doit avoir une tolérance correspondante. Définissez Format JSON en texte brut ou encodé Base64. |
Facultatif | NULL | [{"key":"tolerationKeyFoo", "value":"tolerationValBar", "effect":"noSchedule", "operator":"exists"}]Seuls les pods présentant cette tolérance peuvent être exécutés sur des noeuds de processus actif présentant la tache |
topologySpreadConstraints |
topologySpreadConstraints |
Comment répartir les pods correspondants entre la topologie donnée. Format JSON en texte brut ou encodé Base64. |
Facultatif | NULL | NULL |
| Clé (API et CLI) | Nom d'affichage de la clé (console) | Description | Obligatoire/Facultatif | Valeur par défaut | Exemple de valeur |
|---|---|---|---|---|---|
| annotations | annotations |
Annotations à transmettre au déploiement de l'outil de redimensionnement automatique de cluster. Par exemple, Format JSON en texte brut ou encodé Base64. |
Facultatif | "" | |
| authType | authType | Le type d'authentification utilisé par l'outil de redimensionnement automatique de cluster lors de l'envoi de demandes est l'un des suivants :
|
Requis |
instance
|
|
| balanceSimilarNodeGroups | balanceSimilarNodeGroups | Détecter les groupes de noeuds similaires et équilibrer le nombre de noeuds entre eux. | Facultatif |
false
|
|
| balancingIgnoreLabel | balancingIgnoreLabel | Définissez un libellé de noeud qui doit être ignoré lors de la prise en compte de la similarité des groupes de noeuds. Un libellé par occurrence d'indicateur. Le format est label1, label2. |
Facultatif | "" | |
| balancingLabel | balancingLabel | Définissez un libellé de noeud à utiliser lors de la comparaison de la similarité des groupes de noeuds. Si elle est définie, toutes les autres logiques de comparaison sont désactivées et seuls les libellés sont pris en compte lors de la comparaison des groupes. Un libellé par occurrence d'indicateur. Le format est label1, label2. |
Facultatif | "" | |
| cluster-autoscaler.ContainerResources | ressources de conteneur cluster-autoscaler |
Vous pouvez spécifier les quantités de ressources demandées par les conteneurs d'extension et définir les limites d'utilisation des ressources que les conteneurs d'extension ne peuvent pas dépasser. Format JSON en texte brut ou encodé Base64. |
Facultatif | NULL |
{"limits": {"cpu": "500m", "memory": "200Mi" }, "requests": {"cpu": "100m", "memory": "100Mi"}}
Créez des conteneurs d'extension qui demandent 100 milllicores de CPU et 100 mégaoctets de mémoire. Limitez les conteneurs d'extension à 500 milllicores de CPU et 200 mégaoctets de mémoire. |
| cordonNodeBeforeTerminating | (Non affiché dans la console) | Nœuds de cordon d'autorité de certification avant la terminaison lors du processus de mise à l'échelle. | Facultatif |
false
|
|
| coresTotal | (Non affiché dans la console) | Nombre minimal et maximal de coeurs dans le cluster, au format <min>:<max>. L'outil de redimensionnement automatique de cluster ne redimensionnera pas le cluster au-delà de ces chiffres. |
Facultatif |
0:320000
|
|
| daemonsetEvictionForEmptyNodes | (Non affiché dans la console) | Indique si les pods DaemonSet seront arrêtés progressivement à partir de noeuds vides. | Facultatif |
false
|
|
| daemonsetEvictionForOccupiedNodes | (Non affiché dans la console) | Indique si les pods DaemonSet seront arrêtés progressivement à partir de noeuds non vides. | Facultatif |
true
|
|
| debuggingSnapshotEnabled | (Non affiché dans la console) | Indique si le cliché de débogage de la fonction de redimensionnement automatique de cluster est activé. | Facultatif |
false
|
|
| emitPerNodegroupMetrics | (Non affiché dans la console) | Si la valeur est True, émettez des mesures par groupe de noeuds. | Facultatif |
false
|
|
| enforceNodeGroupMinSize | (Non affiché dans la console) | L'autorité de certification doit-elle augmenter le groupe de noeuds à la taille minimale configurée si nécessaire ? | Facultatif |
false
|
|
| estimator | (Non affiché dans la console) | Type d'estimateur de ressource à utiliser pour l'augmentation. | Facultatif |
binpacking
|
|
| expander | expandeur | Type d'expandeur de groupe de noeuds à utiliser pour l'augmentation.
|
Facultatif |
random
|
|
| expendablePodsPriorityCutoff | (Non affiché dans la console) | Les pods dont la priorité est inférieure à la limite seront consommables. Ils peuvent être tués sans aucune considération pendant l'échelle et ils ne provoquent pas l'échelle. Les pods avec une priorité NULL (PodPriority désactivé) ne sont pas durables. | Facultatif |
-10
|
|
| ignoreDaemonsetsUtilization | (Non affiché dans la console) | Indique si les pods DaemonSet seront ignorés lors du calcul de l'utilisation des ressources pour le redimensionnement. | Facultatif |
false
|
|
| ignoreMirrorPodsUtilization | (Non affiché dans la console) | Indique si les pods miroir seront ignorés lors du calcul de l'utilisation des ressources pour la réduction. | Facultatif |
false
|
|
| leaderElect | (Non affiché dans la console) | Commencez un client d'élection de leader et obtenez le leadership avant d'exécuter la boucle principale. Activez cette option lorsque vous exécutez des composants répliqués à des fins de haute disponibilité. | Facultatif |
true
|
|
| leaderElectLeaseDuration | (Non affiché dans la console) | La durée que les candidats non-dirigeants attendent après avoir observé un renouvellement du leadership jusqu'à ce qu'ils tentent d'acquérir le leadership d'un créneau de leader dirigé mais non renouvelé. Il s'agit de la durée maximale pendant laquelle un leader peut être arrêté avant d'être remplacé par un autre candidat. Cela ne s'applique que si l'élection de leader est activée. | Facultatif |
15s
|
|
| leaderElectRenewDeadline | (Non affiché dans la console) | Intervalle entre les tentatives de l'outil de redimensionnement automatique de cluster actif de renouveler un créneau de direction avant qu'il ne cesse de prendre la tête. Cette valeur doit être inférieure ou égale à la durée de la location. Cela ne s'applique que si l'élection de leader est activée. | Facultatif |
10s
|
|
| leaderElectResourceLock | (Non affiché dans la console) | Type d'objet de ressource utilisé pour le verrouillage lors de l'élection de leader. Les options prises en charge sont leases (par défaut), endpoints, endpointsleases, configmaps et configmapsleases. |
Facultatif |
leases
|
|
| leaderElectRetryPeriod | (Non affiché dans la console) | La durée que les clients doivent attendre entre la tentative d'acquisition et le renouvellement d'un leadership. Cela ne s'applique que si l'élection de leader est activée. | Facultatif |
2s
|
|
| maxAutoprovisionedNodeGroupCount | (Non affiché dans la console) | Nombre maximal de groupes provisionnés automatiquement dans le cluster. | Facultatif |
15
|
|
| maxEmptyBulkDelete | maxEmptyBulkDelete | Nombre maximal de noeuds vides pouvant être supprimés en même temps. | Facultatif |
10
|
|
| maxFailingTime | (Non affiché dans la console) | Durée maximale de la dernière exécution de l'outil de redimensionnement automatique enregistrée avant le redémarrage automatique. | Facultatif |
15m
|
|
| maxGracefulTerminationSec | (Non affiché dans la console) | Nombre maximal de secondes pendant lesquelles l'autorité de certification attend l'arrêt du pod lors de la tentative de réduction d'un noeud. | Facultatif |
600
|
|
| maxInactivity | (Non affiché dans la console) | Durée maximale à partir de la dernière activité de l'outil de redimensionnement automatique enregistrée avant le redémarrage automatique. | Facultatif |
10m
|
|
| maxNodeProvisionTime | maxNodeProvisionTime | Durée maximale pendant laquelle l'autorité de certification attend que le noeud soit provisionné. | Facultatif |
15m
|
|
| maxNodesTotal | (Non affiché dans la console) | Nombre maximal de noeuds dans tous les pools de noeuds. L'outil de redimensionnement automatique de cluster n'augmentera pas le cluster au-delà de ce nombre. | Facultatif |
0
|
|
| maxTotalUnreadyPercentage | (Non affiché dans la console) | Pourcentage maximal de noeuds non prêts dans le cluster. Après ce dépassement, l'autorité de certification arrête les opérations. | Facultatif |
45
|
|
| memoryTotal | (Non affiché dans la console) | Nombre minimal et maximal de gigaoctets de mémoire dans le cluster, au format <min>:<max>. L'outil de redimensionnement automatique de cluster ne redimensionnera pas le cluster au-delà de ces chiffres. |
Facultatif |
0:6400000
|
|
| minReplicaCount | (Non affiché dans la console) | Nombre minimal de répliques qu'un jeu de répliques ou un contrôleur de réplication doit avoir pour autoriser la suppression de leurs pods. | Facultatif |
0
|
|
| nodes | noeuds |
Liste des noeuds minimum, nombre maximum de noeuds et OCID du pool de noeuds à gérer par l'outil de redimensionnement automatique de cluster. Le format est Utilisez Format JSON en texte brut ou encodé Base64. |
Obligatoire, si nodeGroupAutoDiscovery n'est pas défini |
"" | |
| nodeGroupAutoDiscovery | (Non affiché dans la console) |
Liste des paires clé/valeur de balise, nombre minimal de noeuds, nombre maximal de noeuds et OCID du compartiment dans lequel se trouve le pool de noeuds à gérer par l'outil de redimensionnement automatique de cluster. Le format est Utilisez Prise en charge avec Cluster Autoscaler version 1.30.3, version 1.31.1 et version 1.32.0, et versions ultérieures. Format JSON en texte brut ou encodé Base64. |
Obligatoire, si nodes n'est pas défini |
||
| okTotalUnreadyCount | (Non affiché dans la console) | Nombre de noeuds non prêts autorisés, quel que soit maxTotalUnreadyPercentage. |
Facultatif |
3
|
|
| recordDuplicatedEvents | (Non affiché dans la console) | Activez l'outil de redimensionnement automatique pour imprimer les événements en double dans une fenêtre de 5 minutes. | Facultatif |
false
|
|
| scaleDownCandidatesPoolMinCount | (Non affiché dans la console) |
Nombre minimal de noeuds considérés comme des candidats supplémentaires non vides pour la réduction lorsque certains candidats de l'itération précédente ne sont plus valides. Lors du calcul de la taille du pool pour les candidats supplémentaires, nous prenons.
|
Requis |
50
|
|
| scaleDownCandidatesPoolRatio | (Non affiché dans la console) | Ratio de noeuds considérés comme des candidats supplémentaires non vides pour la réduction lorsque certains candidats de l'itération précédente ne sont plus valides. Une valeur inférieure signifie une meilleure réactivité de l'autorité de certification, mais une latence de réduction plus lente possible. Une valeur plus élevée peut affecter les performances des CA avec des clusters volumineux (centaines de noeuds). Définissez la valeur sur 1.0 pour désactiver cette heuristique - CA prendra tous les noeuds en tant que candidats supplémentaires. | Requis |
0.1
|
|
| scaleDownDelayAfterAdd | scaleDownDelayAfterAdd | Combien de temps après l'augmentation de cette réduction, l'évaluation reprend. | Requis |
10m
|
|
| scaleDownDelayAfterDelete | (Non affiché dans la console) | Combien de temps après la suppression du noeud qui réduit l'évaluation reprend, la valeur par défaut est scan-interval. | Requis |
10s
|
|
| scaleDownDelayAfterFailure | (Non affiché dans la console) | Durée après laquelle l'échec du redimensionnement reprend. | Requis |
3m
|
|
| scaleDownEnabled | scaleDownEnabled | Le CA doit-il réduire le cluster ? | Facultatif |
true
|
|
| scaleDownNonEmptyCandidatesCount | (Non affiché dans la console) | Nombre maximal de noeuds non vides considérés dans une itération comme candidats pour le redimensionnement avec purge. Une valeur inférieure signifie une meilleure réactivité de l'autorité de certification, mais une latence de réduction plus lente possible. Une valeur plus élevée peut affecter les performances des CA avec des clusters volumineux (centaines de noeuds). Définir sur une valeur non positive pour désactiver cette heuristique - L'autorité de certification ne limitera pas le nombre de noeuds qu'elle considère. | Requis |
30
|
|
| scaleDownUnneededTime | scaleDownUnneededTime | Durée pendant laquelle un noeud ne doit pas être utilisé avant d'être éligible à la réduction. | Requis |
10m
|
|
| scaleDownUnreadyTime | (Non affiché dans la console) | Durée pendant laquelle un noeud non prêt doit être inutile pour pouvoir être réduit. | Requis |
20m
|
|
| scaleDownUtilizationThreshold | (Non affiché dans la console) | Niveau d'utilisation du noeud, défini comme la somme des ressources demandées divisée par la capacité, au-dessous duquel un noeud peut être pris en compte pour la réduction. | Requis |
0.5
|
|
| scanInterval | scanInterval | Fréquence à laquelle le cluster est réévalué pour l'augmentation ou la réduction. | Facultatif |
10s
|
|
| skipNodesWithCustomControllerPods | (Non affiché dans la console) | Si la valeur est true, l'outil de redimensionnement automatique de cluster ne supprimera jamais les noeuds dont les pods appartiennent à des contrôleurs personnalisés. |
Facultatif |
true
|
|
| skipNodesWithLocalStorage | (Non affiché dans la console) | Si true, l'outil de redimensionnement automatique de cluster ne supprimera jamais les noeuds avec des pods avec un stockage local, par exemple EmptyDir ou HostPath. |
Facultatif |
true
|
|
| skipNodesWithSystemPods | (Non affiché dans la console) | Si true, l'outil de redimensionnement automatique de cluster ne supprimera jamais les noeuds contenant des pods du kube-system (à l'exception de DaemonSet ou des pods miroir).
|
Facultatif |
true
|
|
| statusConfigMapName | (Non affiché dans la console) | Nom du statut ConfigMap écrit par l'autorité de certification. | Facultatif |
cluster-autoscaler-status
|
|
| stderrthreshold | (Non affiché dans la console) | Seuil de gravité du journal, au-delà duquel les journaux sont envoyés à stderr. Par exemple, si vous définissez cette valeur sur error, tous les journaux dont la gravité est supérieure à error sont envoyés à stderr. |
Facultatif |
info
|
|
| unremovableNodeRecheckTimeout | unremovableNodeRecheckTimeout | Délai d'expiration avant vérification d'un noeud qui n'a pas pu être enlevé auparavant. | Requis |
5m
|
|
| v | (Non affiché dans la console) | Numéro de niveau de détail de la journalisation. | Facultatif |
0
|
|
| writeStatusConfigmap | (Non affiché dans la console) | L'autorité de certification doit-elle écrire des informations de statut dans un configmap ? | Facultatif |
true
|