O Kubernetes fornece informações detalhadas sobre o uso de recursos no cluster. Isso é ativado usando Heapster, cAdvisor, InfluxDB e Grafana.
O Heapster é instalado como um pod em todo o cluster. Ele reúne dados de monitoramento e eventos para todos os pods em cada nó, conversando com o Kubelet. O próprio Kubelet obtém esses dados do cAdvisor. Esses dados são mantidos no InfluxDB e, em seguida, visualizados
usando o Grafana.
Monitoramento do uso de recursos fornecem mais detalhes sobre o monitoramento de recursos no Kubernetes. Heapster, InfluxDB e Grafana são Complementos do Kubernetes. Eles
são ativados por padrão se você estiver executando o cluster no Amazon Web Services ou no Google Cloud. Mas precisam ser ativadas explicitamente se o cluster for iniciado usando minikube ou
kops Complementos.
Inicie um cluster do Kubernetes no Amazon Web Services como:
KUBERNETES_PROVIDER=aws; kube-up.sh
Mais detalhes sobre como iniciar um cluster do Kubernetes estão disponíveis em Primeiros passos com o Kubernetes 1.4. Por padrão, ele cria um cluster Kubernetes de 4 nós em us-west-2a
região. Mais detalhes sobre o cluster podem ser vistos usando o comando kubectl cluster-info
e ele mostra os resultados como:
1 2 3 4 5 6 7 8 9 10 |
Kubernetes mestre é em execução em https://35.165.6.91 Elasticsearch é em execução em https://35.165.6.91/api/v1/proxy/namespaces/kube-system/services/elasticsearch-logging Heapster é em execução em https://35.165.6.91/api/v1/proxy/namespaces/kube-system/services/heapster Kibana é em execução em https://35.165.6.91/api/v1/proxy/namespaces/kube-system/services/kibana-logging KubeDNS é em execução em https://35.165.6.91/api/v1/proxy/namespaces/kube-system/services/kube-dns kubernetes-painel de controle é em execução em https://35.165.6.91/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard Grafana é em execução em https://35.165.6.91/api/v1/proxy/namespaces/kube-system/services/monitoring-grafana InfluxDB é em execução em https://35.165.6.91/api/v1/proxy/namespaces/kube-system/services/monitoring-influxdb Para mais depurar e diagnosticar agrupamento problemas, uso 'kubectl cluster-info dump'. |
Anote o URL do serviço Grafana. Abra esse URL em uma janela do navegador. Você receberá um aviso de certificado inválido, mas isso pode ser ignorado com segurança neste momento. No sistema de produção, os certificados apropriados devem ser instalados.
Em seguida, você será solicitado a fornecer credenciais. Elas podem ser obtidas usando Visualização de configuração do kubectl
comando. Ele mostrará a saída como:
1 2 3 4 |
- nome: aws_kubernetes-básico-autenticação usuário: senha: ZeH4JpQzAtGDEBdb nome de usuário: administrador |
Use o valor de nome de usuário
e senha
campos. Isso mostra o painel padrão:
Ele consiste em dois painéis: um para o cluster e outro para os pods.
Para este blog, foi criado um cluster do Couchbase de 4 nós seguindo as etapas descritas em Crie um cluster do Couchbase usando o Kubernetes. Um cluster de
O painel mostra o uso de CPU, memória, sistema de arquivos e rede em todos os hosts e tem a seguinte aparência:
É possível ver a utilização de CPU, memória, sistema de arquivos e rede para todos os nós:
Os detalhes de cada nó podem ser vistos selecionando o nó:
É exibido o uso de CPU, memória, sistema de arquivos e rede para cada nó:
O painel de controle dos pods mostra a CPU, a memória, o sistema de arquivos e o uso da rede para cada pod:
Um pod diferente pode ser escolhido:
Uma lista completa de todos os serviços em execução no Kubernetes pode ser vista usando kubectl get services --all-namespaces
comando. Ele mostra a saída como:
1 2 3 4 5 6 7 8 9 10 11 |
kubectl.sh obter serviço --todos-Espaços de nomes NAMESPACE NOME CLUSTER-IP EXTERNO-IP PORTO(S) IDADE padrão couchbase-mestre-serviço 10.0.70.206 aef06961eb8f3... 8091/TCP 1h padrão kubernetes 10.0.0.1 443/TCP 1h cubo-sistema pesquisa elástica-registro 10.0.54.112 9200/TCP 1h cubo-sistema heapster 10.0.146.18 80/TCP 1h cubo-sistema kibana-registro 10.0.123.37 5601/TCP 1h cubo-sistema cubo-dns 10.0.0.10 53/UDP,53/TCP 1h cubo-sistema kubernetes-painel de controle 10.0.146.179 80/TCP 1h cubo-sistema monitoramento-grafana 10.0.33.81 80/TCP 1h cubo-sistema monitoramento-influxodb 10.0.26.251 8083/TCP,8086/TCP 1h |
Uma lista completa de todos os pods em execução no cluster do Kubernetes pode ser vista usando kubectl get pods --all-namespaces
.
Algumas referências: