Kubernetes: Exibição de Uso de Recursos

KubernetesBeginner
Pratique Agora

Introdução

O uso de recursos é um aspecto importante de qualquer aplicação em execução num cluster Kubernetes. Ao monitorizar o uso de recursos, pode identificar problemas de desempenho, otimizar os seus recursos e melhorar a eficiência geral das suas aplicações. Neste laboratório, vamos explorar como exibir o uso de recursos num cluster Kubernetes usando o metrics-server. Vamos cobrir o uso de CPU e Memória.

Iniciar o Cluster Minikube

Antes de criar recursos, precisa de um cluster Kubernetes em execução. Minikube é um ambiente Kubernetes leve que é executado na sua máquina local.

  1. Navegue para o seu diretório de trabalho:

    Abra o terminal e navegue para a pasta do projeto padrão:

    cd /home/labex/project
  2. Iniciar Minikube:

    Inicie o Minikube para inicializar um cluster Kubernetes:

    minikube start
    • Este comando configura um cluster Kubernetes de nó único na sua máquina local.
    • O Minikube pode demorar alguns minutos a iniciar, dependendo do desempenho do seu sistema.
  3. Verificar se o Minikube está em execução:

    Verifique o estado do cluster Minikube:

    minikube status
    • Procure componentes como kubelet e apiserver listados como Running.
    • Se o cluster não estiver em execução, execute novamente minikube start.

Se encontrar problemas ao iniciar o Minikube. Use minikube delete para redefinir o ambiente, se necessário.

Habilitar o Metrics-Server

O metrics-server é um componente Kubernetes que coleta métricas de vários objetos Kubernetes e as fornece em um formato consumível para outros componentes Kubernetes. Antes de podermos exibir o uso de recursos no nosso cluster Kubernetes, precisamos habilitar o metrics-server.

minikube addons enable metrics-server

Este comando irá habilitar o metrics-server no seu cluster Kubernetes.

Execute o seguinte comando para verificar se o metrics-server está em execução:

kubectl get pods --namespace=kube-system | grep metrics-server

Exibir Uso de CPU e Memória

Para exibir o uso de CPU e Memória em um cluster Kubernetes, usaremos o comando kubectl top. Este comando permite que você veja o uso de recursos de objetos Kubernetes em tempo real.

## Exibir o uso de CPU e Memória para todos os pods em um namespace específico
kubectl top pods --namespace=kube-system

## Exibir o uso de CPU e Memória para todos os nós no cluster
kubectl top nodes

Este comando exibirá as estatísticas atuais de uso de CPU e Memória para todos os pods no namespace especificado ou para todos os nós no cluster.

Exibir Uso de CPU e Memória do Container

Para exibir o uso de CPU e Memória dos containers em execução dentro dos pods, usaremos o comando kubectl top novamente.

Crie um pod simples que será usado como modelo para as réplicas. Crie um arquivo chamado myapp-pod.yaml em /home/labex/project/ com o seguinte conteúdo:

apiVersion: v1
kind: Pod
metadata:
  name: myapp-pod
spec:
  containers:
    - name: myapp-container
      image: nginx
      ports:
        - containerPort: 80

Crie o pod usando o seguinte comando:

kubectl apply -f myapp-pod.yaml

Em seguida, use o seguinte comando para exibir o uso de CPU e Memória para um container específico dentro de um pod:

kubectl top pod myapp-pod --namespace=default --containers=true

Este comando exibirá as estatísticas atuais de uso de CPU e Memória para o container especificado dentro do pod especificado.

Resumo

Parabéns! Você concluiu com sucesso o laboratório de Exibição de Uso de Recursos do Kubernetes. Neste laboratório, você aprendeu como exibir estatísticas de uso de recursos para CPU e Memória em um cluster Kubernetes. Ao usar o metrics-server, você agora pode monitorar o uso de recursos em suas aplicações, otimizar seus recursos e melhorar a eficiência geral de suas aplicações em execução em um cluster Kubernetes.