Partilhar via


Referência da API do Vertical Pod Autoscaler

Este artigo fornece a referência de API para o recurso Vertical Pod Autoscaler do Serviço Kubernetes do Azure.

Esta referência é baseada na versão 0.13.0 da implementação AKS do VPA.

VerticalPodAutoscaler

Nome Objeto Description
do IdP ObjectMeta Metadados de objeto padrão.
spec VerticalPodAutoscalerSpec O comportamento desejado do Vertical Pod Autoscaler.
status VerticalPodAutoscalerStatus O estado mais recentemente observado do Vertical Pod Autoscaler.

VerticalPodAutoscalerSpec

Nome Objeto Description
targetRef CrossVersionObjectReference Referência ao controlador que gerencia o conjunto de pods para o autoscaler controlar. Por exemplo, um Deployment ou um StatefulSet. Você pode apontar um Vertical Pod Autoscaler para qualquer controlador que tenha um subrecurso Scale . Normalmente, o Vertical Pod Autoscaler recupera o conjunto de pods do ScaleStatus do controlador.
updatePolicy PodUpdatePolicy Especifica se as atualizações recomendadas são aplicadas quando um pod é iniciado e se as atualizações recomendadas são aplicadas durante a vida útil de um pod.
resourcePolicy PodResourcePolicy Especifica políticas para como as solicitações de CPU e memória são ajustadas para contêineres individuais. A política de recursos pode ser usada para definir restrições nas recomendações para contêineres individuais. Se não for especificado, o autoscaler calcula os recursos recomendados para todos os contêineres no pod, sem restrições adicionais.
Recomendações VerticalPodAutoscalerRecommenderSelector O recomendador é responsável por gerar a recomendação para o objeto VPA. Deixe em branco para usar o recomendado padrão. Caso contrário, a lista pode conter exatamente uma entrada para um recomendado alternativo fornecido pelo usuário.

VerticalPodAutoscalerList

Nome Objeto Description
do IdP ObjectMeta Metadados de objeto padrão.
itens VerticalPodAutoscaler (matriz) Uma lista de objetos Vertical Pod Autoscaler.

PodUpdatePolicy

Nome Objeto Description
updateMode string Uma cadeia de caracteres que especifica se as atualizações recomendadas são aplicadas quando um pod é iniciado e se as atualizações recomendadas são aplicadas durante a vida útil de um pod. Os valores possíveis são Off, Initial, Recreate, e Auto. O padrão é Auto se você não especificar um valor.
minRéplicas int32 Um valor que representa o número mínimo de réplicas que precisam estar ativas para que o Updater tente a remoção do pod (pendente de outras verificações, como o Pod Disruption Budget). Só são permitidos valores positivos. O padrão é o sinalizador global --min-replicas , que é definido como 2.

PodResourcePolicy

Nome Objeto Description
conainerPolíticas ContainerResourcePolicy Uma matriz de políticas de recursos para contêineres individuais. Pode haver no máximo uma entrada para cada contêiner nomeado e, opcionalmente, uma única entrada curinga com , que lida com containerName = '*'todos os contêineres que não têm políticas individuais.

ContainerResourcePolicy

Nome Objeto Description
containerName string Uma cadeia de caracteres que especifica o nome do contêiner ao qual a política se aplica. Se não for especificado, a política servirá como a política padrão.
modo ContainerScalingMode Especifica se as atualizações recomendadas são aplicadas ao contêiner quando ele é iniciado e se as atualizações recomendadas são aplicadas durante a vida útil do contêiner. Os valores possíveis são Off e Auto. O padrão é Auto se você não especificar um valor.
minPermitido Lista de Recursos Especifica a solicitação mínima de CPU e a solicitação de memória permitida para o contêiner. Por padrão, não há um mínimo aplicado.
maxPermitido Lista de Recursos Especifica a solicitação máxima de CPU e solicitação de memória permitida para o contêiner. Por padrão, não há um máximo aplicado.
Recursos Controlados []ResourceName Especifica o tipo de recomendações que são calculadas (e possivelmente aplicadas) pelo Vertical Pod Autoscaler. Se vazio, o padrão de [ResourceCPU, ResourceMemory] é usado.

VerticalPodAutoscalerRecommenderSelector

Nome Objeto Description
nome string Uma cadeia de caracteres que especifica o nome do recomendado responsável por gerar a recomendação para este objeto.

VerticalPodAutoscalerStatus

Nome Objeto Description
Recomendação RecommendedPodResources As solicitações de CPU e memória recomendadas mais recentemente.
condições VerticalPodAutoscalerCondition Uma matriz que descreve o estado atual do Autoscaler Vertical Pod.

RecommendedPodResources

Nome Objeto Description
containerRecomendação RecomendadoContainerResources Uma matriz de recomendações de recursos para contêineres individuais.

RecomendadoContainerResources

Nome Objeto Description
containerName string Uma cadeia de caracteres que especifica o nome do contêiner ao qual a recomendação se aplica.
destino Lista de Recursos A solicitação de CPU recomendada e a solicitação de memória para o contêiner.
Limite inferior Lista de Recursos A solicitação mínima recomendada de CPU e a solicitação de memória para o contêiner. Não é garantido que este montante seja suficiente para que a aplicação seja estável. É provável que a execução com solicitações de CPU e memória menores tenha um impacto significativo no desempenho ou na disponibilidade.
Limite superior Lista de Recursos A solicitação máxima recomendada de CPU e solicitação de memória para o contêiner. Solicitações de CPU e memória superiores a esses valores provavelmente serão desperdiçadas.
uncappedTarget Lista de Recursos A recomendação de recurso mais recente calculada pelo autoscaler, com base no uso real de recursos, não levando em consideração a Política de Recursos de Contêiner. Se o uso real do recurso fizer com que o destino viole a Política de Recursos de Contêiner, isso poderá ser diferente da recomendação limitada. Este campo não afeta a atribuição real de recursos. É usado apenas como uma indicação de status.

VerticalPodAutoscalerCondition

Nome Objeto Description
tipo VerticalPodAutoscalerConditionType O tipo de condição que está sendo descrita. Os valores possíveis são RecommendationProvided, LowConfidence, NoPodsMatched, e FetchingHistory.
status CondiçãoStatus O status da condição. Os valores possíveis são True, Falsee Unknown.
lastTransitionTime Hora A última vez que a condição fez uma transição de um status para outro.
reason string A razão para a última transição de um estatuto para outro.
mensagem string Uma cadeia de caracteres legível por humanos que fornece detalhes sobre a última transição de um status para outro.

Próximos passos

Consulte Vertical Pod Autoscaler para entender como melhorar a utilização de recursos de cluster e liberar CPU e memória para outros pods.