Neste documento, descrevemos como configurar a implantação do Google Kubernetes Engine para usar o Google Cloud Managed Service para Prometheus a fim de coletar métricas do exportador do Kibana. Esta página mostra como fazer o seguinte:
- Configurar o exportador do Kibana para gerar relatórios de métricas.
- Configurar um recurso PodMonitoring para o serviço gerenciado para Prometheus a fim de coletar as métricas exportadas.
- Instalar um painel no Cloud Monitoring para ver as métricas.
- Configure regras de alertas para monitorar as métricas.
Estas instruções se aplicam somente ao usar a coleção gerenciada com o serviço gerenciado para Prometheus. Se você estiver usando a coleção autoimplantada, consulte a documentação do Kibana para ver informações da instalação.
Estas instruções são um exemplo e devem funcionar na maioria dos ambientes do Kubernetes. Se você estiver com problemas para instalar um aplicativo ou exportador devido a políticas restritivas de segurança ou da organização, recomendamos consultar a documentação de código aberto para receber suporte.
Para saber mais sobre o Kibana, acesse Kibana.
Pré-requisitos
Para coletar métricas do exportador do Kibana usando o Managed Service para Prometheus e a coleção gerenciada, a implantação precisa atender aos seguintes requisitos:
- Seu cluster precisa executar a versão 1.21.4-gke.300 ou posterior do Google Kubernetes Engine.
- É necessário executar o Managed Service para Prometheus com a coleta gerenciada ativada. Para mais informações, consulte Começar a usar a coleta gerenciada.
- Para usar os painéis disponíveis no Cloud Monitoring para a
integração do Kibana, use a
kibana-prometheus-exporter
versão 8.0.0 ou posterior.Para mais informações sobre os painéis disponíveis, consulte Visualizar painéis.
O processo de instalação requer o uso de bin/kibana-plugin install PLUGIN
. Uma maneira de instalar o plug-in é definir uma imagem personalizada do Docker do Kibana. Veja o exemplo a seguir:
FROM kibana:KIBANA_VERSION
RUN bin/kibana-plugin install https://github.com/pjhampton/kibana-prometheus-exporter/releases/download/PLUGIN_VERSION/kibanaPrometheusExporter-PLUGIN_VERSION.zip
Depois de criar e enviar a imagem para um repositório remoto, ela poderá ser usada na implantação do Kubernetes. Exemplo:
apiVersion: v1
kind: ConfigMap
metadata:
name: kibana
data:
kibana.yml: |
server.name: kibana
server.host: "0.0.0.0"
# Update this with credentials to match your Elasticsearch instance
elasticsearch.hosts: http://username:password@elasticsearch-service-name:9200
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kibana
labels:
app.kubernetes.io/name: kibana
spec:
...
template:
...
spec:
containers:
- name: kibana
image: CUSTOM_IMAGE
ports:
- containerPort: 5601
name: kibana
protocol: TCP
volumeMounts:
- mountPath: /usr/share/kibana/config/kibana.yml
subPath: kibana.yml
name: kibana
volumes:
- name: kibana
configMap:
name: kibana
items:
- key: kibana.yml
path: kibana.yml
Para verificar se o exportador do Kibana está emitindo métricas nos endpoints esperados, faça o seguinte:
Configure o encaminhamento de portas com o seguinte comando:
kubectl -n NAMESPACE_NAME port-forward POD_NAME 5601
Acesse o endpoint
localhost:5601/_prometheus/metrics
usando o navegador ou o utilitáriocurl
em outra sessão de terminal.
Definir um recurso do PodMonitoring
Para descobrir o destino, o operador do Managed Service para Prometheus requer um recurso PodMonitoring que corresponde ao exportador do Kibana no mesmo namespace.
É possível usar a seguinte configuração do PodMonitoring:
Para aplicar as alterações de configuração de um arquivo local, execute o seguinte comando:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Também é possível usar o Terraform para gerenciar as configurações.
Definir regras e alertas
Use a configuração Rules
a seguir para definir
alertas nas suas métricas do Kibana:
Para aplicar as alterações de configuração de um arquivo local, execute o seguinte comando:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Também é possível usar o Terraform para gerenciar as configurações.
Para mais informações sobre como aplicar regras ao cluster, consulte Avaliação e alerta de regras gerenciadas.
É possível ajustar os limites de alertas conforme seu aplicativo.Verificar a configuração
Use o Metrics Explorer para verificar se você configurou corretamente o exportador do Kibana. Pode levar um ou dois minutos para que o Cloud Monitoring ingira as métricas.
Para verificar se as métricas foram transferidas, faça o seguinte:
-
No Console do Google Cloud, acesse a página do leaderboard Metrics Explorer:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Na barra de ferramentas do painel do criador de consultas, selecione o botão code MQL ou code PromQL.
- Verifique se PromQL está selecionado na opção de ativar/desativar Idioma. A alternância de idiomas está na mesma barra de ferramentas que permite formatar sua consulta.
- Digite e execute a seguinte consulta:
up{job="kibana", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}
Ver painéis
A integração do Cloud Monitoring inclui o painel Visão geral do Kibana Prometheus. Os painéis são instalados automaticamente ao configurar a integração. Também é possível visualizar visualizações estáticas de painéis sem instalar a integração.
Para ver um painel instalado, faça o seguinte:
-
No console do Google Cloud, acesse a página Painéis:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Selecione a guia Lista de painéis.
- Escolha a categoria Integrações.
- Clique no nome do painel, por exemplo, Visão geral do Kibana Prometheus.
Para acessar uma visualização estática do painel, faça o seguinte:
-
No console do Google Cloud, acesse a página Integrações:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Monitoring.
- Clique no filtro de plataforma de implantação do Kubernetes Engine.
- Localize a integração do Kibana e clique em Visualizar detalhes.
- Selecione a guia Painéis.
Solução de problemas
Para resolver problemas de transferências de métricas, consulte Problemas com a coleta de exportadores em Resolver problemas no processamento.