Como configurar um autoescalador horizontal para os pods num servidor físico?
sobes.tech IA
Resposta da IA
Para configurar a escalabilidade automática horizontal (Horizontal Pod Autoscaler, HPA) num servidor físico (bare-metal) no Kubernetes, deve seguir vários passos:
-
Certifique-se de que o Metrics Server está configurado no cluster — ele recolhe métricas de CPU e memória necessárias para o HPA.
-
Configurar a monitorização de recursos de pods e nós — sem infraestrutura na nuvem, deve usar soluções locais, como Prometheus com adaptadores para HPA.
-
Criar um objeto HPA, especificando as métricas alvo e o número mínimo/máximo de réplicas. Por exemplo:
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: exemplo-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: exemplo-deployment
minReplicas: 2
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 50
-
Garantir o funcionamento correto do controlador HPA e das métricas — em bare-metal, por vezes, é necessário configurar RBAC e políticas de rede adicionais.
-
Testar a escalabilidade automática com carga e monitorizar o comportamento.
Importante: em servidores físicos, não há API na nuvem para escalonamento, por isso o HPA funciona apenas ao nível dos pods, e o escalonamento de nós deve ser feito manualmente ou com outras ferramentas.