As 9 principais ferramentas de monitoramento de código aberto para Kubernetes

Escolha a ferramenta certa para o monitoramento bem-sucedido do Kubernetes!


Kubernetes é uma plataforma de código aberto pronta para produção, projetada com a experiência adquirida pelo Google em orquestração de contêineres, associada às melhores ideias do público. Ele foi projetado para automatizar a implantação, dimensionamento e operação de contêineres de aplicativos.

Com a maneira moderna de criar e executar aplicativos, suas estratégias de controle e observabilidade precisam avançar e, portanto, as ferramentas que você usa. As ferramentas tradicionais de monitoramento de infraestrutura podem não ser suficientes e você precisa de um sistema de monitoramento Kubernetes especializado, conforme listado abaixo.

Alguns ajudam com logs e outros com métricas. Alguns oferecem uma interface para operar o Kubernetes a partir de uma visão panorâmica. Alguns são nativos de Kubernetes, enquanto outros são mais agnósticos.

Prometeu

Prometeu é uma das ferramentas de monitoramento mais populares e melhores usadas com o Kubernetes. Essa ferramenta foi desenvolvida no início pelo SoundCloud e posteriormente doada ao CNCF. O Google Borg Monitor inspira.

Bem, Prometheus armazena todos os seus dados como uma sequência de tempo. Em poucas palavras, o que faz o Prometheus se destacar entre outros bancos de dados de séries temporais, são seus mecanismos de alerta embutidos, modelo de dados multidimensionais, modelo pull versus push, PromQL (a linguagem de consulta do Prometheus) e, é claro, o sempre comunidade crescente.

Mais alguns recursos do Prometheus incluem:

  • Nenhuma dependência no armazenamento distribuído;
  • Os destinos são descobertos por meio da descoberta de serviço ou configuração estática
  • PromQL, uma linguagem de consulta flexível para aproveitar essa dimensionalidade
  • Nós de servidor único são autônomos
  • A coleta de séries temporais acontece por meio de um modelo pull sobre HTTP
  • O envio de séries temporais é suportado por meio de um gateway intermediário
  • Um modelo de dados multidimensional com dados de séries temporais analisados ​​pelo nome da métrica e pares de chave / valor
  • E várias formas de suporte a gráficos e painéis

A melhor maneira de aprender o Prometheus é instalar no servidor de laboratório e brincar com ele. Eles têm uma ótima documentação, mas se você estiver procurando por aprendizado baseado em vídeo, confira este Curso Udemy.

Kubewatch

Kubewatch é um observador do Kubernetes que publica notificações de eventos em um canal do Slack. Essa ferramenta fornece a facilidade para determinar os recursos que você precisa monitorar. Ele é criado em Golang e usa uma biblioteca cliente Kubernetes para conectar-se a um servidor de API Kubernetes. Esta biblioteca serve como um fator base para a observação de eventos do Kubernetes.

O kubewatch é simples de configurar e pode ser implantado usando a implantação do leme ou do sistema. Mais claramente, o kubewatch verá as alterações necessárias nos recursos específicos do Kubernetes que você procura assistir – implantações, conjuntos de daemon, pods, serviços, conjuntos de réplicas, serviços, controladores de replicação, segredos e mapas de configuração.

Jaeger

O rastreamento distribuído está crescendo constantemente para monitorar e solucionar problemas dos ambientes Kubernetes.  Jaeger é um sistema de rastreamento lançado pela Uber Technologies. É usado para monitorar transações e solucionar problemas em sistemas distribuídos complexos.

O Jaeger possui instrumentação baseada em OpenTracing para Java, Python, Node e C ++. Ele usa amostragem antecipada consistente com probabilidades individuais por serviço / terminal e suporta vários back-ends de armazenamento – Cassandra, Elasticsearch, Kafka e memória.

Alguns dos outros recursos do Jaeger incluem:

  • Monitoramento de transação distribuída
  • Propagação de contexto distribuído
  • Otimização de desempenho / latência
  • Análise de causa raiz
  • Análise de dependência de serviço

conselho

conselho foi desenvolvido para montar, processar e exportar informações de uso e produção de recursos sobre a execução de contêineres. Também foi desenvolvido no Kubernetes e integrado ao binário do Kubelet. É simples de usar (expõe as métricas do Prometheus prontas para uso), mas não é robusto o suficiente para ser reconhecido como uma solução de monitoramento abrangente.

Diferente de outros, o cAdvisor não é implantado por pod, mas no nível do nó. Ele determinará automaticamente todos os contêineres em execução em um sistema e coletará métricas do sistema, como memória, CPU, rede, etc..

cAdvisor é uma ferramenta básica, e a seguir estão algumas de suas características.

  • Suporte nativo para contêineres do Docker e ajuda outros tipos de contêineres.
  • Suporta a exportação de estatísticas para vários plugins de armazenamento, por exemplo InfluxDB etc.,
  • Ele fornece o uso geral da máquina analisando o contêiner ‘raiz’ na máquina.
  • O suporte para a execução autônoma fora do Docker ou de qualquer outro contêiner também.
  • O cAdvisor opera por nó. Ele descobre automaticamente todos os contêineres no nó fornecido e coleta estatísticas de CPU, sistema de arquivos e uso de rede.
  • As métricas podem ser visualizadas na Web-UI, que exporta informações ao vivo sobre todos os contêineres no sistema.

