Introdução
O comando describe do Kubernetes é uma ferramenta poderosa para visualizar informações detalhadas sobre recursos do Kubernetes. Com o comando describe, você pode visualizar informações como o status do recurso, eventos, rótulos (labels), anotações (annotations) e muito mais. Isso pode ser útil para solucionar problemas em seu cluster Kubernetes.
Iniciar o Minikube e Verificar o Cluster
Antes de trabalhar com Kubernetes, você precisa de um cluster em execução. O Minikube fornece um cluster Kubernetes local e leve.
Navegue para o diretório do seu projeto:
Abra seu terminal e navegue até o diretório de trabalho padrão:
cd /home/labex/projectIniciar o Minikube:
Inicie o Minikube para inicializar o cluster:
minikube start- O Minikube cria um cluster Kubernetes de nó único. Esta etapa pode levar alguns minutos.
Verificar o status do Minikube:
Verifique se o Minikube foi iniciado com sucesso:
minikube statusProcure por componentes como
apiserverekubeletlistados comoRunning.Confirmar a configuração do Kubernetes:
Certifique-se de que o
kubectlestá conectado ao cluster Minikube:kubectl cluster-infoIsso exibe detalhes sobre o servidor da API e outros componentes.
Se o Minikube falhar ao iniciar. Use minikube delete para redefinir e tentar novamente.
Explore o Comando kubectl describe
O comando kubectl describe é usado para mostrar informações detalhadas sobre um recurso específico ou grupo de recursos. Ele fornece insights sobre a configuração, o status e os eventos relacionados ao recurso.
Execute o seguinte comando para visualizar as opções disponíveis para kubectl describe:
kubectl describe -h
Você verá a seguinte saída:
Show details of a specific resource or group of resources.
Print a detailed description of the selected resources, including related resources such as events or controllers. You
may select a single object by name, all objects of that type, provide a name prefix, or label selector. For example:
$ kubectl describe TYPE NAME_PREFIX
will first check for an exact match on TYPE and NAME_PREFIX. If no such resource exists, it will output details for
every resource that has a name prefixed with NAME_PREFIX.
Use "kubectl api-resources" for a complete list of supported resources.
Examples:
## Describe a node
kubectl describe nodes kubernetes-node-emt8.c.myproject.internal
## Describe a pod
kubectl describe pods/nginx
## Describe a pod identified by type and name in "pod.json"
kubectl describe -f pod.json
## Describe all pods
kubectl describe pods
## Describe pods by label name=myLabel
kubectl describe po -l name=myLabel
## Describe all pods managed by the 'frontend' replication controller
## (rc-created pods get the name of the rc as a prefix in the pod name)
kubectl describe pods frontend
Descrever um Pod
Nesta etapa, você aprenderá como usar o comando describe para visualizar informações sobre um Pod do Kubernetes.
Crie um pod simples que será usado como modelo para as réplicas. Crie um arquivo chamado
myapp-pod.yamlcom o seguinte conteúdo:apiVersion: v1 kind: Pod metadata: name: myapp-pod spec: containers: - name: myapp-container image: nginx ports: - containerPort: 80Crie o pod usando o seguinte comando:
kubectl apply -f myapp-pod.yamlEm seguida, descreva o pod:
kubectl describe pod myapp-podEste comando recuperará informações detalhadas sobre o Pod especificado, incluindo status, rótulos (labels), anotações (annotations), eventos e muito mais.
Descrever um Deployment
Nesta etapa, você aprenderá como usar o comando describe para visualizar informações sobre um Deployment do Kubernetes.
Crie um arquivo chamado
myapp-deployment.yamlcom o seguinte conteúdo:apiVersion: apps/v1 kind: Deployment metadata: name: myapp-deployment spec: replicas: 1 selector: matchLabels: app: myapp-deployment template: metadata: labels: app: myapp-deployment spec: containers: - name: myapp-container image: nginx:latest ports: - containerPort: 80Crie o deployment usando o seguinte comando:
kubectl apply -f myapp-deployment.yamlDescreva o deployment:
kubectl describe deployment myapp-deploymentEste comando recuperará informações detalhadas sobre o Deployment especificado, incluindo status, rótulos (labels), anotações (annotations), eventos e muito mais.
Descrever um Service
Nesta etapa, você aprenderá como usar o comando describe para visualizar informações sobre um Service do Kubernetes.
Crie um arquivo chamado
myapp-service.yamlcom o seguinte conteúdo:apiVersion: v1 kind: Service metadata: name: myapp-service spec: selector: app: myapp-deployment ports: - protocol: TCP port: 80 targetPort: 80Crie o service usando o seguinte comando:
kubectl apply -f myapp-service.yamlUse o seguinte comando para descrever o service:
kubectl describe service myapp-serviceEste comando recuperará informações detalhadas sobre o Service especificado, incluindo status, rótulos (labels), anotações (annotations), eventos e muito mais.
Resumo
Neste laboratório, você aprendeu como usar o comando describe do Kubernetes para visualizar informações detalhadas sobre os recursos do Kubernetes. Você aprendeu como descrever um Pod, Deployment e Service.


