Contents

Introdução

Problema

Análise

Solução

Introdução

Este documento descreve como lidar com FailedGetResourceMetric eventos gerados por pods istiod.

Problema

Após implantar o cluster da Infraestrutura de Microserviços de Assinante (SMI) usando a versão 2023.01 da Plataforma de Implantação Nativa em Nuvem (CNDP), percebeu-se que os pods istiod continuam gerando FailedGetResourceMetric eventos:

cloud-user@ndce-smi-1:~$ kubectl get events -A -o yaml

apiVersion: v1

items:

- apiVersion: v1

count: 467057

eventTime: null

firstTimestamp: "2023-12-31T03:57:42Z"

involvedObject:

apiVersion: autoscaling/v2beta2

kind: HorizontalPodAutoscaler

name: istiod

namespace: istio-system

resourceVersion: "4374"

uid: c85a05a1-b9ec-4241-8347-0b3c9eec1193

kind: Event

lastTimestamp: "2024-03-22T14:42:49Z"

message: 'unable to get metrics for resource cpu: unable to fetch metrics from resource

metrics API: the server could not find the requested resource (get pods.metrics.k8s.io)'

metadata:

creationTimestamp: "2023-12-31T03:57:42Z"

managedFields:

- apiVersion: v1

fieldsType: FieldsV1

fieldsV1:

f:count: {}

f:firstTimestamp: {}

f:involvedObject:

f:apiVersion: {}

f:kind: {}

f:name: {}

f:namespace: {}

f:resourceVersion: {}

f:uid: {}

f:lastTimestamp: {}

f:message: {}

f:reason: {}

f:source:

f:component: {}

f:type: {}

manager: kube-controller-manager

operation: Update

time: "2023-12-31T03:57:42Z"

name: istiod.17a5ce7b410bceb6

namespace: istio-system

resourceVersion: "55452121"

selfLink: /api/v1/namespaces/istio-system/events/istiod.17a5ce7b410bceb6

uid: 9616bdc6-90d1-4475-b6af-6d41e185b434

reason: FailedGetResourceMetric

reportingComponent: ""

reportingInstance: ""

source:

component: horizontal-pod-autoscaler

type: Warning

kind: List

metadata:

resourceVersion: ""

selfLink: ""

Análise

O problema parece ser devido ao Horizontal Pod Autoscaler (HPA) estar ativado em pods istiod durante a implantação. Como a HPA exige a API de métricas para determinar a utilização da CPU para dimensionar pods para cima/para baixo e a API de métricas não é usada atualmente no cluster Kubernetes gerenciado por CNDP, essa é uma falha de design na implantação do istiod.

Solução

A HPA foi removida a partir da versão 2023.03 do CNDP.