Introdução
Kubernetes é uma plataforma de orquestração de contêineres que automatiza a implantação, escalabilidade e gerenciamento de aplicações em contêineres. Neste laboratório, você explorará como usar o comando cluster-info para obter informações sobre seu cluster Kubernetes. Ao final do laboratório, você entenderá como iniciar um cluster Kubernetes, recuperar informações essenciais do cluster, inspecionar componentes internos e testar a conectividade do servidor API.
Este laboratório é projetado para iniciantes e nenhuma experiência prévia com Kubernetes é necessária.
Iniciar o Cluster Kubernetes
Um cluster Kubernetes requer um ambiente em execução. Neste laboratório, usaremos o Minikube, uma ferramenta que permite executar um cluster Kubernetes localmente. Siga estes passos:
Abra seu terminal e certifique-se de estar no diretório
/home/labex/project:cd ~/projectInicie o cluster Minikube:
minikube start- Minikube cria um cluster Kubernetes de nó único.
- Este processo pode levar alguns minutos, dependendo do seu sistema. Durante a inicialização, vários componentes Kubernetes serão configurados.

Recuperar Informações Básicas do Cluster
Depois que o Minikube estiver em execução, use o comando kubectl cluster-info para visualizar informações sobre o cluster. Execute o seguinte comando:
kubectl cluster-info
- A URL do servidor API (API server) é o ponto de extremidade principal para interagir com seu cluster.
- O CoreDNS lida com a descoberta de serviços e a resolução de DNS dentro do cluster.
Exemplo de Saída:
Kubernetes control plane is running at https://192.168.49.2:8443
CoreDNS is running at https://192.168.49.2:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
https://192.168.49.2:8443é a URL do servidor API Kubernetes. É para lá que todos os comandoskubectlsão enviados.- O serviço CoreDNS ajuda o Kubernetes a resolver nomes de domínio para serviços e pods.
Inspecionar Componentes do Cluster em Detalhe
Para obter uma compreensão mais profunda do cluster e seus componentes internos, use:
kubectl cluster-info dump
Este comando fornece informações detalhadas sobre os componentes-chave:
- etcd: Um armazenamento de chave-valor (key-value store) para todos os dados do cluster.
- kube-apiserver: O ponto de entrada para as requisições da API Kubernetes.
- kube-scheduler: Atribui cargas de trabalho (pods) aos nós disponíveis.
- kube-controller-manager: Mantém o estado do cluster (por exemplo, garante que o número desejado de réplicas de pod esteja em execução).
Exemplo de Saída:
Este comando gera uma saída detalhada que detalha a configuração e o status dos componentes do sistema Kubernetes. Você pode redirecionar a saída para um arquivo para facilitar a análise:
kubectl cluster-info dump > cluster-details.txt
Isso salvará a saída em cluster-details.txt no seu diretório atual.
Visualizar Nós no Cluster
Nós são as máquinas que executam suas cargas de trabalho no Kubernetes. Para listar os nós em seu cluster, execute:
kubectl get nodes
- O nome do nó (por exemplo,
minikube) identifica a máquina. - O status (
Ready) indica que o nó está íntegro e pode executar cargas de trabalho. - Em um cluster Minikube, o nó atua como o plano de controle (control plane) e o nó de trabalho (worker node).
Exemplo de Saída:
NAME STATUS ROLES AGE VERSION
minikube Ready control-plane 5m v1.20.0
Testar Acesso ao Servidor da API
O servidor da API é um componente crítico do plano de controle (control plane) do Kubernetes. Você pode testar sua acessibilidade executando:
curl $(kubectl config view --minify -o jsonpath='{.clusters[0].cluster.server}') --insecure
- Este comando recupera a URL do servidor da API e realiza uma requisição simples para ele.
- A flag
--insecureignora a verificação do certificado SSL, o que é aceitável nesta configuração local.
Exemplo de Saída:
Se o servidor da API estiver acessível, a resposta deve ser semelhante a esta:
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {},
"status": "Failure",
"message": "forbidden: User \"system:anonymous\" cannot get path \"/\"",
"reason": "Forbidden",
"details": {},
"code": 403
}
Esta resposta confirma que o servidor da API está em execução, mas nega o acesso devido à falta de autenticação, o que é esperado.
Resumo
Neste laboratório, você aprendeu a:
- Iniciar um cluster Kubernetes com Minikube.
- Usar
kubectl cluster-infopara recuperar detalhes do cluster. - Inspecionar componentes do cluster em profundidade com
kubectl cluster-info dump. - Listar nós no cluster usando
kubectl get nodes. - Testar a conectividade do servidor da API com um comando
curl.
Esta experiência prática forneceu uma base para entender e explorar clusters Kubernetes. Estes comandos são essenciais para depurar e gerenciar ambientes Kubernetes.
Próximos passos:
- Explorar pods e cargas de trabalho no Kubernetes.
- Aprender como criar serviços para expor aplicações.
- Experimentar o dimensionamento de cargas de trabalho em um cluster.
Continue praticando e bons estudos!