Cabine

Cabine é o melhor aplicativo de painel móvel nativo para o Kubernetes. A UI da cabine é desenvolvida usando o React Native, portanto, executa dispositivos iOS e Android. É um assistente de movimentação, que fornece ações refinadas para manipular os recursos do Kubernetes. O aplicativo da cabine é avançado por toque.

Por exemplo, você também pode excluir os pods com um simples toque à esquerda. Você também pode dimensionar implantações com um rolo de dedo.

Alguns outros recursos:

  • Criar implantações básicas Dimensionar implantações e controladores de replicação
  • Alternar tipos de serviço
  • Expor implantações por meio de serviços
  • Integração com o GKE para provisionamento de cluster com um clique
  • Acessar logs em vários contêineres
  • Remover e adicionar etiquetas
  • Abra os serviços NodePort no navegador
  • Executar comandos em contêineres

Telepresença

Telepresença permite executar um serviço específico localmente enquanto conecta esse serviço a um cluster Kubernetes remoto. Isso permite que os desenvolvedores que trabalham em operações de vários serviços adotem qualquer ferramenta instalada localmente para verificar / depurar / editar seu serviço. Por exemplo, você pode executar um depurador ou IDE.

Ele também permite que os desenvolvedores desenvolvam rapidamente o local de um serviço específico, mesmo que esse serviço dependa de serviços separados no cluster. Faça uma transição para o seu serviço, salve e você poderá identificar instantaneamente o novo serviço em ação.

A telepresença é um ambiente de desenvolvimento local impressionante para serviços em execução no Kubernetes. A parte de depuração ao vivo é única e está evoluindo rapidamente. Abaixo estão alguns dos seus mais recursos.

  • Permitir que o código em execução no contêiner se conecte a um IDE ou depurador em execução no host.
  • A telepresença usa uma imagem de proxy específica do OpenShift quando observa um cluster do OpenShift.
  • A telepresença também suporta o tráfego de encaminhamento de e para outros contêineres no pod.
  • A telepresença usa um diretório acessível ao Docker como o diretório temporário.

Escopo do Weave

Escopo do Weave é uma solução de problemas & ferramenta de monitoramento para o Kubernetes. Ele cria topologias lógicas de seu aplicativo e infraestrutura, o que facilita a consideração, o monitoramento e o controle de seu aplicativo contido em microsserviços.

Ele oferece uma visão de cima para baixo do aplicativo e de toda a infraestrutura. Ele autoriza você a determinar quaisquer problemas com seu aplicativo em contêiner distribuído em tempo real, conforme ele é implantado em um provedor de nuvem.

Alguns dos recursos do Weave Scope incluem:

  • Suporte para qualquer estilo de implantação (local, hospedado ou híbrido) e a capacidade de coletar e relatar métricas de host / contêiner
  • Métricas, eventos e rótulos agregados do Kubernetes
  • Métricas contextuais em tempo real
  • Os nós podem ser filtrados pelo gerenciamento de CPU e memória, para que você possa identificar rapidamente contêineres usando o maior número de recursos.

Grafana

Grafana é usado para visualizar métricas, mas também uma ferramenta de alerta. A Grafana pode emitir um alerta nos canais do Slack, webhook, correio ou de comunicação alternativo. Outro motivo importante é a fonte dos seus dados: o Grafana pode consultar várias entidades ao mesmo tempo.

Você pode consultar um banco de dados como o ElasticSearch ou ferramentas de monitoramento como o Cloudwatch e também definir alertas nele. Alguns outros recursos são os seguintes.

  • Um gerenciador de alertas lida com a parte de alerta
  • Fácil instalação de exportadores
  • O aplicativo usa tags Kubernetes para permitir também filtrar métricas de pod.
  • O painel Pod / Container alavanca as tags de pod para encontrar facilmente os pods relevantes.

Zabbix

Com Zabbix, é possível criar tipos de dados praticamente ilimitados a partir do sistema. Sistemas de monitoramento em tempo real de alto desempenho que dezenas de milhares de servidores, máquinas virtuais e dispositivos de rede podem ser controlados simultaneamente.

Além de salvar os dados, os recursos de visualização são acessíveis, bem como maneiras extremamente flexíveis de descobrir os dados com o objetivo de alarmar.

Alguns dos recursos do Zabbix incluem:

  • Análise de causa raiz
  • O Zabbix ajuda a manter os dados no formato JSON; muitos aplicativos também podem usá-lo.
  • Monitoramento em tempo real
  • O proxy Zabbix é altamente recomendado para sistemas de produção em larga escala.
  • Relatórios de pesquisa
  • A descoberta de baixo nível verifica automaticamente os novos nós sem nenhum esforço.
  • Altamente configurável e extensível.

O Zabbix é significativo e não apenas o Kubernetes, mas também adequado para monitorar métricas de infraestrutura e aplicativos. Se você estiver interessado em aprender o Zabbix, verifique este curso brilhante.

Conclusão

A escolha da ferramenta de monitoramento correta é crucial. Mas adivinhem? Acima de tudo, você pode experimentar GRATUITAMENTE, por que não obter uma VM em nuvem e ver o que funciona para o seu monitoramento Kubernetes?

Monitoramento e solução de problemas felizes!

TAG:

  • Docker

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map